OS1-ProjectII.pdf

‫به نام خدا‬
‫پروژه پایانی درس سیستمهای عامل‬
‫پروژه پایانی درس سیستم عامل شامل دو بخش تحلیل و بررسی پیادهسازی الگوریتمهای زمانبندی پردازهها در‬
‫سیستم عامل ‪ FreeBSD‬و پیادهسازی یک الگوریتم زمانبندی برای برخی از پردازهها میباشد‪.‬‬
‫تحلیل و بررسی پیادهسازی الگوریتمهای زمانبندی پردازهها‬
‫سیستم عامل ‪ FreeBSD‬پردازهها را در سه کالس قرار داده و پردازههای هر کالس را بصورت جداگانه زمانبندی‬
‫میکند‪ .‬در این بخش دانشجویان باید با بررسی پیادهسازی این زمانبندها و همچنین مستندات موجود در اینن‬
‫زمینه‪ ،‬روش دقیق مورد استفاده برای زمانبندی و همچنین توابع منورد اسنتفاده بنرای اینن منرنور را بررسنی‬
‫نمایند و یک مستند شامل توضیحات کاملی در این مورد ارائه نمایند‪ .‬در مستند ارائه شده عالوه بر ساختار کلی‬
‫روش زمانبندی و الگوریتم مورد استفاده‪ ،‬توضیحات کاملی درباره توابع موجود‪ ،‬عملکرد هر یک‪ ،‬سلسله مراتن‬
‫فراخوانی‪ ،‬زمان اجرای هر کدام و سایر اطالعاتی که برای ایجاد تغییرات مورد نیاز خواهند بنود نینب بایند وجنود‬
‫داشته باشد‪.‬‬
‫پیادهسازی یک الگوریتم زمانبندی‬
‫در این بخش دانشجویان باید الگوریتم زمانبنندی قرعهکشنی‪ 1‬را در هسنته سیسنتم عامنل پیادهسنازی کننند‪.‬‬
‫پیادهسازی باید شامل سه فراخوانی سیستمی زیر باشد‪.‬‬
‫‪ .1‬افبودن یک پردازه به سیستم زمانبندی قرعهکشی‬
‫‪ .2‬تغییر تعداد قرعههای مربوط به پردازه‬
‫‪ .3‬حذف یک پردازه از سیستم زمانبندی قرعهکشی‬
‫هر پردازهای که خود را به سیستم زمانبندی جدید افبوده باشد توسن زمانبنند پیادهسنازی شنده زمانبنندی‬
‫خواهد شد و پس از خارج شدن از این سیستم توس فراخوانی سوم‪ ،‬باید به زمانبندی عادی برگردد‪ .‬پردازههنا‬
‫در سیستم عامل ‪ FreeBSD‬در سه کالس قرار گرفته و هر کالس بصورت جداگانه زمانبندی میشود‪ .‬در نتیجنه‬
‫)‪Lottery scheduling (http://en.wikipedia.org/wiki/Lottery_scheduling‬‬
‫‪1‬‬
‫تمام پردازههایی که به سیستم زمانبندی جدید اضافه میشوند باید در یک کالس مشخص قرار داده باشند ‪ .‬در‬
‫صورت عدم قرار داشتن در یک کالس باید به پردازه خطنا داده شنود تنا کنالس خنود را توسن فراخوانیهنای‬
‫سیستمی موجود تغییر دهد‪.‬‬
‫توجه‬
‫‪ ‬به دلیل امکان بروز مشکل در سیستم عامل به دلیل تغییرات ایجاد شده توس‬
‫شما‪ ،‬همیشه‬
‫چندین ‪ snapshot‬از ماشین مجازی خود داشته باشید تا در صورت بروز مشکل بتوانید به سرعت‬
‫ماشین مجازی را به حالت اولیه برگردانید‪.‬‬
‫‪ ‬در مستند ارسالی باید تمامی موارد خواسته شده‪ ،‬فایلهای ایجاد شده و همچنین تصاویر کافی از‬
‫مراحل انجام پروژه وجود داشته باشد‪ .‬گرفتن نمره کامل منوط به ارسال مستندات کافی میباشد‪.‬‬
‫‪ ‬به پاسخهای مشابه پاسخهای سایر دانشجویان و یا پاسخهای سالهای قبل نمرهای تعلق نخواهد‬
‫گرفت‪.‬‬
‫‪-----------------------------------------------------------------------------‬‬‫‪ ‬تحویل این پروژه به صورت حضوری بوده و در زمانی که متعاقبا اعالم میگردد خواهد بود‪.‬‬
‫‪ ‬این پروژه در قال‬
‫گروه های یک یا دو نفره (ترجیحا دو نفره) انجام می پذیرد‪( .‬ضمنا گروههای‬
‫آقایان و خانم ها می بایست جدا از هم باشد)‬
‫‪ ‬برای آشنایی با پروژه و هچنین بیان نکات و پاسخ سواالت شما جلسهی حل تمرینی برگبار خواهد‬
‫شد که از اهمیت ویژه ای برخوردار است و متعاقبا زمان آن به اطالع شما خواهد رسید‪.‬‬
‫‪ ‬هر گونه سوال و ابهام در باب پروژه را با جناب آقای سالخورده در میان بگذارید‪.‬‬
‫‪[email protected]‬‬
‫‪ ‬در کالس حل تمرین شرکت کنید؛ مطالعه ی صورت پروژه و بررسی سورس مرتب‬
‫با آن در‬
‫‪ FreeBSD‬را آغاز کنید؛ چراکه زمانبندی ها محدود بوده و به پایان ترم بسیار نبدیک هستیم‪.‬‬
‫‪ ‬عنوان فایل زیپ شده ی و یا پی دی اف مستند ارسالی‪ ،‬عنوان ایمیل و موضوع ایمیل همگی دقیقا‬
‫به فرمت ‪ OS1-PR2-studentID‬باشد و به آقای سالخورده ارسال شود‪.‬‬
‫‪ ‬زمان بارگذاری پروژه بر روی سایت درس روز ‪ 12‬آذر ‪ 1332‬بوده و مهلت ارسال مستندات آن تا‬
‫ساعت ‪ 23:33‬روز ‪ 3‬دی ‪ 1332‬می باشد‪.‬‬
‫‪ ‬موفق باشید ‪):‬‬