OS1-94951-HW1.pdf

‫به نام خدا‬
‫تمرین سری اول درس سیستمهای عامل‬
‫دانشگاه صنعتی شریف – دانشکده مهندسی کامپیوتر‬
‫ترم اول سال تحصیلی ‪49-49‬‬
‫‪‬‬
‫مهلت ارسال این تمرین ‪ 27‬مهر‪ 1394‬ساعت ‪ 23:59‬می باشد‪.‬‬
‫‪‬‬
‫پاسخ تمرینات خود را به آدرس ‪ [email protected]‬ارسال نمایید‪ .‬دقت کنید که پاسخ ها تنها در قالب یک فایل ‪ PDF‬بوده و نام و‬
‫عنوان ایمیل ارسالی با فرمت ‪ )88101111-HW1( StudentID-HW1‬ارسال گردد‪( .‬پاسخهایی که با این فرمت ارسال نشوند در‬
‫هنگام تصحیح با مشکل مواجه خواهند شد‪).‬‬
‫‪‬‬
‫ارسال پاسخها به ازای هر روز تاخیر(حتی یک دقیقه) مشمول ‪ %25‬کسر نمره خواهد شد و بعد از ‪ 3‬روز به آن نمرهای تعلق نمیگیرد‪.‬‬
‫‪‬‬
‫در صورت شباهت تمرینات ارسالی و احراز رونوشت بودن آنها برای هر دو فرد خاطی نمره صفر در نظر گرفته میشود‪.‬‬
‫‪‬‬
‫کپی برداری محض از سایتهای اینترنتی نمره ای نخواهد داشت‪.‬‬
‫‪‬‬
‫هرگونه سوال یا ابهام خود را به ایمیل ‪ [email protected]‬ارسال کنید‪.‬‬
‫‪ )1‬الف) شباهت ها و تفاوت های طراحی الیه ای‪ 1‬و طراحی پیمانه ای‪ 2‬سیستم عامل را بیان کنید‪.‬‬
‫ب) سیستم عامل را نام ببرید که از یک روش ترکیبی‪ 3‬در طراحی آن استفاده شده باشد‪ .‬مزیت این نوع طراحی چیست؟‬
‫‪ )2‬دسترسی مستقیم به حافظه (‪ )DMA‬برای عملیات ‪ I/O‬با سرعت باال و با هدف جلوگیری از افزایش بار کاری پردازنده استفاده‬
‫میشود‪ .‬در این تکنولوژی‪:‬‬
‫الف) پردازنده برای هماهنگ کردن عملیات ‪ ،I/O‬چگونه با دستگاه ‪ I/O‬ارتباط برقرار میکند؟‬
‫ب) پردازنده چگونه از پایان عملیات ‪ I/O‬باخبر میشود؟‬
‫پ) در طول انجام عملیات دسترسی به حافظه توسط ‪ ، DMA‬پردازنده میتواند به اجرای دیگر برنامه ها مشغول شود‪ .‬آیا این عملیات‬
‫میتواند باعث ایجاد تداخل در اجرای دیگر برنامه ها شود؟ در صورتیکه جواب مثبت است‪ ،‬این تداخل ها به چه شکلی میتوانند باشند؟‬
‫ت) مفهوم دزدی سیکل‪ 9‬را بیان کنید‪.‬‬
‫‪ )3‬مفهوم ‪ Spooling‬و کاربرد آنرا بیان کنید‪.‬‬
‫‪ )9‬ا لف) میدانیم وقفه ها بر دو نوع سخت افزاری و نرم افزاری هستند‪ .‬از هرکدام‪ ،‬دو مورد مثال زده و توضیح دهید‪.‬‬
‫ب) مزایا و معایب استفاده از رابط یکسان فراخوانی سیستمی برای تعامل با فایل و دستگاه چیست؟‬
‫‪ )9‬د و مدل ارتباط میان پردازه ای کدامند؟ مزایا و معایب هرکدام را بیان کنید‪.‬‬
‫‪ )6‬بیشتر پردازنده ها برای پیاده سازی مدهای هسته و کاربر از پیاده سازیهای سخت افزاری یاری میگیرند‪ .‬اما بعضی از پردازنده ها این‬
‫امکان را ندارند‪ .‬توضیح دهید‪:‬‬
‫‪1‬‬
‫‪Layered Approach‬‬
‫‪Modular Approach‬‬
‫‪3‬‬
‫‪Hybrid‬‬
‫‪4‬‬
‫‪Cycle Stealing‬‬
‫‪2‬‬
‫الف) آیا میتوان در سیستم هایی از دسته دوم این دو مُد را پیاده سازی کرد؟ توضیح دهید‪.‬‬
‫ب) در برخی از معماری های طراحی پردازنده‪ ،‬به جای دو مُد‪ ،‬از چند مُد پشتیبانی میشود‪ .‬این کار در چه مواردی کاربرد مفید‬
‫دارد و چه معایبی را میتواند بوجود آورد؟‬
‫‪ )7‬الف) یکی از چالش های طراحی سیستم عامل در سیستمهای حمل شونده‪ 9‬مصرف باتری آنهاست‪ .‬توضیح دهید که در سیستم‬
‫عاملهای جدید‪ ،‬این مشکل چگونه برطرف میشود؟‬
‫ب) دیگر چالش های طراحی اینگونه سیستمها چیست؟‬
‫‪ )8‬الف) پیادهسازی دستورات مفسر فرمان‪ 6‬به چند صورت امکانپذیر است؟ هر یک چه مزایایی دارد؟‬
‫‪Handheld Systems‬‬
‫‪Command Line Interpreter‬‬
‫‪5‬‬
‫‪6‬‬