Virtual Memory
حافظه مجازی
50اسلاید
lدر زمان اجرا ارجاعات به حافظه بصورت دینامیک ترجمه می شوند.
lبدلیل وجود مسئله جابجایی، فرآیند ممکن است در جاهای مختلفی از حافظه قرار گیرد.
lممکن است یک برنامه را به تکه های مختلف شکسته باشیم و نیازی نباشد که این تکه ها در حافظه در کنار هم قرار بگیرند.
نیازی نیست که تمام تکه های برنامه در حال اجرا، وارد حافظه شوند.
lسیستم عامل چند تکه از برنامه را برای اجرا به حافظه اصلی می آورد.
lمجموعه مقیم: قسمتی از برنامه که داخل حافظه اصلی است.
lوقتی که به آدرسی نیاز داشته باشیم که در حافظه اصلی نباشد یک وقفه تولید می گردد.
lسپس، سیستم عامل فرآیند را مسدود می کند.
lقسمت مورد نیاز که حاوی آدرس منطقی تولید شده است وارد حافظه می گردد.
lسیستم عامل یک درخواست I/O خواندن دیسک را صادر می کند.
lمادامی که درخواست I/O تکمیل نشده است، برنامه دیگری برای اجرا فرستاده می شود.
وقتی درخواست آماده شد، یک وقفه صادر می شود که باعث می شود سیستم عامل فرآیند مسدود شده را به حالت آماده برگرداند
lفرآیندهای بیشتری وارد حافظه اصلی می شوند.
lچون فقط تکه هایی از هر فرآیند به حافظه آورده شده است.
lلذا احتمال اینکه همیشه یک فرآیند در وضعیت آماده اجرا باشد بیشتر است.
lممکن است فرآیند از حافظه اصلی بزرگتر باشد.
lحافظه واقعی
lحافظه اصلی
lحافظه مجازی
lحافظه روی دیسک
امکان چند برنامگی را فرآهم می کند و کاربر را از محدودیت های حافظه اصلی نجات میدهدlکوبیدگی به جابجایی قسمتی از برنامه درست قبل از وقتی که به آن نیاز داریم گفته می شود.
lدر این حالت بیشتر وقت پردازنده به جای اجرای دستورات کاربر صرف جابجایی تکه ها می شود.
lارجاعات به کد برنامه و داده در فرآیند بصورت خوشه ای است.
lدر یک دوره کوتاه زمانی، تعداد کمی از تکه های فرآیند مورد استفاده قرار می گیرند.
lلذا، می توان فهمید که در آینده نزدیک به کدام تکه ها نیاز خواهیم داشت و از کوبیدگی اجتناب کرد.
lاین مسئله موید این مطلب است که حافظه مجازی بطور موثر کار می کند.
lارجاعات به کد برنامه و داده در فرآیند بصورت خوشه ای است.
پاورپوینت تحقیق درباره Virtual Memory حافظه مجازی