تالار گفتمان مانشت
حافظه مجازی-الگوریتم FiFo - نسخه‌ی قابل چاپ

حافظه مجازی-الگوریتم FiFo - MiladCr7 - 29 دى ۱۳۹۳ ۰۵:۵۰ ب.ظ

سلام.بچه ها مشابه همین سوال تو ایتی هم اومده.میشه یکی حلشو بگه متوجه شیم.ممنونم
[تصویر:  328040_v0c8t38vey6seyvedqje.jpg]
گزینه ۳ عدد ۶۵ هستش

RE: حافظه مجازی-الگوریتم FiFo - m.teymourpour - 29 دى ۱۳۹۳ ۰۷:۰۶ ب.ظ

سلام
اول باید توجه کنیم که ماتریس ها بطور پیش فرض بصورت سطری در حافظه ذخیره میشن.
واسه اینکه برنامه رو اجرا کنیم باید کدش داخل حافظه باشه. پس اول یه نقص صفحه رخ میده و میریم کد برنامه رو میاریم و میذاریم داخل اون قابی که گفته مربوط به کد برنامه می باشد
پس الان دو قاب برای کار با داده ها داریم
خب الان ما میخوایم خونه اول رو صفر کنیم و چون داخل حافظه نیست، نقص صفحه رخ میده و میریم یه صفحه رو میاریم. هر سطر ۶۴ عنصر داره و هر عنصر هم ۴ بایت است. یعنی هر سطر معادل یک صفحه می باشد
پس وقتی صفحه اول رو آوردیم، در واقع سطر اول رو آوردیم و به ازا ۶۳ عنصر سطر اول ما دیگه نقص صفحه نداریم(برنامه ماتریس رو به صورت سطری میخواند)
الان یه قاب صفحه خالی تو حافظه داریم
دوباره واسه عنصر اول سطر دوم نقص صفحه رخ میده و میریم کل سطر ۲ رو میاریم(صفحه دو). پس دوباره واسه عنصر اول، نقص صفحه و واسه ۶۳ عنصر بعدی سطر نقص نداریم
خب الان که بخوایم سطر سوم رو بخونیم باید طبق الگوریتم fifo صفحه اول رو خارج کنیم و صفحه سوم رو جای اون بذاریم
در واقع اینجا فک کنم الگوریتم مورد استفاده تاثیری تو نقص صفحه نداشته باشه
شما اگه همین طور ادامه بدین، میبینین که به ازا هر سطر فقط یه نقص صفحه دارین(فقط عنصر اول سطر)
پس کلا میشه ۶۴ تا و یکی هم که به خاطر کد، در مجموع میشه ۶۵ تا
باید توجه کنید که قبلا ماتریس ذخیره و صفحه بندی شده است(البته به صورت سطری)

RE: حافظه مجازی-الگوریتم FiFo - MiladCr7 - 29 دى ۱۳۹۳ ۰۸:۳۷ ب.ظ

ممنون میثم جان

RE: حافظه مجازی-الگوریتم FiFo - m.teymourpour - 29 دى ۱۳۹۳ ۰۸:۵۵ ب.ظ

(۲۹ دى ۱۳۹۳ ۰۸:۳۷ ب.ظ)miladcr7 نوشته شده توسط:  ممنون میثم جان

خواهش میکنم آقا میلاد