عکس پیش‌فرض نوشته

– تمام نیازمندی های اصلی که سیستم عامل باید پاسخگو باشد به وسیله فرآیند قابل یبان است.

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

Operating Systems

حالات فرآیند :
– اساسی ترین عمل پردازنده ،اجرای دستورالعمل های موجود در حافظه است.

– اجرا شامل دنباله ای از دستورالعمل های همان برنامه است.
به اجرای یک فرآیند خاص ،فرآیند یا وظیفه گویند.

– رفتار یک فرآیند به خصوص را میتوان با فهرست کردن دنباله دستورالعمل هایی که برای آن فرآیند اجرا میشوند ،مشخص نمود ؛که به آن رد آن فرآیند گویند.

– مسئولیّت اصلی سیستم عامل ،کنترل یک فرآیند است.

– یک فرآیند ممکن است در یکی از دو حالت اجرا و غیر اجرا باشد.

– وقتی یک سیستم عامل فرآیندی را دریافت میکند آن را در حالت غیر اجرا قرار میدهد.

– پس از رسیدن نوبت ،فرآیند فعلی را به حالت غیر اجرا برده و فرآیند را به حالت اجرا.

– در مورد هر فرآیندی باید اطّلاعاتی را ذخیره کرد.

– فرآیندی که در حال اجرا نیست باید در یک صف به انتظار نوبت قرار گیرد.

– گاهی صفی وجود دارد که حاوی جداولی است که وضعیّت فرآیندها را نمایش میدهد.

– وقتی یک فرآیند در معرض وقفه قرار میگیرد ،به صف انتظار میرود.

– اگر یک فرآیند کارش تمام شود ،کنار گذاشته می شود.

 

نمودار تغییر حالت
نمودار صف بندی

 

ایجاد و پایان فرآیند :
عمر یک فرآیند محدود به زمان ایجاد تا زمان خاتمه دادن به آن است.
در هنگام ایجاد سیستم عامل، ساختمان داده مربوط به آن فرآیند ساخته شده و فضای آدرس مربوط به آن را تخصیص می دهد.

 

معمولاً چهار حادثه موجب به ایجاد فرآیند می‏گردد :
1- در محیط دسته ای : یک فرآیند جدید در پاسخ به یک کار
2- برقراری ارتباط محاوره ای : کار از طریق پایانه با سیستم ارتباط برقرار کند.
3- ارائه یک خدمت به وسیله سیستم عامل : فرآیندی را برای خدمت ایجاد کند.
4- زایش توسط فرآیند موجود : برای بهره گیری از توازی یا تفکیک

 

پایان فرآیند :
هر کار دسته ای باید حاوی دستورالعمل توقّف یا فراخوانی صریح یک خدمت سیستمی برای پایان باشد.
در بعضی از سیستم عامل ها ممکن است فرآیندی به وسیله فرآیند ایجاد کننده اش و با پایان فرآیند پدرش نیز پایان یابد.

 

زایش فرزند : فرآیندی با درخواست فرآیند دیگر به وجود می آید.
فرزند : فرآیند زاینده را پدر و فرآیند ایجاد شده را فرزند گویند.

 

انواع خطا :
خطای محاسباتی : محاسبات غیر مجاز
گذشت زمان : گذشت زمان بیش از حد ،برای بروز حادثه منتظر مانده
خطای ورودی و خروجی
و…

 

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

 

مدل پنج حالته برای فرآیند

 

انواع حوادثی که منجر به تغییر حالت شده است :
تهی —> آماده : فرآیند جدیدی را برای اجرای یک برنامه ایجاد می کند.
جدید —> آماده : آمادگی برای گرفتن یک برنامه
آماده —> اجرا : زمان انتخاب یک فرآیند رسیده است.
اجرا —> خروج : فرآیند جاری اعلام می کند که تمام شده است.
اجرا —> آماده : اتمام زمان مجاز برای یک فرآیند (متداول ترین)
اجرا —> مسدود : درخواست یک منبع با انتظار
مسدود —> آماده : حادثه مورد نظر اتفاق افتاده است.
آماده —> خروج : با تصمیم پدر
مسدود —> خروج : توضیح تغییر حالت قبل در اینجا نیز صادق است.

 

در اکثر اوقات ،پردازنده بیکار میماند. برای این کار راه حل های زیر پیشنهاد می شود :
1- حافظه اصلی را گسترش داد : این کار دو عیب دارد :
– با افرایش هزینه همراه است.
– درخواست برای حافظه زیاد شده است.

2- مبادله : انتقال بخشی از یک فرآیند به دیسک
هنگامی که هیچ یک از فرآیندها در صف آماده نيستند ،منع لازم را دریافت نکرده ،به حالت معلق میروند ؛و فرآیند دیگری ازحالت معلق به حات آماده رفته و اجرا میشود.
عیب : مبادله یک ورودی وخروجی است.
امتیاز : ورودی و خروجی عموماً سریع‏تر از سیستم است و باعث افزایش کارایی میشود.

 

فرآیند معلّق :
– فوراً آماده اجرا نیست.
– یک فرآیند ممکن است منتظر یک حادثه باشد یا نباشد.
– توسط عاملی در حالت معلق گذاشته شده تا از اجرای آن جلوگیری کند.
– منتظر فرمان باشد.

 

دلایل تعلیق فرآیند :
مبادله : سیستم عامل نیاز به حافظه کافی دارد.
دلایل دیگر سیستم عامل : فرآیندی را که سودمند یا لازم و… است را معلق کند.
درخواست کاربر محاوره‏ای : کاربر به منظور استفاده از منبع ،برنامه را معلق کند.
ترتیب زمانی : فرآیند به طور دوره ای اجرا شود.
درخواست فرآیند پدر : فرآیند فرزند را به تعلیق بیاندازد.

 

ساختارهای کنترلی سیستم عامل :
برای کنترل فرآیندها باید اطّلاعات مربوط به فرآیند ،در جدولی ذخیره شوند. تمام سیستم عامل ها اطّلاعات را در جهار گروه ذخیره می کنند.
از جداول حافظه برای دنبال کردن اطّلاعات حافظه اصلی و ثانویه استفاده می کنند ؛قسمتی برای سیستم عامل و یقیه برای فرآیند.

 

جداول حافظه بايد حاوی اطّلاعات زیر باشد :
1- تخصیص حافظه اصلی به فرآیند
2- تخصیص حافظه ثانویه به فرآیند
3- ویژگی های حفاظتی فرآیند
4- اطّلاعات مورد نیاز برای مدیریت حافظه مجازی

 

انواع جداول :
جداول ورودی/خروجی : برای نگهداری و مدیریت دستگاه های ورودی ،خروجی و… استفاده می شود.
جداول پرونده : اطّلاعات مربوط به پرونده های موجود ،محلّ آن‏ها در حافظه ثانویّه ،وضعیّت جاری و… را نگهداری می کنند.
جداول فرآیند : جهت مدیریت فرآیندها استفاده می شود.

 

ساختار کنترلی فرآیند :

هر فرآیند دارای صفاتی است که معمولا همراه آن به سیستم عامل می آید ؛که به مجموعه این صفات را بلوک کنترل فرآیند می گویند.
به مجموعه داده برنامه ،داده ها ،پشته و صفت ،تصویر فرآیند می گویند و محلّ آن به مدیر حافظه بستگی دارد؛ در حافظه ثانویّه نگهداری می شود و برای اجرا باید به حافظه اصلی برود.

 

اجزای متداول تصویر یک فرآیند :
داده های کاربر : بخش قابل تغییر فضای کاربر
برنامه کاربر : برنامه‏ای که قرار است اجرا شود.
پشته سیستم : برای ذخیره پارامترها و آدرس و… .
بلوک کنترل فرآیند : اطّلاعات لازم برای کنترل فرآیند

 

اطّلاعات مربوط به یک بلوک فرآیند حاوی موارد زیر می باشد :
1- شناسایی فرآیند
2- اطّلاعات وضعیّت پردازنده
3- اطّلاعات کنترل فرآیند

 

شناسایی فرآیند : یک شناسه عددی یکتا نسبت می دهند.
مزایای شناسه :
مراجعات به جداول ،تحت کنترل است.
از طریق شناسه می‏توان پی به برقراری ارتباط بین فرآیندها برد.
می توان به یک فرآیند ،یک شناسه کاربر نسبت داد.

 

اطّلاعات وضعیّت پردازنده :
محتوای ثبات های پردازنده می باشد.
برای اطّلاعات وضعیّت می باشد. (PSW)
حاوی کد شرایط و دیگر اطّلاعات است.

 

اطّلاعات کنترل فرآیند :
به آن، بلوک کنترل فرآیند گفته می شود.
موجب ایجاد هماهنگی بین فرآیندهای فعّال می شود.

 

نقش بلوک کنترل فرآیند :
بلوک کنترل فرآیند نقش مهمّی در ساختمان سیستم عامل دارد.
وضعیّت سیستم را تعریف می‏کند.
از شناسه یکتای فرآیند به عنوان شاخص استفاده می کند.

 

مشكلات بلوك كنترل فرآيند برای حفاظت
1- وجود اشکال در یک بلاک منجر به لطمه زدن به تمام بلاک ها می‏شود.
2- تغییر در یک بلوک منجر به تغییر در بسیاری از مؤلّفه ها می ‏شود.

این آموزش بیش از ۳ سال قبل ارسال شده و اکنون در لیست به‌روزرسانی‌های سایت قرار دارد. اگر پیشنهاد یا انتقادی برای بهبود آموزش دارید، خوشحال می‌شیم به ما اطلاع بدهید.