تالار گفتمان مانشت
محاسبه نقص صفحه در صفحه بندی های مجازی با آرایه - نسخه‌ی قابل چاپ

محاسبه نقص صفحه در صفحه بندی های مجازی با آرایه - NP-Cσмρℓєтє - ۱۳ آذر ۱۳۹۳ ۱۱:۲۶ ب.ظ

با مفهوم کلی مشکل دارم , و برام جا نمیفته , ممکنه توضبح بدید؟؟

چرا در برنامه الف اون خونه ها مقدار دهی میشن ؟ و در برنامه ی ب اول یه صفحه کامل مقدار هی میشه بعد میره سراغ صفحه بعد ؛ با توجه به سطری و ستونی بودن یه دورنما بخوایم داشته باشیم ازشون چه شکلیه؟ منظورم اینه اگه بخوایم بکشیم چه شکلی میشه؟؟
[img]
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
[/img]

RE: محاسبه نقص صفحه در صفحه بندی های مجازی با آرایه - m.teymourpour - 14 آذر ۱۳۹۳ ۰۳:۰۵ ب.ظ

(۱۳ آذر ۱۳۹۳ ۱۱:۲۶ ب.ظ)zahra.s نوشته شده توسط:  با مفهوم کلی مشکل دارم , و برام جا نمیفته , ممکنه توضبح بدید؟؟

چرا در برنامه الف اون خونه ها مقدار دهی میشن ؟ و در برنامه ی ب اول یه صفحه کامل مقدار هی میشه بعد میره سراغ صفحه بعد ؛ با توجه به سطری و ستونی بودن یه دورنما بخوایم داشته باشیم ازشون چه شکلیه؟ منظورم اینه اگه بخوایم بکشیم چه شکلی میشه؟؟
[img]
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
[/img]


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

برنامه ب داره ماتریس رو به صورت سطری میخونی یعنی همونجوری که ذخیره شده. واسه عنصر اول سطر یک نقص صفحه رخ میده و ما کل سطر یک یا همان صفحه رو میاریم و داخل قاب میگذاریم. پس ما الان داخل قاب ۱۲۸ عنصر داریم که واسه ۱۲۷ عنصر بعدی نقص صفحه نداریم.
سطرهای بعدی هم همینطور. به ازا هر سطر فقط یک نقص صفحه داریم(عنصر اول هر سطر)
قابل ذکر است تعداد قاب صفحه هر تعداد باشد. تعداد نقص صفحه واسه برنامه ب همون ۱۲۸ تا است

RE: محاسبه نقص صفحه در صفحه بندی های مجازی با آرایه - NP-Cσмρℓєтє - ۱۴ آذر ۱۳۹۳ ۱۱:۳۴ ب.ظ

(۱۴ آذر ۱۳۹۳ ۰۳:۰۵ ب.ظ)m.teymourpour نوشته شده توسط:  
(13 آذر ۱۳۹۳ ۱۱:۲۶ ب.ظ)zahra.s نوشته شده توسط:  با مفهوم کلی مشکل دارم , و برام جا نمیفته , ممکنه توضبح بدید؟؟

چرا در برنامه الف اون خونه ها مقدار دهی میشن ؟ و در برنامه ی ب اول یه صفحه کامل مقدار هی میشه بعد میره سراغ صفحه بعد ؛ با توجه به سطری و ستونی بودن یه دورنما بخوایم داشته باشیم ازشون چه شکلیه؟ منظورم اینه اگه بخوایم بکشیم چه شکلی میشه؟؟
[img]
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
[/img]


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

برنامه ب داره ماتریس رو به صورت سطری میخونی یعنی همونجوری که ذخیره شده. واسه عنصر اول سطر یک نقص صفحه رخ میده و ما کل سطر یک یا همان صفحه رو میاریم و داخل قاب میگذاریم. پس ما الان داخل قاب ۱۲۸ عنصر داریم که واسه ۱۲۷ عنصر بعدی نقص صفحه نداریم.
سطرهای بعدی هم همینطور. به ازا هر سطر فقط یک نقص صفحه داریم(عنصر اول هر سطر)
قابل ذکر است تعداد قاب صفحه هر تعداد باشد. تعداد نقص صفحه واسه برنامه ب همون ۱۲۸ تا است

ممنون , بالاخره متوجه شدم روند کلی چطوریه Smile