تحقیق درباره چند برنامگی

↓↓ لینک دانلود و خرید پایین توضیحات ↓↓

فرمت فایل: word 

 (قابل ویرایش و آماده پرینت)

تعداد صفحات:21

 

 

قسمتی از متن فایل دانلودی:

مقدمه اي به سيستم هاي عامل

   در پروژه بعدي شما پشتيباني مناسب براي چند برنامه نويسي را طراحي و اجرا خواهيد كرد. شما فرمان هاي سيستم را طوري توسعه خواهيد داد كه اصول ارتباط درون فرايندي و مديريت فرايند را انجام دهد. شما اين را به پروژه اول داراي كد مي افزاييد. اطمينان حاصل كه قبل از شروع پروژه دوم تمام نواقص در پروژه اول را اصلاح كرده ايد. اين راه حل براي پروژه يك به عنوان بخشي از جلسه هفته بعد مورد بررسي قرار خواهد گرفت.

   ناكوس در حال حاضر يك محيط تك برنامه نويسي است. ما مجبوريم ناكوس را تغيير  دهيم به طوري كه هر فرايند در  مسير سيستم خود حفظ شوند. ما بايد تخصيص حافظه و واپس گيري آن توجه داشته باشيم. هم چنين تمام داده ها و وابستگي هاي همزمان سازي بين رشته ها را مد نظر قرار مي دهيم. شما ابتدا قبل از كد گذاري راه حل را طراحي مي‌كنيد جزئيات در زير آورد است:

1- استثنائات كلي (استثنائات تماس غير سيستمي) براي به اتمام رساندن رشته به جاي متوقف كردن سيستم را تغيير دهيد. اين كار مهم خواهد بود زيرا يك استثناي زمان اجرا نبايد باعث شود كه سيستم عامل خاموش شود. قبل از تكميل پروژه احتمالاً‌مجبور خواهيد بود كه چندين بار به اين كد سر بزنيد. چند موضوع مربوط به همزمان سازي وجود دارد كه بايد در طي خروج از رشته به آن ها بپردازيد.

2- چند برنامه نويسي را اجرا كنيد. كدي كه به شما داده ايم محدود به اجراي يك برنامه كاربرد در هر بار مي باشد. براي تغيير سيستم از تك برنامه نويسي به چند برنامه نويسي بايد چند تغيير در addrspace.h و addrspace.cc انجام دهيد. بايد كارهاي زير را انجام دهيد: الف) به شيوه اي براي تخصيص فريم هاي حافظه فيزيكي برسيد به طوري كه چندين برنامه را بتوان به يكباره در حافظه بارگذاري كرد.

ب) شيوه اي براي كپي كردن داده ها به هسته يا از هسته و از فضاي آدرس مجازي كاربر يا به آن فراهم كنيد.

ج) وقتي يك برنامه كاربر پايان مي‌يابد به طور مناسب‌آزادسازي فضاي آدرس انجام شود.

د) تغيير الگوريتم بارگذار برنامه كاربر به طوري كه فريم هاي اطلاعاتي را جابجا كند بسيار مهم است. در حال حاضر تخصيص فضاي حافظه با اين فرض است كه يك فرايند در يك بخش مجاور حافظه بارگذاري شده است. وقتي چند برنامه نويسي فعال شد، حافظه ديگر ماهيتاً مجاور محسوب نمي شود اگر برنامه را اصلاح نكنيد احتمال دارد كه بارگذاري ديگر برنامه كاربر سيستم عامل را خراب كند.

3- فرمان سيستم space id exec (char*name) را اجرا كنيد. Exec يك برنامه كاربر جديد مشخص شده در نام پارامتر، اجرا شده در درون يك رشته سيستم جديد را شروع مي كند. شما بايد كاركرد start process در progtest.cc را بررسي كنيد تا دريابيد كه چگونه فضاي كاربر در درون يك رشته سيستم را ايجاد كنيد. Exec بايد در هنگام خطا 1- را برگرداند در غير اين صورت بايد “process space id” برنامه سطح كاربري كه ايجاد كرده است را برگرداند (نكته: space id ها مي تواند به شيوه اي مشابه با open file id  هاي پروژه 1 شما پيگيري شود با اين استثنا كه ممكن است بخواهيد در خارج از رشته ان ها را دنبال كنيد).

و….


 دانلود جدیدترین فایل های لایه باز در پی اس دی نگار

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *