OS-HW3.pdf

‫به نام خدا‬
‫تمرین سری سوم درس سیستمهای عامل‬
‫دانشگاه صنعتی شریف – دانشکده مهندسی کامپیوتر‬
‫ترم اول سال تحصیلی ‪59-59‬‬
‫‪‬‬
‫مهلت ارسال تمرین ‪ 6‬بهمن ‪ 4959‬ساعت ‪ 99:95‬می باشد‪.‬‬
‫‪‬‬
‫پاسخ تمرینات خود را به آدرس ‪ [email protected]‬ارسال نمایید‪ .‬دقت کنید که پاسخ ها تنها در قالب یک فایل ‪ PDF‬بوده و نام و عنوان ایمیل ارسالی‬
‫با فرمت ‪ )88101111-HW3( StudentID-HW3‬ارسال گردد‪( .‬پاسخهایی که با این فرمت ارسال نشوند در هنگاه تصحیح با مشکل مواجه خواهند شد‪).‬‬
‫‪‬‬
‫این تمرین امکان ارسال با تاخیر را ندارد و پس از ددالین نمره آن صفر در نظر گرفته خواهد شد‪.‬‬
‫‪‬‬
‫در صورت شباهت تمرینات ارسالی و احراز رونوشت بودن آنها برای هر دو نفر نمره صفر در نظر گرفته میشود‪.‬‬
‫‪‬‬
‫کپی برداری محض از سایتهای اینترنتی نمره ای نخواهد داشت‪.‬‬
‫‪‬‬
‫هرگونه سوال یا ابهام خود را به ایمیل ‪ [email protected]‬ارسال کنید‪.‬‬
‫‪-4‬‬
‫فرض کنید زمانبندی ما بر پایه ‪ SJF‬طراحی شده است‪ .‬طول هرکدام از ‪ CPU Burst‬ها را قبل از انجام آنها‪ ،‬پیش بینی کنید‪:‬‬
‫(حدس اول را ‪ 8‬واحد در نظر بگیرید)‬
‫‪-9‬‬
‫فرض کنید ‪ 9‬پردازه و ‪ 9‬منبع ‪ A, B‬و ‪ C‬در سیستم داریم‪ .‬از منبع ‪ 9،A‬عدد‪ ،‬از منبع ‪ 9،B‬عدد‪ ،‬و از منبع ‪ 9،C‬عدد در سیستم داریم‪ .‬با توجه به اطالعات زیر‬
‫آیا سیستم میتواند بدون رخ دادن بن‬
‫‪-9‬‬
‫بست‪4‬‬
‫این ‪ 9‬پردازه را اجرا کند؟‬
‫فرض کنید گراف زیر گراف تقدم‪-‬تاخر پردازهها در سیستم باشد‪ ،‬با توجه به ماتریس بیشینه برای پردازهها مشخص کنید مقدار کمینه برای منابع ‪ A‬و ‪ B‬در‬
‫سیستم چقدر باشد تا ترتیب<‪ >P1,P6,P5,P4,P3,P2‬ترتیبی امن باشد‪.‬‬
‫‪Deadlock‬‬
‫‪1‬‬
‫‪-9‬‬
‫میدانیم برای جلوگیری از بن بست‪ ،‬باید یکی از شرایط ایجاد ان را در سیستم نقض کنیم‪ ،‬یکی از این قاعدهها ‪ Hold and wait‬است‪ .‬دو راهکار برای نقض این‬
‫قاعده در کتاب بیان شده‪:‬‬
‫معایب هر کدام از راهکارها را بیان کنید‪.‬‬‫‪-‬استفاده از این دو راهکار را برای ‪-4‬سیستمعاملهای تعاملی‪-9 ،‬سیستمعاملهای بیدرنگ بررسی کنید و بیان کنید کدام راهکار بهینه تر است‪.‬‬
‫‪-9‬‬
‫یک سیستم مدیریت حافظه‪ ،‬از ترکیب قطعه بندی‪ 9‬و صفحه بندی‪ 9‬با جداول صفحه‪ 9‬دو سطحی بهره میبرد‪ .‬قالب آدرس مجازی‪ ،‬بشکل زیر است‪:‬‬
‫اندازه موارد زیر را حساب کنید‪:‬‬
‫الف) اندازه صفحه ب)اندازه حافظه مجازی هر فرآیند پ)حداکثر تعداد جداول سطح ‪ 9‬در هر قطعه ت) حداکثر تعداد جداول سطح ‪ 4‬در هر فرآیند‬
‫ث)حداکثر تعداد صفحات در هر قطعه ج)حداکثر تعداد صفحات در هر فرآیند‬
‫‪2‬‬
‫‪Segmentation‬‬
‫‪Paging‬‬
‫‪4‬‬
‫‪Page Table‬‬
‫‪3‬‬
‫‪-6‬‬
‫یک سیستم حافظه قطعه بندی شده را در نظر بگیرید که در آن‪ ،‬حافظه بشکل زیر تخصیص یافته است‪:‬‬
‫فرآیند ‪ E‬شروع میشود و ‪ 933‬واحد حافظه درخواست میکند‬
‫‬‫فرآیند ‪ 933 ،A‬واحد حافظه بیشتر درخواست میکند‬
‫‬‫فرآیند ‪ B‬خاتمه می یابد‬
‫‬‫فرآیند ‪ F‬شروع میشود و ‪ 833‬واحد حافظه درخواست میکند‬
‫‬‫فرآیند ‪ C‬خاتمه می یابد‬
‫‬‫فرآیند ‪ G‬شروع میشود و ‪ 533‬واحد حافظه درخواست میکند‬
‫‬‫توضیح دهید که اگر از الگوریتم های زیر استفاده شود‪ ،‬محتوای حافظه پس از هر عمل‪ ،‬به چه صورت است؟‬
‫الف) ‪ First-Fit‬ب)‪ Best-Fit‬پ)‪Worst-Fit‬‬
‫و بگویید که استفاده از کدام الگوریتم بهتر است؟‬
‫‪-7‬‬
‫الف) اندازه فرآیندی‪ 593 ،‬بایت و اندازه هر قالب‪ 69 ،‬بایت است‪ .‬اگر از روش ‪ LRU‬استفاده شود‪ ،‬درصد خطای صفحه با فرض آدرسهای ارجاعی زیر چیست؟‬
‫تعداد قاب ‪ 9‬تاست‪.‬‬
‫‪40,240,20,35,160,830,300,480,800,760,810‬‬
‫ب) در کامپیوتری که جدول صفحه خود را در حافظه اصلی نگهداری میکند‪ ،‬سربار خواندن از حافظه اصلی برابر ‪ 993‬نانوثانیه به ازای هر کلمه در حافظه است‪.‬‬
‫برای کم کردن این سربار‪ ،‬از ‪ TLB‬استفاده میکنیم که زمان دسترسی را به ‪ 93‬نانوثانیه کاهش میدهد‪ .‬حداقل نرخ برخورد‪ 9‬چقدر باشد که متوسط زمان‬
‫دسترسی‪ 433 ،‬نانوثانیه شود؟‬
‫‪-8‬‬
‫الف) در یک سیستم حافظه مجازی صفحه بندی‪ ،‬آدرس مجازی شامل ‪ 4k‬صفحه و اندازه هر صفحه ‪ 1KB‬است‪ .‬اندازه حافظه فیزیکی‪ 0.25MB ،‬است‪ .‬آدرس‬
‫مجازی ‪ 111222H‬از طریق جدول زیر‪ ،‬به کدام آدرس فیزیکی تبدیل میشود؟ ‪:‬‬
‫ب) آدرس منطقی ‪ 0001010010111010‬را در نظر بگیرید‪ .‬با مدیریت صفحه بندی ‪ 996‬صفحه ای‪ ،‬برای یک حافظه با ‪ 996‬قاب و استفاده از جدول صفحه‬
‫ای که در آن‪ ،‬هر شماره قاب‪ ،‬برابر ‪( 4/9‬ربع) شماره صفحه باشد‪ ،‬آدرس فیزیکی متناظر با این آدرس منطقی را بیابید‪.‬‬
‫‪Hit Rate‬‬
‫‪5‬‬
‫‪-5‬‬
‫الف) مفهوم ‪ Copy on Write‬را توضیح داده و بیان کنید که تحت چه شرایطی استفاده از این امکان‪ ،‬به صرفه خواهد بود؟‬
‫ب) چه پشتیبانی سخت افزاری ای برای این امکان نیاز است؟‬
‫پ)تفاوت )(‪ fork‬و )(‪ vfork‬را بیان کنید‪.‬‬
‫‪( -43‬نمره اضافه) فرض کنید اندازه حافظه اصلی برابر هزار مگابایت باشد‪ .‬میانگین اندازه فرآیند ها‪ 5MB ،‬و میانگین اندازه حفره ها‪ 0.5MB ،‬است‪ .‬سربار تکه تکه‬
‫شدن خارجی‪ 6‬در روش مبادله برابر ‪ 9‬درصد بوده و از روش لیست پیوندی‪ 7‬دوطرفه برای مدیریت حافظه های پر و خالی استفاده میکنیم‪ .‬اگر هر گره حدود ‪43‬‬
‫بایت فضا را اشغال کند‪ ،‬سربار لیست پیوندی چقدر خواهد بود؟ (توضیح دهید)‬
‫ت)‪ 9833‬بایت‬
‫پ)‪ 4333‬بایت‬
‫ب)‪ 4533‬بایت‬
‫الف) ‪ 9533‬بایت‬
‫‪( -44‬نمره اضافه) متوسط زمان انتظار ‪ ،‬زمان پاسخگویی و زمان برگشت را برای لیست پردازه های زیر به ازای الگوریتم های گفته شده محاسبه کنید (کوانتوم ‪RR‬‬
‫را ‪ 9‬واحد در نظر بگیرید)‪:‬‬
‫الف) )‪Shortest Remaining Time First (SRTF‬‬
‫ب) )‪Shortest Job First (SJF‬‬
‫پ) )‪Round Robin (RR‬‬
‫موفق باشید‬
‫‪External Fragmentation‬‬
‫‪Linked List‬‬
‫‪6‬‬
‫‪7‬‬