از ریشه‌های تاریخی تا ابررایانش‌ها

ویندوز NT 3.1 در تابستان سال 1993 وارد بازار شد و تغییری بنیادین در مسیر محاسبات شخصی ایجاد کرد. دیوید کاتلر، مهندسِی که پیش‌تر روی سیستم‌های دانشگاهی کار کرده بود، فلسفه طراحی جدیدی را پیاده‌سازی کرد. در مقابل سیستم‌های قدیمی مبتنی بر MS-DOS که فاقد محافظت از حافظه بودند، هسته NT از همان روزهای اول چندوظیفگی پیش‌گیرانه، امنیت سطح سیستم و پشتیبانی از پردازشگر چندگانه متقارن (SMP) را به ارث برد. امروز، همان موتور خفیفی که روزی برای میزکارها طراحی شده بود، در سرورهای ابری با 896 هسته پردازنده و 2 ترابایت رم نفس می‌کشد. برای مطالعه دقیق‌تر درباره تاریخچه و معماری این بخش می‌توانید به ویکی‌پدیا مراجعه کنید.

معماری ترکیبی؛ تعادل میان عملکرد و پایداری

هسته NT یک ساختار ترکیبی (Hybrid) را انتخاب کرد. در این معماری، اجزای حیاتی مثل زمان‌بند، مدیریت حافظه و کنترل‌کننده ورودی/خروجی در سطح صفر (Ring 0) فعالیت می‌کنند تا به سخت‌افزار دسترسی مستقیم داشته باشند، در حالی که سرویس‌های سطح بالا در فضای کاربر اجرا می‌شوند. این چیدمان همان بازدهی یکپارچه (Monolithic) را حفظ کرده و همزمان انعطاف و پایداری میکروکرنل‌ها را فراهم می‌سازد. میکروکرنل‌ها معماری کلاسیکی هستند که به شدت بر جداسازی وظایف تأکید دارند.

قلب سیستم؛ ntoskrnl.exe و لایه انتزاع سخت‌افزار

تمام این منطق در یک فایل اجرایی به نام ntoskrnl.exe متبلور شده است. این هسته بدون لایه انتزاع سخت‌افزار (HAL) که با نام hal.dll شناخته می‌شود، معنا ندارد. HAL مانند یک مترجم بی‌صدا، تفاوت‌های فیزیکی بین پردازنده‌های مختلف را پنهان می‌کند. با همین تکنیک، مایکروسافت توانست هسته یکسانی را روی معماری‌های x86، x64 و ARM اجرا کند و دغدغه بازنویسی کدهای سطح پایین را برای سال‌ها به حاشیه براند.

زیرساخت اجرایی و مدیریت منابع

لایه Executive که زیرمجموعه همان ntoskrnl.exe عمل می‌کند، ترمزها و فرمان‌های اصلی سیستم‌عامل را در دست دارد.

نمای داخلی لایه‌های اجرایی و مدیریت حافظه در ویندوز NT

مدیریت اشیاء (Object Manager) برای تنظیم دسترسی به فایل‌ها و درایورها، مدیریت حافظه (Memory Manager) برای صفحه‌بندی و اختصاص فضای مجازی به هر پردازش، و مدیریت ورودی/خروجی (I/O Manager) برای ارتباط نرم‌افزار با سخت‌افزار، همه در این لایه زندگی می‌کنند. مانیتور مرجع امنیت (Security Reference Monitor) نیز بر هرگونه فعالیت حساس نظارت می‌کند تا خطاهای سطح پایین به بحران امنیتی تبدیل نشوند.

چرخه حیات رشته‌ها و مدیریت پردازش

در بستر ویندوز 11، هر وظیفه توسط رشته‌های (Threads) مستقلی هدایت می‌شود. هر رشته چرخه مشخصی را می‌پیماید؛ از حالت آماده برای اجرا، به حالت فعال منتقل می‌شود، در صورت انتظار برای داده به حالت مسدودی می‌رود و در نهایت پس از تکمیل وظیفه، از حافظه خارج می‌شود. در لایه هسته، ساختار EPROCESS به‌عنوان شناسه اصلی هر فرآیند شناخته می‌شود و بلوک محیط پردازش (PEB) اطلاعات مربوط به کاربر را نگه می‌دارد. این لایه‌بندی دقیق باعث می‌شود سیستم‌عامل بتواند همزمان هزاران برنامه سنگین را مدیریت کند و پایدار بماند.

مسیر تکامل NT هرگز متوقف نمی‌شود. با گسترش رایانش ابری، پیاده‌سازی الگوریتم‌های زمان‌بندی جدید برای پردازنده‌های هتروژن و نزدیک‌تر کردن هسته به معماری‌های کم‌مصرف موبایل، این میراث قدیمی همچنان با تکنولوژی‌های آینده ادغام می‌شود. نگاه به آینده نشان می‌دهد که چالش‌های مقیاس‌پذیری در دواپس و امنیت در معماری‌های نوین، همان مسیر خطی را که دهه‌ها پیش آغاز شده، با سرعتی بیشتر دنبال خواهد کرد و احتمالاً شاهد ادغام عمیق‌تر هسته با لایه‌های مجازی‌سازی در محیط‌های کانتینری خواهیم بود.