دانشجویان کامپیوتر اصفهان

وب سایت سابق(( دانشجویان کامپیوتر جهاد دانشگاهی یزد - خرم آباد ))

۞ جزوه سیستم عامل شبکه ۞

سلام به دوستان عزیز

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

 

 

 

 


سیستم عامل :

دلایل ایجاد سیستم عامل :

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

وظایف سیستم عامل :

سیستم عامل دو کار عمده را انجام می دهد:

1.در نگرش پایین به بالا منابع منطقی مانند: فایل ها و منابع فیزیکی مانند دستگاههای سخت افزاری که کامپیوتر را مدیریت و کنترل می کند ، در نگرش بالا به پایین وظیفه سیستم عامل بعنوان یک ماشین توسعه یافته Extanted Machine یا( ماشین مجازی ) را به کاربران ارائه کند تا بتوانند آسانتر برنامه ریزی کرده و درگیر پیچیدگی های سخت افزاری سیستم نشود . بنابراین وظایف سیستم عامل شامل موارد زیر می باشد:

1. استفاده بهینه از منابع و جلوگیری از هدر رفتن آنها

2. تخصیص و آزاد سازی منابع

3. اداره صف ها و زمان بندی استفاده از منابع

4. حسابداری ( Accounting )

5. ایجاد امنیت یا ( Security )

6. ایجاد و حذف و اداره فرایندها

7. ایجاد مکانیزم های ارتباط بین فرایند ها و هنگام سازی آنها

8. مدیریت فایل ها و پوشه ها ( File Manager )

9. مدیریت حافظه های اصلی و جانبی

10. برقراری امکان دسترسی چندتایی و اجرای روند فرایندها ( Concurrent )

11. به اشتراک گذاری منابع )Resource Sharing )

12. تعیین راه کارهایی برای اداره بن بست ها

13. جلوگیری از شرایط رقابتی یا Race Condition و تداخل یا درهم قفل شدن فرایندها

14. جلوگیری از گرسنگی

انواع سیستم عامل ها :

امروزه سیستم عامل هایی که بیشتر در کامپیوترهای شخصی نصب شده اند دارای قابلیت های استفاده از تک پردازنده ای و چند پردازه ای می باشند. به عنوان مثال چندین سیستم عامل معروف را به شما می کنیم:

1.UNIX

2.LINUX

3.XP

4.DOS

5.VISTA

انواع سیستم عامل پردازشی :

1.سیستم عامل تک پردازنده ایی :

این نوع سیستم عامل بر روی یک پردازنده اجرا می شود.

2. سیستم عامل شبکه ایی :

این نوع سیستم عامل از کنترل کننده های وسط شبکه ایی و نرم افزارهای سطح پایین بعنوان گرداننده استفاده می کنند و برنامه هایی برای ورود به سیستم های 2002 و دسترسی به فایل ها از راه دور در آنها به کار گرفته شده است.

3.سیستم عامل های توزیع شده :

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

4.سیستم های بلادرنگ :

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

اهداف سیستم عامل :

به طور کلی سه عدد در سیستم عامل پایه وجود دارد که شامل :

1.سهولت :که در آن استفاده از کامپیوتر ساده شود.

2. کارآمدی استفاده کارآمد و موثر از منابع

3. قابلیت رشد که سبب توسعه و آزمایش سیستم می شود.

برنامه های سودمند:

خصوصیات این برنامه ها شامل :

1.مجموعه ایی از برنامه های سیستمی هستند.

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

هسته سیستم عامل :

هسته سیستم عامل دارای خصوصیات زیر می باشد:

1.بخشی است که در حافظه اولی قرار دارد

2. بیشترین دفعات استفاده را دارد.

3. تخصیص حافظه مشترکین توسط سیستم عامل و سخت افزاری مدیریت حافظه در پردازنده کنترل می شود.

واحد مدیریت حافظه MMU :Memory Management Unit

4. در مورد زمان استفاده I/O تصمیم می گیرد.

5. میزان تخصیص پردازنده به یک کار را مشخص می کند.

دلایل تغییر جدید سخت افزاری:

1.پردازش ردیفی       2. سیستم های دسته ایی ساده Batch3. سیستم های چند برنامه ایی دسته ایی

4. سیستم های اشتراک زمانی Times Sharing

پردازش ردیفی :

این نوع پردازش دارای خصوصیات زیر می باشد:

1.به علت دسترسی به کامپیوتربه صورت ردیفی این نام را دارد.

2. کاربر با سخت افزار در ارتباط بود.

3. سیستم عامل موجود نداشت.

4. به زبان ماشین و به وسیله دستگاههای ورودی بارگذاری می شد.

5. خروجی در چاپگر ظاهر می شد.

سیستم های دسته ایی :

این نوع سیستم ها دارای خصوصیات زیر می باشند :

1.کاربر کار را توسط نوار Tape به مقصد کامپیوتر تحویل می دهد.

2.کاربر دسترسی مستقیم به ماشین ندارد.

3.اولین سیستم عامل دسته ایی در سال 1950 به وسیله جنرال موتور برای استفاده IBM 701 بوجود آمد.

4.این پردازش ها توسط نرم افزار ناظر اجرا می شد.

ناظر :

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

مزایای سیستم عامل های دسته ایی :

1.حفاظت از حافظه اصلی

2.زمان سنج : جلوگیری از انحصار سیستم توسط یک کاربر

3.دستورالعمل های متمایز

4. وقفه ها

سیستم های اشتراک زمانی:

خصوصیات این نوع سیستم ها به صورت زیر می باشد:

1.از چند برنامگی برای رسیدن به حالت مهاوره ایی استفاده می کنند.

2. پردازنده یا پروسسور بین کاربران به اشتراک گذاشته می شود

3. داشتن کاربران متعددی که از طریق پایانه های خود به طور هم زمان از سیستم عامل استفاده می کنند

4. اگر N کاربر وجود داشته باشد به هر کاربر یک N از زمان مفید پردازنده استفاده می کنند.

( Time Sharing ):

به این معنی است که یک عدد CPU وجود دارد و چند کاربر از آن استفاده می کنند که فقط دارای مانیتور و صفحه کلید دارند و زمان بین کاربران تقسیم می شود، مثلاً اگر 4 کاربر وجود داشته باشد زمان بین آنها یک چهارم می باشد.

جدول :

 

دسته ای Batch

Time Sharing

اشتراک زمانی

هدف اصلی

حداکثر استفاده از پردازنده

حداقل زمان پاسخ

منبع دستورات به سیستم عامل

دستورالعمل های زبان کنترل یا JCL که همراه کار ارایه می شود

فرمان هایی که از پایانه وارد می شودTerminal

 

تقسیم بندی سیستم ها:

از لحاظ ارتباط با لوازم جانبی به موراد زیر تقسیم می شود:

1.سیستم های Online با ارتباط مستقیم :

در این سیستم ها پردازنده مستقیماً با دستگاههای ورودی خروجی در ارتباط است و به دلیل کند بودن این دستگاهها کارایی پردازنده به مقدار قابل توجهی کاهش می یابد

Line Printer

 

CPU

 

Card Reader

 

 

 

 

2.سیستم های Offline یا غیر مستقیم :

در این سیستم ها پردازنده بطور مستقیم با وسایل جانبی در ارتباط نیست، لذا عمل خواندن ورودی توسط کارت خوان های مستقل از سیستم اصلی انجام می شود و خروجی آن به حافظه جانبی مانند دیسک های مغناطیسی که سریع تر هستند منتقل شده و پس از عمل پردازش توسط CPU خروجی حاصل نیز بر روی دیسک مغناطیسی ذخیره شده و در نهایت به چاپگر ارسال می گردد. در چنین حالتی امکان هم پوشانی عملیاتI/O و کارپردازنده وجود دارد، با وسایل جانبی مستقیماً در ارتباط نیست.

Card Reader → Disk → CPU → Disk → Printer                                 

Buffering:

ناحیه ایی از حافظه است که جهت ایجاد هماهنگی بین وسایل O/ I ایجاد کند واز پردازنده استفاده می شود.

Buffering اجازه هم پوشانی O/I یک کار و پردازش هم کار را فراهم می سازد.

تعریف spoling :

یک رسانه ای ذخیره سازی سریع مانند دیسک جهت عملیات O/ I استفاده می کند، بطوری که اطلاعات از وسایل ورودی بر روی دیسک ذخیره شده و CPU که با دیسک در ارتباط است اطلاعات را به وسایل خروجی مانند چاپگر از طریق دیسک ارسال می نماید.

فرق بین  BufferingوSpoling در چیست:

Bufferingامکان همزمانی پردازش O/ I یک کار به کمک حافظه اصلی یا Ram یا   Min Memoryانجام می دهد، در حالی که  Spoling امکان همزمانی پردازش و O/ I چند کار را به کمک حافظه جانبی مانند دیسک مغناطیسی انجام می دهد.

وقفه ها:

تشخیص اتمام انتقال داده ها :

عمل تشخیص اتمام داده ها به روش صورت می گیرد :

1.روش Polling یا سرکش :

در این روش هر دستگاه دارای یک ثبات کنترلی Register که   cpu با بررسی آن می تواند متوجه شود که آیا انتقال آن دستگاه تمام شده است یا خیر و cpu بایستی در بازه های زمانی این ثبات را برقرار کند.

پیاده سازی این روش ساده بوده و به امکانات سخت افزاری خاصی نیاز ندارد، ولی سرعت آن پایین است این روش به انتظار مشغول یا         Busy Welting مشهور است.

2. روش Inter rapt یا وقفه :

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

انواع وقفه ها :

1.      وقفه برنامه یا Program Check:

 به دلیل اجرای بعضی از دستورات رخ می دهد مانند سرریزی محاسباتی Over Flow و تقسیم بر صفر و رجوع به محدوده مجاز کاربر به این نوع وقفه Trap یا تله گفته می شود.

2.      وقفه زمانسنج یا تایمر Timer :

این وقفه به سیستم عامل اجازه می دهد که برخی از زمان را به صورت مرتب در پریودهای زمانی خاصی انجام دهد مانند: تنظیم ساعت ، چک کردن سخت افزار

3.      وقفه I / O :

این نوع وقفه ها به وسیله کنترل کننده های دستگاههای I / Oتولید می شوند و تا کامل شدن طبیعی یک عمل یا بروز خطا در انجام عمل مربوطه داده نمی شد.

4.      وقفه های نقص سخت افزار Machine Check :

در این وقفه ها مانند وقفه ای که بر اثر بیت توازن یا Parity حافظه رخ می دهد یا وقفه نقص برق

5.      وقفه SVC یا Super viser call :

در واقع یک تقاضا از طرف برنامه کاربر جهت دریافت سرویس ویژه ایی از سیستم عامل است.

6.      وقفه Reset :

در این نوع وقفه که با فشار دادن دکمه Reset انجام می شود.

وقفه ها در تقسیم بندی کلی به چند دسته تقسیم می شوند:

1.      وقفه  داخلی یا Trop:

در این نوع وقفه که بر اثر اجرای دستورات خود برنامه به صورت داخلی در Cpu رخ می دهد.

2.      وقفه خارجی:

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

3.      وقفه های نرم افزاری SVC :

در این نوع وقفه ها که بر اثر فراخوانی توابع سیستمی توسط برنامه رخ می دهد.

نکته 1:با اجرای مجدد داخلی وقفه Trap به همان صورت قبلی دوباره رخ می دهند ولی وقفه های خارجی مستقل از دستورات برنامه و تا هنگام یا برنامه هستند.

نکته 2:اگر چند منبع همزمان تقاضاهایشان را به Cpu اعلام کنند، آنگاه Cpu بایستی با روش های سرکشی یا Polly و یا روش های اولویت دار Priority منبع وقفه دهنده را تشخیص دهد.

نکته 3: برای اینکه چند برنامگی کارهای I/O Limited و Cpu Limited موثر باشد وجود مکانیزم وقفه لازم و ضروری است.

نکته 4: مکانیزم سرویس دهی به وقفه ها در کامپیوترهای مختلف متفاوت است.

نکته 5: روتین های وقفه باید سریع باشند لذا معمولاً به زبان ماشین و بصورت بهینه نوشته می شوند.

PSW ( Program Status Word ) :

قبل از اینکه سیستم عامل کنترل را به روال وقفه گیر بفرستد وضعیت پردازش جاری را در محلی حفظ می کند تا بعداً بتواند آنرا ادامه دهد که به این عملیات Context Switeching یا تعویض متن گویند و برای عملیات تعویض متن از عبارتهای داخلی PSW استفاده می شود.

ماشین های IBM :

در این نوع ماشین ها سه نوع PSW استفاده می شود : 1. PSW جاری   2.PSW جدید   3.PSW قدیم

1.PSW جاری :در این نوع شامل آدرس دستور بعدی است که باید اجراء گردد.

2. PSWجدید :در این نوع که شامل آدرس روتین های وقفه است که گاهی اوقات به آن بردار وقفه نیز گفته می شود.

دستورات سیستم عامل به دو دسته تقسیم می شوند:

1.سیستم های یکپارچه ( Monolithic ) :

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

نکته: اکثر cpu ها دارای دو مدکاری هستند: 1. مد هسته یا Kernel Mode که مخصوص سیستم عامل است و در آن تمامی دستور العمل ها مجاز می باشد.

2. مدکاربرد یا User Mode که مخصوص برنامه های کاربران می باشد و دستورات I/O و دستور العمل های دیگر مجاز نمی باشد.

2.سیستم های لایه ایی :

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

مزیت سیستم های لایه ایی :

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

مشکل سیستم های لایه ایی :

مشکل این روش عملاً تعریف لایه های مختلف است و هر لایه مقداری بالا سری یا سر بار ( Over Head ) به سیستم اضافه می کند و درنتیجه فراخوانی سیستمی نسبت به سیستم غیر لایه ایی بیشتر طول می کشد.

3.ماشین مجازی :

سیستم عامل Vm که بر روی سیستم IBM بهترین مثال از مفهوم کاشین مجازی است و به قلب سیستم که به مانیتور ماشین مجازی ( Virtual Machine Monitor ) معروف استف بر روی یک سخت افزار اجراء شده و چند برنامگی را پدید می آورد ، در این سیستم ها به هر کاربر ماشین مجازی خودش داده می شود که او می تواند سیستم عامل یا بسته های نرم افزاری خودش را روی ماشین خودش اجراء کند.

CMS ( CanVerSational Monitor System )

یک سیستم عامل تک محاوره ایی است . مانیتور ماشین مجازی وظیفه چند برنامکی را برعهده دارد و لایه بالاتر وظیفه ایجاد واسط کاربر با سخت افزار را برعهده دارد.

برنامه کاربر 3

برنامه کاربر 2

برنامه کاربر1

CMS

CMS

CMS

مانیتور ماشین مجازی

سخت افزار

 

مزایا CMS :

1.هر ماشین مجازی از سایر ماشین ها کاملاً جداست ، بنابراین هیچ مشکل امنیتی وجود نخواهد داشت و برنامه های کاربران تداخلی در یکدیگر نخواهد داشت.

2. از آنجا که هر ماشین مجازی کاملً مشابه سخت افزار واقعی است هر یک از آنها می توانند سیستم عامل کاملاً مستقلی را اجراء کنند ، لذا می توان همزمان سیستم عامل های مختلفی را بر روی یک ماشین اجرائ کرد.

ایرادات CMS :

از ایرادات این روش آن است که تفاوتی بین CMS ها از نظر حجم کاری که انجام می دهند قائل نشده و به همه به یک نسبت مساوی سرویس داده می شود.

Terminal Server

Memory Server

File Server

--------------

کاربر 3

کاربر 2

کاربر 1

 

 

 

 

 

 

4.سیستم های مشتری- خدمتگذار ( Client – Server ): طراحی این سیستم عامل ها همواره با این ایده همراه بود تک کدها را به لایه های بالاتر منتقل کنند تا نهایتاً یک هسته کمینه پدید آورند.

 

 

مزایا روش Client – Server :

1.سیستم عامل به چندین بخش تقسیم شده که هر یک فقط یکی از وظایف سیستم عامل را انجام می دهند، بنابراین سیستم عامل را می توان ساده تر پیاده سازی کرد.

2. به علت اینکه اجرای کلیه پروسس های خدمت گذار در مدکاربر ( و نه در مد هسته ) پیاده سازی می شود. هیچ کدام از آنها خواهد شد و به ندرت موجب خراب شدن کل سیستم خواهد شد.

3. مزیت مهم دیگر استفاده از این روش در سیستم های توزیع شده است که در آن Client نیازی ندارد که بداند آیا در خواستش در ماشین اجرا شده است.

زمان بندی :

پردازش ( Process ) :

یک پردازش یا پردازنده برنامه ایی است در حال اجراء که علاوه بر خود برنامه شامل شمارنده برنامه Program Counter ، ریجستری CPU- Stack بخش های داده Data Segment می باشد.

یک برنامه به خودی خود یک پردازش نیست، یک برنامه در واقع الگوریتمی است که مانند محتویات یک فایل بر روی دیسک ذخیره شده است. بنابراین یک برنامه یک نهاد غیر فعال Passive است در حالی که یک پردازش یک نهاد فعال یا Active است که در حال اجرایی باشد. مشخصات پردازش ها در داخل جدول پردازش ها ذخیره می شود.

نکته : در سیستم عامل Unix پردازش توسط فراخوانی سیستمی Fork پدید می آیند این فراخوانی یک پردازش فرزند تولید می کند که نسخه ایی دقیقاً یکسان با پردازش پدر خواهد داشتف و بدیهی است که هر Process یک پدر دارد ( والد ) ولی می تواند صفر یا چندین فرزند داشته باشد هر پردازش دارای یک PID ( Process Identifier  ) که یک عدد منحصر به فرد است.

زمان بندی کار ( Job Schhedular( :

زمان بندی کار روالی است که یکی از کارهای موضع در جدول ISPT (Spool TablInput ) انتخاب کرده و آن را به حافظه می اورد. یک کار هنگامی به پردازه تبدیل می شود که تمامی صنایع مورد نیازش از جمله حافظه را در اختیار بگیرد ، کارها هنگامی در ( ISPT ) هستند ،اصطلاحاً Hold شده اند و هنگامی توسط زمان بند کار انتخاب می شوند. در حافظه قرار گرفته و اصطلاحاً به حالت Ready به آماده باش می روند.

انتخاب کارها توسط زمان بند به سه دسته تقسیم می شود:

1.Fifo : First In Firstout

2.SJF :Shortest  Job First

3.Mixed : ترکیبی

*حالات یک پردازه :

حالات یک پردازه در حالت کلی از نظر تننباوم به سه دسته تقسیم می شود:

1.حالت Ready ( آماده ):

در این حالت Ready پردازه تمام منابع مورد نیاز خود را به جزء CPU در اختیار دارد.

2.حالت Running) اجراء ):

در این حالت Job که در حالت Hold است در ISPT یا Disk قرار دارد و هنوز به پردازه تبدیل نشده است.

3.Blocked( توقف یا انتظار ):

در این حالت Blocked در حافظه اصلی است و منتظر بروز حادثه ایی می باشد.

Suspend Blocking :

این فرآیند در حالت حافظه ثانویه بوده و منتظر بروز حادثه ایی است که اگر تعداد فرآیندهای مسدود ( Wait ) شده در حافظه زیاد گردد ممکن است حافظه کم بیاید در این وضعیت سیستم عامل می تواند برخی از فرایندهای منتظر را از حافظه به دیسک ببرد و به این ترتیب حالت  مسدودمعلقیا  Suspend Blocking گویند.

SuspendReady :

فرآیندی در حافظه ثانویه بوده به محض Block لود شدن در حافظه اصلی آماده اجرا می باشد.

بلوک کنترل پردازش یا  PCB :

PCBیا (Process Control Block ) از دیدگاه سیستم عامل می توان گفت که یک پردازه یک سری ساختمان داده است  Data Structure ، بنابراین هر پردازه از دیدگاه سیستم عامل توسط یا بنام نشان داده می شود.

Pcb شامل اطلاعات زیادی در مورد پردازه ها است که شامل جاری پردازه است :Ready و Running

2. شماره شناسایی پردازش PID ( Process IdentiFier(

3. شمارنده PC (Process Counter  )

4. محل حفظ ثبات ها یا Regster ها ( dx, cx, bx , ax, ac,….  )

5. اطلاعات زمان بندی CPU مانند اولیویت پردازش

6. اطلاعات مدیریت حافظه مانند محل قرارگیری پردازش در حافظه و مسائل حفاظتی آن

7. اطلاعات وضعیتی I/O شامل لیستی از I/O است، تخصیص یافته به پردازه و لیست بازه پردازه و غیره .....

8. اطلاعات حسابرسی مانند میزان CPU مصرف شده

Context Switching :

وقتی که سیستم عامل CPU را به پردازش دیگری می برد با استفاده از PCB اطلاعات لازم جهت راه اندازی مجدد پردازش از قبل را لازم دارد تا آن را حفظ کند، که این به این عملیات تعویض متن Context Switchingاست.

تعویض متن توسط بخشی از سیستم عامل به نام Dispatcher انجام می گیرد.

عملیات تعویض متن الزاماً یک سربار اضافی یا Overhead را برای سیستم ایجاد کرده مقداری از وقت CPU را به هدر می دهد ولی این زمان آنقدر نیست که بر ضریب چند برنامگی غلبه کند.

معیارهای زمان بندی:

1.عدالت ( Fairness ) :

در این زمان بندی یعنی اطمینان از اینکه هر پردازه سهم عادلانه و منصفانه ایی از CPU را دارد.

2. کارایی ( Utilization- Efficiency ) :

یعنی CPU در تمام زمان ها حداقل امکان مشغول باشد.

3.زمان برگشت ( Turn Around Time ) :

به فاصله زمانی بین تحول بین تحول کار تا اتمام کار را زمان برگشت گویند.

4.گزدهی ( Throughput ) :

تعداد پردازش هایی که از واحد زمان تعیین می گردد.

5.زمان انتظار ( Waite Time ) :

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

6.زمان پاسخ  (Res Ponse time ):

به حداقل رساندن زمان پاسخ برای فرماله های محاوره ایی کاربر است.

الگوریتم های زمان بندی :

1.Fifo ( First Com First servise)

2.SJF ( Shortust Job First )

3.

این مطلب ادامه دارد


نویسنده : م . رحمتی - ساعت ۸:٠٧ ‎ق.ظ روز جمعه ۱۳۸٧/٩/٢٩
نظرات ()    |   لینک ثابت    |   تگ کامپیوتر


Powered By Persianblog.ir - Designed By Payam salami pargoo