تازه ترين نوشته ها
خانه / رشته هاي دانشگاهي / رشته مدیریت / چند برنامگی

 موسسه علمي پ‍‍‍‍‍‍ژوهشي آبنوس
 پكيج طلايي كنكور

تبلیغات

مقالات و پروژه های رشته حسابداری
بیش از ۲۵۰ مقاله و تحقیق رشته حسابداری با فرمت ورد ( DOC )

بیش از ۱۵۰ پروژه مختلف رشته حسابداری با فرمت اکسل

بیش از ۵۰ مقاله ترجمه شده حسابداری به همراه متن انگلیسی

بیش از ۱۰۰ طرح توجیهی و کارآفرینی با ارزش

ده ها مقاله لاتین رشته حسابداری

مقالات و پروژه های رشته حسابداری
دانلود مقاله

چند برنامگی

عموان مقاله:چند برنامگی

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

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

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

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

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

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

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

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


درباره‌ی M2

جوابی بنویسید

لطفا امتیاز دهید