چهارشنبه, ۲۴ اردیبهشت ۱۳۹۳
۲۳:۰۱
۴۱
این واقعیت نباید فراموش شود که رایانهها همیشه از سیستم عاملهایی مانند ویندوز و MAC استفاده نمیکردهاند. پیش از تولد ویندوز این سیستم عامل DOS بود که روی PCها نصب شده و به عنوان سیستم عامل اصلی مایکروسافت در اختیار کاربران بود؛ اما دنیای PCها در زمان پادشاهی DOS به چه ترتیبی بود؟
این روزها استفاده از سیستم عامل های مدرن و به اصطلاح User Friendly تبدیل به یک پیش فرض برای کاربران شده است، به گونهای که ما در بیشتر اوقات فراموش میکنیم که اساسا آنچه با نام سیستم عامل در اختیار ما گذارده شده، یک زمانی هیچ شباهتی به سیستم عامل آن گونه که اکنون میشناسیم، ندارد.
شاید بسیاری از کاربران تجربه کار با DOS را در اوان ورود ویندوز به یاد داشته باشندغ سیستم عاملی که امروز بقایای آن را در CMD ویندوز میبینیم و البته هیچ شباهتی به آنچه امروز در قالب یک پنجره اجرا میشود ندارد. واقعیت این است که بسیاری از چیزهایی که ما امروز در رایانهها مسلم میدانیم، روزی ناممکن بوده است:
تجربه DOS در PC
آنچه میدانیم این است که DOS یک سیستم عامل از نوع Command-Line بوده که البته در زمان خود سیستم عاملی کامل بوده، بدون هیچ واسط کاربری گرافیکی. در آن زمان شما سیستم خود را بوت میکردید و با صفحه DOS روبه رو میشدید. برای انجام هر کاری در این سیستم عامل، کاربر مجبور به وارد کردن دستور خاص آن عملیات بود.
در نتیجه برای کار با سیستم عامل به یاد داشتن دستورها، حیاتی و ضروری بود و اساسا کار با سیستم عامل به معنی دانستن دستورها بود. برای هر عملیاتی از جمله تغییر درایوها، پوشهها و باز کردن فایلها و اجرای برنامهها دستورهای مخصوص وجود داشت و کاربران همواره با آنها سر و کار داشتند.
تصور کنید، یک Floppy Disk دارید که روی آن یک برنامه جدید وجود دارد. وارد کردن این دیسکت درون درایو، انتظار برای خوانده شدن آن و در نهایت وارد کردن دستوری برای نصب برنامه و کار با آن همه چیزهایی است که در آن زمان امور معمولی تلقی میشدند. اکنون تصور کنید که در یک نمایی بدون هیچ گرافیک خاص، اقدام به نصب برنامه میکنید و جالب آنکه در مواقعی باید از چندین دیسکت برای نصب نرم افزارها استفاده کنید، زیرا حجم آنها بیش از حجم دیسکت شما بود.
در پایان پس از نصب برنامه، باید با دستور خاص به درایو C رفته، با دستور دیگری به مسیری که برنامه در آن نصب شده رفته و سرانجام با دستور دیگری برنامه مورد نظر را اجرا میکردید. ضمنا نباید از یاد ببرید که نام فایل برنامه نمیتوانست بیش از هشت کاراکتر باشد! در نتیجه PROGNAME. EXE طولانیترین نامی بود که کاربران میتوانستند برای برنامههای خود داشته باشند.
البته در این میان بودند نرم افزارهایی که از واسط گرافیکی رنگارنگ نیز استفاده میکردند. بسیاری از کاربران امروزی با NC یا همان Norton Commander که اساسا یک برنامه مدیریت فایل بود آشنا هستند. این نسل از نرم افزارها نمونههایی بودند که در واقع بدون نیاز به تایپ دستورها عملیات مربوطه را انجام میدادند و در واقع نسل مدرن نرم افزارهای DOS بودند. همه چیز در این نرم افزارها در خصوص چیدمان متون در داخل صفحه نمایش بود:
بی معنا بودن Multi-Tasking
از سوی دیگر، آنچه امروز به نام Multi-Tasking در سیستم عامل های مدرن به مثابه یک قابلیت مسلم و جزو اصلی پیش فرض گرفته میشود، در زمان DOS به هیچ وجه معنایی نداشت. تصور اجرای چندین برنامه و باز کردن چندین پنجره همزمان غیر ممکن بود و به محض باز کردن یک برنامه تمامی محیط سیستم عامل شما به محیط آن برنامه تغییر میکرد، تا زمانی که با دستور EXIT از آن خارج شوید.
از همین روی بود که DOS برای رفع این محدودیت قابلیت TSR یا Terminate and stay resident را به کار گرفت. نرم افزارهایی که از این قابلیت پشتیبانی میکردند، میتوانستند با یک کلید میانبر به حافظه منتقل شده و دوباره فراخوانی شوند.
قابلیت TSR البته به هیچ وجه شباهتی به Multi-Tasking فعلی نداشت. در واقع با این قابلیت برنامه به هیچ وجه به پشت صحنه منتقل نمی شد، بلکه به کلی Shut Down شده و تنها راهی سریع برای اجرای دوباره آن اندیشیده شده بود. DOS تنها قادر به اجرای یک برنامه در آن واحد بود.
تعامل با سخت افزارها
سیستم عامل DOS به هیچ وجه به معنایی که امروزه میدانیم، از سخت افزارها پشتیبانی نمیکرد. برنامهای که به نحوی نیاز به برقراری ارتباط با سخت افزارهای سیستم داشت ـ مثلا بازی که نیاز به استفاده از کارت صدای شما برای تولید اصوات داشت ـ مجبور به این بود که خود مستقیم با سخت افزار ارتباط برقرار کند.
در نتیجه اگر به دنبال ساخت بازی برای سیستم عامل DOS بودید، ناچار از این میشدید که برای هر نوع کار صدایی که کاربران ممکن است روی سیستم خود نصب کرده باشند، کد جداگانهای بنویسید.
از سوی دیگر، به دلیل نحوه عملکرد DOS برنامههایی که نیازمند کار با حافظه یا محیط کلی سیستم بودند، باید در حالت Real Mode یا Real Address Mode اجرا میشدند. در این حالت، نرم افزار قادر به نوشتن و کار روی حافظه و سخت افزارها، بدون هیچ تدابیر امنیتی و صیانتی بود. تنها در زمان ویندوز ۳.۰ بود که این تدابیر امنیتی اندیشیده شد.
تا همین امروز نیز شما نمیتوانید بسیاری از بازیهای DOS را روی CMD ویندوز اجرا کنید، زیرا این بازیها در حالت Real Mode اجرا میشوند، در حالی که CMD نرم افزارها را در حالت Protected Mode اجرا میکند.
ویندوز تنها یک برنامه DOS بود!
اما جالبتر از همه اینکه نسخههای اولیه ویندوز یعنی ویندوز ۳ و ۳.۱ تنها برنامههایی بودند که تحت DOS اجرا میشدند و نه یک سیستم عامل! در نتیجه شما سیستم خود را بوت کرده، با صفحه DOS روبه رو میشدید، سپس دستور WIN را وارد میکردید تا «برنامه ویندوز» را اجرا کنید. پس از آن بود که با به اصطلاح دسکتاپ ویندوز ۳ که همان مدیر برنامهها بود، مواجه میشدید.
البته این امکان بود که با افزودن دستور WIN به فایل AUTOEXE. BAT ویندوز را خودکار اجرا کنید. در این حالت DOS پس از بوت شدن سیستم به شکل خودکار ویندوز را اجرا میکرد.
همچنین میتوانستید به سادگی از Windows بیرون آمده و به DOS بازگردید، زیرا در مواقعی نیاز به اجرای برنامهای در حالت Real Mode بود که ویندوز اجازه این کار را نمیداد.
تحولات به گونهای رقم خورد که نسخههای بعدی ویندوز یعنی ۹۵، ۹۸، ۹۸ SE و ME سیستم عامل DOS را بیش از همیشه به پس زمینه راندند. ویندوز ۹۵ کاملا شبیه یک سیستم عامل مستقل عمل میکرد، ولی DOS همچنان در پشت صحنه در جریان بود. همه این نسخههای ویندوز بنا بر DOS طراحی میشدند. تنها از ویندوز XP به بعد بود که در نهایت DOS کنار گذاشته و کرنل ۳۲ بیتی مدرن NT برای ویندوز به کار گرفته شد.
اکنون ما با سیستم عاملها مدرنی مانند ویندوز ۸ و ۸.۱ سر و کار داریم که هیچ شباهتی به روزگاران گذشته ندارند. جالب آنکه امروزه نیز بسیاری ـ و حتی خود مایکروسافت ـ بر این باورندند که این ویندوز با این شکل و شمایل یادگاری از گذشته است که به شدت نیاز به بروز رسانی دارد تا بیش از همیشه به محیطهای موبایل ساده سازی شده با واسط کاربری مدرن و لمسی تغییر کند.
در نتیجه باید امروزه DOS و برنامههایی مانند ویندوز ۳ و ۳.۱ را میراث باستانی دنیای دیجیتال به شمار آورد و شاید روزگاری نه چندان دور سیستم عامل های مدرن امروزی نیز همین حکم را پیدا کنند.