hafezeye_majazi

در نمایش آنلاین پاورپوینت، ممکن است بعضی علائم، اعداد و حتی فونت‌ها به خوبی نمایش داده نشود. این مشکل در فایل اصلی پاورپوینت وجود ندارد.






  • جزئیات
  • امتیاز و نظرات
  • متن پاورپوینت

امتیاز

درحال ارسال
امتیاز کاربر [0 رای]

نقد و بررسی ها

هیچ نظری برای این پاورپوینت نوشته نشده است.

اولین کسی باشید که نظری می نویسد “Virtual Memory”

Virtual Memory

اسلاید 1: Virtual Memoryفصل هشتم

اسلاید 2: Hardware and Control Structuresدر زمان اجرا ارجاعات به حافظه بصورت دینامیک ترجمه می شوند.بدلیل وجود مسئله جابجایی، فرآیند ممکن است در جاهای مختلفی از حافظه قرار گیرد.ممکن است یک برنامه را به تکه های مختلف شکسته باشیم و نیازی نباشد که این تکه ها در حافظه در کنار هم قرار بگیرند.نیازی نیست که تمام تکه های برنامه در حال اجرا، وارد حافظه شوند.

اسلاید 3: Execution of a Programسیستم عامل چند تکه از برنامه را برای اجرا به حافظه اصلی می آورد.مجموعه مقیم: قسمتی از برنامه که داخل حافظه اصلی است.وقتی که به آدرسی نیاز داشته باشیم که در حافظه اصلی نباشد یک وقفه تولید می گردد.سپس، سیستم عامل فرآیند را مسدود می کند.قسمت مورد نیاز که حاوی آدرس منطقی تولید شده است وارد حافظه می گردد.سیستم عامل یک درخواست I/O خواندن دیسک را صادر می کند.مادامی که درخواست I/O تکمیل نشده است، برنامه دیگری برای اجرا فرستاده می شود.وقتی درخواست آماده شد، یک وقفه صادر می شود که باعث می شود سیستم عامل فرآیند مسدود شده را به حالت آماده برگرداند.

اسلاید 4: Advantages of Breaking up a Processفرآیندهای بیشتری وارد حافظه اصلی می شوند.چون فقط تکه هایی از هر فرآیند به حافظه آورده شده است.لذا احتمال اینکه همیشه یک فرآیند در وضعیت آماده اجرا باشد بیشتر است.ممکن است فرآیند از حافظه اصلی بزرگتر باشد.

اسلاید 5: Types of Memoryحافظه واقعیحافظه اصلیحافظه مجازیحافظه روی دیسکامکان چند برنامگی را فرآهم می کند و کاربر را از محدودیت های حافظه اصلی نجات میدهد.

اسلاید 6: Thrashingکوبیدگی به جابجایی قسمتی از برنامه درست قبل از وقتی که به آن نیاز داریم گفته می شود.در این حالت بیشتر وقت پردازنده به جای اجرای دستورات کاربر صرف جابجایی تکه ها می شود.

اسلاید 7: Principle of Localityارجاعات به کد برنامه و داده در فرآیند بصورت خوشه ای است.در یک دوره کوتاه زمانی، تعداد کمی از تکه های فرآیند مورد استفاده قرار می گیرند.لذا، می توان فهمید که در آینده نزدیک به کدام تکه ها نیاز خواهیم داشت و از کوبیدگی اجتناب کرد.این مسئله موید این مطلب است که حافظه مجازی بطور موثر کار می کند.

اسلاید 8: Support Needed for Virtual Memoryسخت افزار باید از صفحه بندی و قطعه بندی حمایت کند.سیستم عامل باید قادر به حرکت دادن صفحات و قطعه ها بین حافظه اصلی و جانبی باشد.

اسلاید 9: Pagingهر فرآیند دارای یک جدول صفحه است.هر ردیف جدول صفحه شامل شماره قاب معادل در حافظه اصلی است.یک بیت نیز وجود دارد که مبین حضور یا عدم حضور صفحه در حافظه اصلی است.

اسلاید 10: Modify Bit in Page Tableیک بیت کنترلی دیگر، نیاز است که مشخص می کند که آیا صفحه موجود در حافظه اصلی در حین اجرا تغییر کرده است یا نه.اگر صفحه تغییر نکرده بود، نیازی نیست که هنگام جایگزینی صفحه در حافظه جانبی نوشته شود.

اسلاید 11: Page Table Entries

اسلاید 12:

اسلاید 13: Page Tablesممکن است که جدول صفحه خیلی بزرگ باشد و نگهداری آن در حافظه اصلی مقدور نباشد.در این حالت جدول صفحه نیز در حافظه جانبی نگهداری می شود. وقتی که فرآیند اجرا می شود قسمتی از جدول صفحه ی آن در حافظه اصلی قرار می گیرد.

اسلاید 14: Translation Lookaside Bufferهر ارجاع به حافظه ی مجازی ممکن است که به دو ارجاع به حافظه ی جانبی منجر شود:یکی برای واکشی جدول صفحهو بعدی برای واکشی دادهبرای غلبه بر این مشکل، از یک حافظه ی نهان سریع برای نگهداری ردیفهای جدول صفحه استفاده می شود.این حافظه نهان TLB نامیده شده است.TLB شامل ردیفهایی از جدول صفحه است که اخیرا به آنها ارجاع شده است.مثل حافظه ی نهان عمل می کند.

اسلاید 15: Translation Lookaside Bufferوقتی یک آدرس منطقی به دست پردازنده می رسد، ابتدا TLB را چک می کند.اگر ردیفی وجود داشت (a hit) ، شماره ی قاب متناظر با شماره ی صفحه برداشته می شود.اگر ردیف متناظر در TLB وجود نداشت (a miss) ، از شماره ی صفحه برای ایندکس کردن جدول صفحه استفاده می کنیم.ابتدا وجود جدول صفحه در حافظه اصلی چک می شود. اگر وجود نداشت خطای صفحه تولید می شود.اگر وجود داشت، TLB تازه می شود تا شامل صفحه جدید گردد.

اسلاید 16:

اسلاید 17:

اسلاید 18: TLB and Cache

اسلاید 19: Page Sizeهر چه سایز صفحات کوچکتر باشد: تکه تکه شدن داخلی کمتر است.تعداد صفحات فرآیند بیشتر است.تعداد صفحات بیشتر به معنای جدول صفحه ی بزرگتر است. به عبارت دیگر، قسمتی از جدول صفحه در حافظه ی مجازی خواهد بود.از طرفی، حافظه ثانویه طوری طراحی شده است که برای انتقال بلوکهای بزرگ داده مناسب است.

اسلاید 20: Page Sizeاگر سایز صفحه کوچک باشد، تعداد زیادی از صفحات در حافظه اصلی هستند. در حین اجرا، صفحاتی که در حافظه قرار دارند شامل قسمتهایی از فرآیند هستند که اخیرا مورد ارجاع قرار گرفته اند. لذا خطاهای صفحه کم می شوند.اگر سایز صفحه بزرگ باشد، هر صفحه حاوی محلهایی است که از ارجاعات فعلی دور هستند. لذا خطاهای صفحه افزایش می یابند.

اسلاید 21:

اسلاید 22: Page Sizeصفحات با سایز متفاوت اجازه می دهند که از TLB بصورت مؤثر استفاده گردد.از صفحات بزرگ برای ذخیره سازی دستورالعمل کدهای برنامه استفاده می شود. از صفحات کوچک برای نخها استفاده می گردد. اکثر سیستم عاملها فقط از یک سایز صفحه پشتیبانی می کنند.

اسلاید 23: Example Page Sizes

اسلاید 24: Segmentationقطعات دارای سایز مختلف هستند. (اندازه ی دینامیک)انتظارات ساختارهای داده در حال گسترش را به سادگی برآورده می کند.اجازه می دهد که برنامه ها بصورت مستقل تغییر یابند و کامپایل شوند.به راحتی با اشتراک داده بین فرآیندها کنار می آید.به آسانی مسأله حفاظت را حل می کند.

اسلاید 25:

اسلاید 26: Segment Tablesقطعه متناظر را در حافظه اصلی نشان می دهد.هر ردیف طول قطعه را نیز مشخص می کند.یک بیت نیز نشان می دهد که آیا قطعه در حافظه اصلی است یا نه؟یک بیت دیگر نیز مشخص می کند که آیا قطعه از زمان حضور (بارگذاری) در حافظه تا کنون تغییر کرده است یا نه؟

اسلاید 27: Segment Table Entries

اسلاید 28: Segmentation

اسلاید 29: combined Paging and Segmentationتکنیک صفحه بندی از دید برنامه نویس پنهان است. صفحه بندی تکه تکه شدن خارجی را حذف می کند.قطعه بندی برای برنامه نویس قابل مشاهده است.مزایای قطعه بندی پشتیبانی از ساختارهای داده در حال گسترش، استراک، حفاظت و برنامه نویسی ماژولار است.هر قطعه به صفحات با سایز ثابت تقسیم می گردد.

اسلاید 30: Combined Segmentation and Paging

اسلاید 31: Combined Segmentation and Paging

اسلاید 32: Fetch Policyسیاست واکشیمشخص می کند که چه موقع یک صفحه باید به حافظه آورده شود.صفحه بندی بر اساس تقاضا فقط وقتی صفحات را به حافظه می آورد که یک ارجاع به محلی در آن صفحه داده می شود. لذا در هنگام شروع فرآیند شاهد تعداد زیادی خطای صفحه خواهیم بود.تکنیک پیش صفحه بندی بیشتر از حد نیاز صفحه بار می کند. اگر صفحات مجاور در دیسک سخت را بارگذاری کنیم موثرتر خواهد بود.

اسلاید 33: Replacement Policyسیاست جایگزینیهنگام پر شدن حافظه کدام صفحه را جایگزین کنیم.صفحه ای که حذف می شود باید صفحه ای باشد که احتمال مراجعه به آن در آینده نزدیک کمتر است. اکثر سیاستها سعی می کند از روی رفتار گذشته فرآیندها، رفتار آینده ی آنان را پیش بینی کنند.

اسلاید 34: Replacement Policyقفل کردن قاباگر قابی قفل شده است نباید جایگزین شود.هسته سیستم عاملساختارهای کنترلیبافرهای I/Oبه هر قاب یک بیت قفل نیز وصل می کنیم.

اسلاید 35: Basic Replacement Algorithmsسیاست بهینگیصفحه ای برای جایگزینی انتخاب می شود که زمان ارجاع بعدی به آن دور ترین است.آگاهی کامل از آینده امکان پذیر نیست.

اسلاید 36: Basic Replacement Algorithmsسیاست Least Recently Used (LRU)صفحه ای را که مدت طولانتری مورد ارجاع قرار نگرفته است را جایگزین کنید.بر اساس اصل محلی بودن ارجاعات، این صفحه همان صفحه ای است که در آینده دورتری مورد ارجاع قرار می گیرد. هر صفحه باید دارای یک برچسب باشد که در زمان آخرین ارجاعی که به آن شده، تنظیم شده است. لذا به سربار زیادی خواهیم داشت.

اسلاید 37: Basic Replacement Algorithmsسیاست (FIFO)قابهایی که به فرآیند اختصاص داده شده است را بصورت یک بافر حلقوی در نظر می گیرد.صفحات بصورت round-robin جایگزین می گردند.از لحاظ پیاده سازی ساده ترین سیاست جایگزینی است.صفحه ای که مدت بیشتری در حافظه بوده است، کاندید جایگزینی است.یکی از عیوب این روش این است که این صفحه ممکن است بزودی مورد استفاده قرار گیرد.

اسلاید 38: Basic Replacement Algorithmsسیاست ساعتبه هر قاب یک بیت استفاده منتسب می کنیم.هنگامی که صفحه برای اولین بار وارد حافظه می شود بیت استفاده صفر است.وقتی که صفحه مورد ارجاع قرار می گیرد، بیت استفاده یک می گردد.وقتی که به جایگزینی نیاز باشد، با کمک یک اشاره گر بافر را میگردیم. اولین صفحه ای که در مسیر ما بیت استفاده آن صفر باشد،برای جایگزینی انتخاب می گردد.اما بیتهای استفاده صفحاتی که در مسیر جستجوی ما قرار می گیرند به صفر تبدیل میگردند. اشاره گر نیز همیشه به قاب بعدی (بعد از قاب جایگزین شده) اشاره می کند.

اسلاید 39:

اسلاید 40:

اسلاید 41: Comparison of Replacement Policies

اسلاید 42: از اینجا به بعد تدریس نشده است.

اسلاید 43: Basic Replacement Algorithmsبافر صفحهصفحه ای که قرار است جایگزین شود به یکی از دو لیست زیر منتقل می گردد:لیست صفحات خالی: اگر صفحه تغییر نکرده باشد.لیست صفحات تغییر یافته: اگر صفحه تغییر نکرده باشد.یعنی سیستم عامل دو بافر صفحه دارد.

اسلاید 44: Resident Set Sizeتخصیص ثابت:به هر فرآیند تعداد ثابتی از صفحات برای اجرا داده میگردد.اگر خطای صفحه رخ دهد، یکی از صفحات آن فرآیند جایگزین می شود.تخصیص متغییردر مدت حیات فرآیند، تعداد صفحاتی که به آن تخصیص داده شده تغییر می کند.

اسلاید 45: Variable Allocation, Global Scopeاز لحاظ پیاده سازی ساده ترین است.اکثر سیستم عاملها از این روش استفاده می کنند.سیستم عامل لیستی از قابهای خالی را نگهداری می کند. وقتی که یک خطای صفحه رخ دهد، یکی از قابهای خالی به آن داده می شود.اگر قاب خالی وجود نداشت، یک قاب از دیگر فرآیندها برای جایگزینی انتخاب می گردد.

اسلاید 46: Variable Allocation, Local Scopeوقتی که یک فرآیند جدید اضافه شود، با توجه به نوع کاربرد، درخواست فرآیند و یا دیگر معیارها تعدادی قاب به آن اختصاص داده می گردد.هنگام وقوع خطای صفحه، از مجموعه مقیم فرآیندی که عامل خطا است، صفحه ای برای جایگزینی انتخاب می گردد.اندازه قابهای تخصیص یافته به فرآیند می تواند در طول زمان تغییر نماید.

اسلاید 47: Cleaning Policyپاکسازی بر اساس تقاضاصفحه ای که تغییر کرده است فقط هنگام جایگزینی در حافظه ثانویه نوشته می گردد.پیش پاکسازیصفحات بصورت دسته ای در حافظه ثانویه نوشته می گردند.

اسلاید 48: Cleaning Policyروش بهتر استفاده از بافر صفحه است:صفحات جایگزین شده در دو لیست قرار می گیرند:تغییر کرده و تغییر نکردهصفحاتی که در لیست تغییر یافته هستند، بصورت متناوب و دسته ای در حافظه ثانویه نوشته می شوند.صفحاتی که در لیست تغییر نیافته هستند، یا دوباره فراخوانی می شوند یا از دست می روند (وقتی که قاب مربوطه به یک فرآیند دیگر داده شود).

اسلاید 49: Load Controlکنترل بار عبارت است از مشخص کردن تعداد فرآیند های مقیم در حافظه اصلی.اگر کم باشد: موقیعتهایی زیادی پیش می آید که تمام فرآیندها مسدود هستند و وقت پردازنده صرف جابجایی فرآیند ها می شود.اگر تعداد فرآیندها زیاد باشد: احهتمال وقوع پدیده کوبیدگی زیاد می شود.

اسلاید 50: Process Suspensionفرآیند با کمترین اولویتفرآیند تولید کننده خطامجموعه کاری مورد نیاز این فرآیند در حافظه نیست، پس آن را مسدود کنید.آخرین فرآیندی که فعال شدهاحتمال اینکه مجموعه کاری این فرآیند مقیم باشد، کمتر است.فرآیندی که مجموعه مقیم آن کوچکتر استدرآینده به کار کمتری برای فراخوانی مجدد آن نیاز داریم.فرآیندی که مجموعه مقیم آن بزرگتر استتعداد قابهای خالی بیشتری بدست می آوریم.فرآیندی که پنجره اجرای باقیمانده آن بزرگتر است.

17,000 تومان

خرید پاورپوینت توسط کلیه کارت‌های شتاب امکان‌پذیر است و بلافاصله پس از خرید، لینک دانلود پاورپوینت در اختیار شما قرار خواهد گرفت.

در صورت عدم رضایت سفارش برگشت و وجه به حساب شما برگشت داده خواهد شد.

در صورت نیاز با شماره 09353405883 در واتساپ، ایتا و روبیکا تماس بگیرید.

افزودن به سبد خرید