داستان ویندوز ۳٫۰؛ آغاز عصر کاربران عادی کامپیوتر
موری سارجنت، فیزیکدان و مهندس نرمافزاری بود که پس از دریافت سه مدرک دانشگاهی از ییل در دههی ۱۹۶۰، در سال ۱۹۶۹ به عنوان استاد فیزیک در دانشگاه آریزونا مشغول به کار شد و روی نظریهی لیزر تحقیق میکرد؛ اما نبوغ فنی سارجنت فراتر از محیط آکادمیک بود، زیرا در کنار فعالیت دانشگاهی، بهعنوان مشاور پارهوقت برای سازمانهایی از جمله آزمایشگاه علمی لس آلاموس و شرکتهایی مانند مایکروسافت کار میکرد.
اواخر ژوئن ۱۹۸۶، در جریان مراسم افتتاح دفتر تجاری Canyon-Park مایکروسافت، وایس دوست قدیمی خود، سارجنت را در آن مهمانی دید. آن دو در مورد محدودیتهای برنامهنویسی مشغول گفتوگو شدند. در میانهی بحث، سارجنت به ضعف سیستم مدیریت حافظه در ویندوز/۲۸۶ اشاره کرد و پیشنهاد داد که نسخهای مبتنی بر حالت حفاظتشده (Protected Mode) که محدودیت ۶۴۰K رم را از میان بردارد، میتواند راهکار بهتری باشد. این گفتوگو، کوتاه و تأثیرگذار بود.
در کمال تعجب، دیوید به من پاسخ داد: «چرا که نه؟ همین الان شروع کنیم!»
بنابراین، مهمانی را ترک کردیم و به دفتر مایکروسافت بازگشتیم. با استفاده از ابزار SST، هستهی ویندوز ۲ را به حالت حفاظت شده منتقل کردیم. پس از مدتی آزمایش، به یک خطای جدی برخوردیم. دیوید آن خطا را رفع کرد و مرحلهبهمرحله پیش رفتیم.
وایس برای چند هفته بهصورت خستگیناپذیر روی رفع اشکالات ویندوز ۲ کار کرد و از سارجنت خواست قابلیتهای جدیدی به SST اضافه کند تا فرایند رفع خطا تسهیل شود. این پروژه کاملاً محرمانه بود، چرا که تمرکز مایکروسافت روی سیستمعامل OS/2 بود و احتمال میرفت که چنین پروژهای متوقف شود.
پس از ساخت نمونهی اولیه، برنامههایی مانند ورد، اکسل و پاورپوینت در حالت حفاظتشده اجرا شدند و سپس تیم دونفرهی وایس و سارجنت، موفقیت خود را به استیو بالمر نشان دادند. بالمر بلافاصله گفت: «ادامه دهید!» سه روز بعد، در جلسهی برنامهریزی ویندوز ۳٫۰، بیل گیتس نیز با اشتیاق از این تصمیم حمایت کرد و پروژه بهطور رسمی تأیید شد. پروژهی مذکور بعدها پایه و اساس سیستم مدیریت حافظهی ویندوز ۳ شد که در سه حالت مختلف اجرا میشد:
- حالت واقعی یا Real Mode برای پردازندههای ۸۰۸۸/۸۰۸۶
- حالت استاندارد یا Standard Mode برای پردازندههای ۸۰۲۸۶
- حالت بهبودیافته یا Enhanced Mode برای پردازندههای ۸۰۳۸۶
نسخهی مخصوص پردازندههای ۸۰۳۸۶ مبتنیبر حالت حفاظتشده با پشتیبانی از صفحهبندی حافظهی مجازی (Paged Virtual Memory) بود که امکان استفاده از ظرفیت بیشتر حافظهی فیزیکی و بهبود عملکرد سیستم مبادلهای (Swap) را فراهم میکرد. همچنین، این دو حالت حفاظتشده باعث اجرای بهتر برنامههای MS-DOS در محیطهای مجازی (VDM) شد و امکان شبیهسازی سختافزار و پشتیبانی از VCPI و DPMI را فراهم کرد.
توسعه ویندوز ۳٫۰ با چالشهای مهندسی همراه بود
باوجود دستاوردهای چشمگیر، توسعهی این سیستمها با چالشهایی مهندسی همراه بود. به عنوان مثال، معماری حالت بهبودیافته از یک مدیر ماشین مجازی (هایپروایزر) بر پایهی پردازندهی ۸۰۳۸۶ استفاده میکرد که میزبان چندین ماشین مجازی ۸۰۸۶ بود. این پیچیدگی، نیازمند توسعهی راهانداز دستگاه مجازی (VxDs) برای مدیریت دسترسی به سختافزار در محیطهای مجازی بود.
همزمان با بهبودهای حافظه، ویندوز ۳٫۰ با ارتقای چشمگیر رابط کاربری گرافیکی (GUI)، تجربهی کاربری را دگرگون کرد. جایگزینیِ ظاهر مسطح فایلها با آیکونهای سهبعدی و قابل کلیک، نهتنها استفاده از سیستم را سادهتر کرد، بلکه پایهای برای رابطهای پیشرفتهتر در نسخههای بعدی ویندوز شد.