مقدمه
ویندوز NT نسبت به سیستمهای عامل OS/2 و UNIX و ویندوز 16 بیتی دارای برتریهایی است که این خصوصیات و امکاناتی که ویندوز NT دارد، با یک سیستم عامل یا بیشتر نیز قابل دسترسی است. ولی هیچکدام از سیتم عاملها قابلیتهای ویندوز NT را ندارد. در این قسمت مهمترین خصوصیات NT را معرفی میکنیم و یکسری خصوصیات کلیدی NT را شرح میدهیم.
1- آدرسدهی 32 بیتی
در انیجا لازم است توضیحی در مورد اینکه آدرس چیست و نحوه آدرسدهی که میکروسافت DOS چگونه است بدهیم. آدرس کلاً محل یک بایت از اطلاعات در حافظه کامپیوتر یا Mass storage میگویند. آدرس بر دو نوع است. آدرس میتواند فیزیکی و یا میتواند مجازی باشد.
1-1- آدرسدهی فیزیکی: به بایت داده معین در محل فیزیکی معینی از حافظه یا دیسک اشاره میکنند.
2-1- آدرسدهی مجازی: به آدرس منطقی (نرمافزاری) اشاره میکند که سیستم عامل به آدرس فیزیکی معینی اشاره میکند.
مطلب قابل توجه در انیجا این است که ویندوزNT از بین دو آدرسدهی، از آدرسدهی مجازی استفاده میکند که برای هر درخواست اصولاً چهار گیگابایت اختصاص داده میشود که البته 2 گیگابایت آن برای سیستم عامل منظور میشود.
به دنبال پیشرفت مایکروسافت DOS به دلیل محدودیتهای حافظه، میکروپروسسورهایی از قبیل 8086 و 8088 شانزده بیتی که یک فضای آدرسدهی بیست بیتی را عرضه میداشتند طراحی کردند. یعنی در واقع این میکروپروسسورهای میتوانستند یک مگابایت از حافظه را به طور فیزیکی آدرسدهی کنند. با توجه به این که بیست بیت به خوبی در کلمه (word) شانزده بیتی جای نمیگرفت مهندسین INTEL برای دستیابی به هر آدرس، طرحی به نام تقسیم حافظه ارائه دادند.
در این نوع آدرسدهی آمدند یک مگابایت را به 16 قسمت تقسیم کردند که هر قسمت 64 کیلوبایتی با ghunk بود. این کار بدین دلیل بود که برنامهنویسان اصولاً در پردازندههای 8 بیتی قدیمی مانند INTEL 8085 و ZILOG Z80 با آدرسدهی 64 kdyte آشنایی داشتند.
برای اینکه برنامنویسان بتوانند به هر آدرسی در داخل فضای آدرس یک مگابایتی دست پیدا کنند آدرس حافظه فیزیکی محاسبه شد. (قسمت در 16 ضرب کرده و سپس یک offset به آن اضافه میشود. نتیجه به بایت مورد نظر اشاره میکند.) بقیه پردازندههای 6 بیت مانند 68000 Motorola از آدرسدهی خطی استفاده میکردند که هربیت از حافظه مستقیماً و بدون استفاده از offset & segment آدرسدهی میکرد. و علاوه بر تسهیلاتی مانند MS-DOS 5.0 و windows 3.1، طراحان زیادی طرحهای خود را برای آدرسدهی و بیش از 640 کیلوبایت حافظه پیشنهاد کردند. میتوان از معروفترین نمونهها QEMM QUALAS’ 386 MAو QUARTERDECK’S را نام برد.
کل این و طرحها حافظه مورد استفاده را بیش از حد 640 کیلوبایتی بسط داند، ولی مجبور کردن آنها به کار با یک موقعیت خاص PC و دنباله درخواستها و تسهیلات نرمافزاری معمولاً یک هدر کردن زمان، پردازش خنثیکننده است. همیشه اینطور به نظر میرسد که حداقل یک درخواست مهم با یکی از تسهیلات با مدیریت حافظه شما سازگار نیست.
اولین پردازنده که فضای آدرسدهی خطی را به کار برد و نیز با DOS سازگاری داشت INTEL 386 بودکه میبایست تقسیمبندی حافظه در کنار آن احتیاج به مدیریت شخص ثالث را حذف کرد که در واقع فضای آدرسدهی 32 بیتی INTEL 386 با برنامهها نوشته شده برای پردازندههای INTEL قبلی سازگاری نداشت.
این برنامههای ناسازگار، DOS و تمام برنامههای اجرا شده تحت DOS بودند. برایایجاد سازگاری با DOS و درخواستهای آن INTEL یک طریقه دیگر آدرسدهی را طرح کرد بنام Real Mode .
این نوع آدرسدهی با سایر نرمافزارهای قبل سازگاری داشت ولی متذسفانه در هنگام کار با این نوع آدرسدهی یعنی Real moed ، 386 و (486) بیش از یک 8086 خیلی سریع عمل نمیکند. DOS که در مقابل محدودیتهای 8086 و 8088 نوشته شده بود، هنوز بسیار شبیه نسخه سریع حد خود در سال 1981 با تمام محدودیتهای آدرسدهی عمل میکنند.
دو طریق آدرس دهی حافظه:
Real Mode : یک طریقه آدرسدهی حافظه است که از آدرسدهی نوع تقسیمبندی حافظه یعنی همان segment & offset استفاده میکنند. ماننده پردازنده INTEL 8086.
Protected Mode : یک طریقه دیگر آدرسدهی حافظه که برای دستیابی به بایت حافظه به جای segment & offset از آدرسدهی خطی استفاده میکند. این نوع آدرسدهی مشخصات حفاظت سختافزاری که windows و windows NT آن را به کار گرفتهاند، فعال میکند.
windows NT برای تهیه آدرسدهی 32 بیتی واقعی Trune 32-bit addressing از آدرسدهی خطی 386 و 186 و پنتوم (INTELS586) و همچنین پردازنده pisk همچنون Mips و DigtalAlpha استفاده می کند. قابل ذکر است که دیگر NT از سازگار بودن با DOS و windos 16بیتی صرفنظر می کند و دارای طرحی است بنام (viriul dos machine) که در این صورت این امکان را به ویندوز NT می دهد که بتواند در خواستهای Dos و windows16 بیتی را اجرا کند (بعدا در مورد VDM صحبت خواهیم کرد ) .
مزیت های آدرس دهی 32 بیتی :
1-توسعه نرم افزار با حذف قسمت بندی حافظ آسانتر و سریع تر می شود.
2- برنامه نویسان دیگر لآزم نیست حافظه مورد در خواستهایشان آشنا باشد .
3-کارسیستم باحذف سربارپردازشی که موردلزوم مدیریت حافظه است بهبود می یابد.یعنی در هیچ گونه نیازی به حافظه ثالثی ندارد.رهایی از مدیریت حافظه سازگاریهای NT واقع ویندوز مختلف سخت افزار ونرم افزار را نیزحذفمی کندیعنی وضعیت استقرارنرم افزار می تواند ساده و 16 بیتی باشد WindowsیاDos ابتدایی تر از
4- میزان برنامه قابل دسترسی و اندازه داده در آدرس دهی 32 بیتی زیاد می شود.
ویندوز NT از ترکیب برنامه و سیستم با اندازه چهار گیگا با یت که صدها برابر بزرگتر از حدودقابل اجرا روی بر نامه های DOS و ویندوز 16 بیتی تشکیل شده است . فایلهای بزرگ که توسط ویندوز NT قابل پردازش می باشد غیر ممکن است که توسط DOS ویاwindos16 بیتی پردازش شوددر خواست کننده های (در خواستهای ) پیچیده که فایلهای بزرگ را پردازش میکنند فقط با ویندوز NT عمل می کندو آن هم فقط به دلیل آدرس دهی 32 بیتی است . در خواستهای پیچیده همچون رزرواسیون، مبادله دارایی وسیستمهای پردازش طلبهای بیمه است
از دیگر خصوصیات کلیدی ویندوز NT ،حافظه مجازی و یا VM است که در زیر توضیح می دهیم .
2-VIRTUAL MEMORY (حافظه مجازی)
هر در خواست در ویندوز NT میتواند به 4 گیگا بایت حافظه دست پیدا کند (به خاطر فضای 32 بیتی )
که البته از مقدار تصور شده برای هر در خواست بیشتر است . دو نوع حافظه اصلی کامپیوتر به شرح زیر است :
RAM :RAM یا حافظه تصادفی (حافظه دسترسی تصادفی ) از نوع دیگر سریعتر است . مزیتهای آن به شرح زیر است :
1-PC برای اینکه بتوانند یک بایت داده را در 70 بیلیونیم ثانیه دریافت و بعد ذخیره کننداز RAM استفاده می کنند
-برنامه ها به طور مستقیم می توانند به آدرس حافظه بروند و بایت مورد نظر خود را دریافت کنند درواقع بجای اینکه به بلاک مورد نظر در روی دیسک مراجعه کند و با یتها ی بلاک را بایت به بایت بخواند وبه بایت مورد نظر برسد می تواند به طور مستقیم به آدرس حافظه بروند . ترجیحا استفاده از RAM را پیشنهاد می کنند.
عیوب استفاده ازRAM :
1 -در هنگام قطع برق تمام اطلاعات ذخیره شده در RAMاز بین می رود.این نوع حافظه را VOLATL STORAGE نامیده میشود . در این جا قابل ذکر است که در بسیاری از کامپیوتر هایی که قابل حمل هستند
هنگامی که کامپیوتر خاموش است مقداری برق به حافظه RAM کامپیوترمی رسدکه باعث می شود داده های ذخیره شده در آن از بین نرود و در هنگام تمام شدن باطری آن اطلاعات در آن با تمام شدن باطری از بین می رود.
2-عیب دیگر RAM ها در قیمت آن مشاهده می شودوآن نیزگران بودن قیمت RAMها است در واقع هر مگا بایت از RAM ها برای pc ها حدود 35 دلار فروخته می شود . از روی این قیمت می تواند تعداد RAMهایی که در یک pc می توان نصب کردرا حدس زد .اصولا به pc های kigh-end 8 مگا بایت RAM وصل می شود و این مقدار را خیلی ها می توانند تا 20 مگابایت افزایش دهند و بعضی نیز این مقدار را به 64 مگابایت میرسانند .برای این امر به RAM با چگالی بالا تری نیاز است که قیمت آن به ازای هر مگابایت افزایش می یابد ولی فضای فیزیکی کمتری را اشغال میکند نوع دیگر حافظه اصلی در کامپیوتر hard disk است که در زیر شرح داده شده است :(نوع دیگر حافظه Mass storage ها هستند که روی hard disk سواری می شوند.