پروژه حافظه مجازی رشته کامپیوتر

به هر فرآيند در ويندوز NT يك فضاي آدرس دهي مجازی کامپیوتر با اندازه ثابت 4 گيگا بايت داده مي شود كه البته خيلي بزرگتر از مقدار حافظه اوليه (RAM) در كامپيوترهاي شخصي (PC) معاصر آنها است. فرآيند نياز ندارد كه همه فضاي آدرس دهي مجازي را استفاده كند تنها مقداري كه احتياج دارد را استفاده مي كند. بطور عادي فايلهاي EXE براي يك برنامه خيلي كوچكتر از فضاي آدرس دهي هستند. همانطور كه در شكل 2 توضيح داده شده است بخشي از فضاي آدرس دهي مجازي كه معمولاً 2 گيگا بايت است بكار برده مي شود تا به نخ يا thread اجازه دهد كه به object هاي فضاي حافظه كاربر رجوع كند و مقدار باقيمانده براي رجوع آدرسهايي كه توسط سيستم عامل بكار برده مي شود (Supervisor space) مورد استفاده قرار مي گيرد.

مدل حاظفه مجازي ويندوز NT:

اگر چه قسمت فضاي ناظر يا همان Supervisor space از فضاي آدرس دهي، در فضاي آدرس دهي مجازي فرآيند وجود دارد اما تنها مي توان بوسيله يك thread كه در حال اجرا در مد ناظر است به آن رجوع كرد در وضعيت عادي اولين 64 كيلو بيت (آدرس 00000000*0 تا 0000FFFF*0 ) از فضاي آدرس دهي مجازي استفاده نمي شود. علت آن اين است كه زماني كه برنامه نويس كدي با اشاره گري اشتباه مي نويسد اشاره گر بد معمولا صفر يا عددي كوچك مي باشد . در سيستم حافظه مجازي ويندوز NT اگر يك برنامه تلاش كند تا به هر فضايي در k64 اول حافظه رجوع كند سيستم حافظه مجازي فرض مي كند كه ارجاع يك اشتباه برنامه اي بوده و اشتباه حافظه اتفاق افتاده است. اولين بخش قابل استفاده از فضاي آدرس دهي از 00010000  *0 شروع مي شود و به 7FFEFFFF × 0 ختم مي‌شود . k128 كمتر از GB2 بنابراين اولين مكاني كه برنامه بكار مي برد معمولاً 0001000*0 است. موقعيتهاي 7FFF0000× 0 تا 7FFFFFFF* 0 بعنوان اولين k64 براي برنامه هاي فضاي kernel ذخيره و رزرو شده اند. علاوه بر اينكه بعنوان يك حفاظي براي بدست آوردن ارجاعات به آدرسهاي كوچك است. از 80000000 *0 تا FFFFFFFF* 0 يك بخش GB 2 كامل است كه در آن راه اندازهاي قطعات و هسته يا kernel سيستم و برنامه هاي پروژه ای قابل اجرا واقع شده اند سيستم عامل به چندين وسيله براي تعيين ميزان فضاي آدرسي كه فرآيند واقعاً بكار مي برد نياز دارد همانطور كه در بحث سيستم صفحه بندي كلي اشاره شد پيوند دهنده متن يا همان (link editor) تصوير اجرايي ثابتي در يك فايل EXE مي سازد كه معمولاً بخشي از فضاي آدرس دهي كه براي كدهاي كامپايل شده مورد استفاده قرار ميگيرد را تعريف مي كند. DLL و ديگر قسمتهاي تخصيص پويايي فضاي آدرس‌دهي مي‌توانند به فضاي آدرس دهي مجازي در زمان اجرا اضافه شوند.

حافظه
حافظه

ويندوز NT از صفحه‌بندي درخواستي يا Demand Paging استفاده مي‌كند به اين معنا كه صفحات در حافظه اوليه بارگذاري نمي‌شوند تا وقتي كه به آنها رجوع شود بعلاوه PTE ها هم حتي ايجاد نشده‌اند تا زماني كه صفحه مربوطه بارگذاري شود منطق اين دستاورد اين است كه فرآيند ممكن است آدرسي از حافظه را اشغال كند و بدون اينكه از آن استفاده كند در واقع فرآيند ممكن است حتي صفحات حافظه را اعزام كند و بعد هرگز در حين اجرا به آنها رجوع نكند. زماني كه فضاي آدرس‌دهي خيلي بزرگ است اگر PTE ها در همان زماني كه اطلاعات در حال شناخته شدن است ساخته شوند تعداد زيادي PTE بصورت مشابه ممكن است ايجاد شوند و بعد هرگز استفاده نشوند كه موجب ايجاد حافظه هدررفته باورنكردني براي PTE ها مي‌شوند. بدليل اينكه PTE ها ايجاد نمي شوند تا اينكه يكبار از آنها استفاده شود سيستم عامل بايد ديگر ساختار‌هاي داده‌‌اي و همينطور عمليات اعزام يا فرستادن رادر حالت ذخيره نگه دارد. توصيف كننده آدرس مجازي يا Virtual address descriptor ( VAD ) زماني كه يك فرآيند ذخيره مي‌شود يا آدرس مجازي را اعزام مي‌كند و مي فرستد ايجاد مي شود. زماني كه يك Thread براي بار اول به يك آدرس در ميان VAD رجوع مي‌كند PTE سپس ايجاد مي‌شود بنابراين ترجمه آدرس مي‌تواند بصورت طبيعي پيش برود.

توابع حافظه مجازي:

واسط‌هاي برنامه‌نويسي كاربرديWin32 توابع زيادي براي رسيدگي به وضعيت حافظه مجازي و كنترل پوياي راههاي بكارگيري فضاي آدرس دهي فراهم مي‌كند.Virtual Query , GlobalMemorystatus, GetSystemInfo  مي‌توانند براي رسيدگي به وضعيت حافظه مجازي يك فرآيند مورد استفاده قرار بگيرند اطلاعات پايه‌اي بيشتر در اين مورد در زير آورده شده است.

مباحثی دیگر ازپروژه حافظه مجازی رشته کامپیوتر:

  • بررسی داخل سيستم صفحه‌بندي
  • مراحل تبدیل آدرس
  •  سازماندهي سيستم حافظه مجازي ويندوز NT
  •  کنترل فضاي حافظه مجازي
مطلب بالا چکیده‌ای از تحقیق و پژوهش اصلی میباشد جهت تهیه نسخه کامل آن از باکس زیر اقدام به خرید و دانلود نمایید
لینک خرید پژوهش پروژه حافظه مجازی رشته کامپیوتر:
تحویل فوری و خودکار فایل با لینک مستقیم بعد از پرداخت
تعداد صفحه: 19
قالب: فایل word

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *