لینک های برتر

      لینک های داغ

 
   
  




آموزش کامپيوتر :: آموزش ويندوز

موضوع: سيستم عامل

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

تمام کامپيوترها از سيستم عامل استفاده نمي نمايند. مثلا'' اجاق هاي مايکرويو که در آشپزخانه استفاده شده داراي نوع خاصي از کامپيوتر بوده که از سيستم عامل استفاده نمي نمايند. در اين نوع سيستم ها بدليل انجام عمليات محدود و ساده، نيازي به وجود سيستم عامل نخواهد بود. اطلاعات ورودي و خروجي با استفاده از دستگاههائي نظير صفحه کليد و نمايشگرهاي LCD ، در اختيار سيستم گذاشته مي گردند. ماهيت عمليات انجام شده در يک اجاق گاز مايکروويو بسيار محدود و مختصر است، بنابراين همواره يک برنامه در تمام حالات و اوقات اجراء خواهد شد.

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

سيستم عامل با ساده ترين تحليل و بررسي دو عمليات اساسي را در کامپيوتر انجام مي دهد :

- مديريت منابع نرم افزاري و سخت افزاري يک سِستم کامپيوتري را برعهده دارد. پردازنده ، حافظه، فضاي ذخيره سازي نمونه هائي از منابع اشاره شده مي باشند .

- روشي پايدار و يکسان براي دستيابي و استفاده از سخت افزار را بدو ن نياز از جزئيات عملکرد هر يک از سخت افزارهاي موجود را براي برنامه هاي کامپيوتري فراهم مي نمايد

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

وظيفه دوم يک سيستم عامل ارائه يک رابط ( اينترفيس ) يکسان براي ساير برنامه هاي کامپيوتري است . در اين حالت زمينه استفاده بيش از يک نوع کامپيوتر از سيستم عامل فراهم شده و در صورت بروز تغييرات در سخت افزار سيستم هاي کامپيوتري نگراني خاصي از جهت اجراي برنامه وجود نخواهد داشت، چراکه سيستم عامل بعنوان ميانجي بين برنامه هاي کامپيوتري و سخت افزار ايفاي وظيفه کرده و مسئوليت مديريت منابع سخت افزاري به وي سپرده شده است .برنامه نويسان کامپيوتر نيز با استفاده از نقش سيستم عامل بعنوان يک ميانجي براحتي برنامه هاي خود را طراحي و پياده سازي کرده و در رابطه با اجراي برنامه هاي نوشته شده بر روي ساير کامپيوترهاي مشابه نگراني نخواهند داشت . ( حتي اگر ميزان حافظه موجود در دو کامپيوتر مشابه نباشد ) . در صورتيکه سخت افزار يک کامپيوتر بهبود و ارتقاء يابد، سيستم عامل اين تضمين را ايجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حيات وسرويس دهي خود باشند. مسئوليت مديريت منابع سخت افزاري برعهده سيتم عامل خواهد بود نه برنامه هاي کامپيوتري، بنابراين در زمان ارتقاي سخت افزار يک کامپيوتر مسئوليت سيتستم عامل در اين راستا اولويت خواهد داشت . ويندوز 98 يکي از بهترين نمونه ها در اين زمينه است . سيستم عامل فوق بر روي سخت افزارهاي متعدد توليد شده توسط توليدکنندگان متفاوت اجراء مي گردد. ويندوز 98 قادر به مديريت و استفاده از هزاران نوع چاپگر ديسک و ساير تجهيزات جانبي است .

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

- سيستم عامل بلادرنگ (RTOS). از اين نوع سيستم هاي عامل براي کنترل ماشين آلات صنعتي ، تجهيزات علمي و سيستم هاي صنعتي استفاده مي گردد. يک سيستم عامل بلادرنگ داراي امکانات محدود در رابطه با بخش رابط کاربر و برنامه هاي کاربردي مختص کاربران مي باشند. يکي از بخش هاي مهم اين نوع سيستم هاي عامل ، مديريت منابع موجود کامپيوتري بگونه اي است که يک عمليات خاص در زماني که مي بايست ، اجراء خواهند شد.

- تک کاربره - تک کاره . همانگونه که از عنوان اين نوع سيستم هاي عامل مشخص است، آنها بگونه اي طراحي شده اند که قادر به مديريت کامپيوتر بصورتي باشند که يک کاربر در هر لحظه قادر به انجام يک کار باشد. سيستم عامل Palm OS براي کامپيوترهاي PDA نمونه اي مناسب از يک سيستم عامل مدرن تک کاربره و تک کاره است .

- تک کاربره - چندکاره . اکثر سيستم هاي عامل استفاده شده در کامپيوترهاي شخصي از اين نوع مي باشند. ويندوز 98 و MacOS نمونه هائي در اين زمينه بوده که امکان اجراي چندين برنامه بطور همزمان را براي يک کاربر فراهم مي نمايند. مثلا'' يک کاربر ويندوز 98 قادر به تايپ يک نامه با استفاده از يک واژه پرداز بوده و در همان زمان اقدام به دريافت يک فايل از اينترنت نموده و در همان وضعيت محتويات نامه الکترونيکي خود را براي چاپ بر روي چاپگر ارسال کرده باشد.

- چندکاربره . يک سيستم عامل چند کاربره ، امکان استفاده همزمان چندين کاربر از منابع موجود کامپيوتر را فراهم مي آورند. منابع مورد نياز هر يک از کاربران مي بايست توسط سيستم عامل بدرستي مديريت تا در صورت بروز اشکال در منابع تخصيص يافته به يک کاربر، بر روند استفاده ساير کاربران از منابع مورد نظر اختلالي ايجاد نگردد. يونيکس، VMS و سيستم هاي عامل کامپيوترهاي بزرگ نظير MVS نمونه هائي از سيستم هاي عامل چندکاربره مي باشند.

در اينجا لازم است که به تفاوت هاي موجود سيستم هاي عامل '' چند کاربر '' و '' تک کاربر'' در رابطه با امکانات شبکه اي اشاره گردد. ويندوز 2000 و ناول قادر به حمايت از صدها و هزاران کاربر شبکه مي باشند اين نوع سيستم هاي عامل بعنوان سيستم عامل چند کاربره واقعي در نظر گرفته نمي شوند.

در ادامه با توجه به شناخت مناسب بوجود آمده در دررابطه با انواع سيستم هاي عامل به عمليات و وظايف سيستم عامل اشاره مي گردد.

وظايف سيستم عامل

پس از روشن نمودن کامپيوتر، لولين برنامه اي که اجراء مي گردد ، مجموعه دستوراتي مي باشند که در حافظه ROM ذخيره و مسئول بررسي صحت عملکرد امکانات سخت افزاري موجود مي باشند. برنامه فوق (POST) ، پردازنده ، حافظه و ساير عناصر سخت افزاري را بررسي خواهد کرد . پس از بررسي موفقيت آميز برنامه POST ، در ادامه درايوهاي ( هارد ، فلاپي ) سيستم فعال خواهند شد. در اکثر کامپيوترها ، پس از فعال شدن هارد ديسک ، اولين بخش سيستم عامل با نام Bootstrap Loader فعال خواهد شد. برنامه فوق صرفا'' داراي يک وظيفه اساسي است : انتقال ( استقرار ) سيستم عامل در حافظه اصلي و امکان اجراي آن . برنامه فوق عمليات متفاوتي را بمنظور استفرار سيستم عامل در حافظه انجام خواهد داد.

سيستم عامل داراي وظايف زير است :

مديريت پردازنده

مديريت حافظه

مديريت دستگاهها ( ورودي و خروجي )

مديريت حافظه جانبي

اينترفيس برنامه هاي کاربردي

رابط کاربر

وظايف شش گانه فوق ، هسته عمليات در اکثر سيستم هاي عامل است . در ادامه به تشريح وظايف فوق اشاره مي گردد :

مديريت پردازنده

مديريت پردازنده دو وظيفه مهم اوليه زير را دارد :

ايجاد اطمينان که هر پردازه و يا برنامه به ميزان مورد نياز پردازنده را براي تحقق عمليات خود ، اختيار خواهد کرد.

استفاده از بيشترين سيکل هاي پردازنده براي انجام عمليات

ساده ترين واحد نرم افزاري که سيستم عامل بمنظور زمانبندي پردازنده با آن درگير خواهد شد ، يک پردازه و يا يک Thread خواهد بود. موقتا'' مي توان يک پردازه را مشابه يک برنامه در نظر گرفت ، در چنين حالتي مفهوم فوق ( پردازه ) ، بيانگر يک تصوير واقعي از نحوه پردازش هاي مرتبط با سيستم عامل و سخت افزار نخواهد بود. برنامه هاي کامپيوتري ( نظير واژه پردازها ، بازيهاي کامپيوتري و ...) در حقيقت خود يک پردازه مي باشند ، ولي برنامه هاي فوق ممکن است از خدمات چندين پردازه ديگر استفاده نمايند. مثلا'' ممکن است يک برنامه از پردازه اي بمنظور برقراري ارتباط با ساير دستگاههاي موجود در کامپيوتر استفاده نمايد. پردازه هاي فراوان ديگري نيز وجود دارد که با توجه به ماهيت عمليات مربوطه ، بدون نياز به محرک خارجي ( نظير يک برنامه ) فعاليت هاي خود را انجام مي دهند. يک پردازه ، نرم افزاري است که عمليات خاص و کنترل شده اي را انجام مي دهد. کنترل يک پردازه ممکن است توسط کاربر ، ساير برنامه هاي کاربردي و يا سيستم عامل صورت پذيرد.

سيستم عامل با کنترل و زمانبندي مناسب پردازه ها زمينه استفاده از پردازنده را براي آنان ، فراهم مي نمايد. در سيستم هاي '' تک - کاره '' ، سيستم زمانبندي بسيار روشن و مشخص است . در چنين مواردي، سيستم عامل امکان اجراي برنامه را فراهم و صرفا'' در زمانيکه کاربر اطلاعاتي را وارد و يا سيستم با وقفه اي برخورد نمايد ، روند اجراء متوقف خواهد شد. وقفه ، سيگنال هاي خاص ارسالي توسط نرم افزار و يا سخت افزار براي پردازنده مي باشند. در چنين مواردي منابع صادر کننده وقفه درخواست برقراري يک ارتباط زنده با پردازنده براي اخذ سرويس و يا ساير مسائل بوجود آمده ، را مي نمايند. در برخي حالات سيستم عامل پردازه ها را با يک اولويت خاص زمانبندي مي نمايد . در چنين حالتي هر يک از پردازه ها با توجه به اولويت نسبت داده شده به آنان ، قادر به استفاده از زمان پردازنده خواهند بود. در اينچنين موارد ، در صورت بروز وقفه ، پردازنده آنها را ناديده گرفته و تا زمان عدم تکميل عمليات مورد نظر توسط پردازنده ، فرصت پرداختن به وقفه ها وجود نخواهد داشت . بديهي است با توجه به نحوه برخورد پردازنده ( عدم توجه به وقفه ها ) ، در سريعترين زمان ممکن عمليات و فعاليت جاري پردازنده به اتمام خواهد رسيد. برخي از وقفه ها با توجه به اهميت خود ( نظير بروز اشکال در حافظه و يا ساير موارد مشابه ) ، قابل اغماص توسط پردازنده نبوده و مي بايست صرفنظر از نوع و اهميت فعاليت جاري ، سريعا'' به وقفه ارسالي پاسخ مناسب را ارائه گردد.

پردازنده ، با توجه به سياست هاي اعمال شده سيستم عامل و بر اساس يک الگوريتم خاص ، در اختيار پردازه هاي متفاوت قرار خواهد گرفت . در چنين مواردي پردازنده مشغول بوده و براي اجراء ، پردازه اي را در اختيار دارد. در زمانيکه پردازنده درگير يک پردازه است ، ممکن است وقفه هائي از منابع متفاوت نرم افزاري و يا سخت افزاري محقق گردد. در چنين وضعيتي با توجه به اهميت و جايگاه يک وقفه ، پردازنده برخي از آنها را ناديده گرفته و همچنان به فعاليت جاري خود ادامه داده و در برخي موارد با توجه به اهميت وقفه ، فعاليت جاري متوقف و سرويس دهي به وقفه آغاز خواهد شد.

در سيستم هاي عامل '' تک - کاره '' ، وجود وقفه ها و نحوه مديريت آنها در روند اجراي پردازه ها تاثير و پيچيدگي هاي خاص خود را از بعد مديريتي بدنبال خواهد داشت . در سيستم هاي عامل |''چند - کاره '' عمليات بمراتب پيچيده تر خواهد بود. در چنين مواردي مي بايست اين اعتقاد بوجود آيد که چندين فعاليت بطور همزمان در حال انجام است . عملا'' پردازنده در هر لحظه قادر به انجام يک فعاليت است و بديهي است رسيدن به مرز اعتقادي فوق ( چندين فعاليت بطور همزمان ) مستلزم يک مديريت قوي و طي مراحل پيچيده اي خواهد بود. در چنين حالتي لازم است که پردازنده در مدت زمان يک ثانيه هزاران مرتبه از يک پردازه به پردازه ه ديگر سوئيچ تا امکان استفاده چندين پردازه از پردازنده را فراهم نمايد . در ادامه نحوه انجام عمليات فوق ، تشريح مي گردد :

يک پردازه بخشي از حافظه RAM را اشغال خواهد کرد

پس از استفرار بيش از يک پردازه در حافظه ، پردازنده بر اساس يک زمانبندي خاص ، فرصت اجراء را به يکي از پردازه ها خواهد داد.

پردازنده ، بر اساس تعداد سيکل هاي خاصي پردازه را اجراء خواهد کرد .

پس ازاتمام تعداد سيکل هاي مربوطه ، پردازنده وضعيت پردازه ( مقاير ريجسترها و ...) را ذخيره و به پردازه اتمام زمان مربوطه را اعلام مي نمايد.

پردازنده در ادامه اطلاعات ذخيره شده در رابطه با پردازه ديگر را فعال ( ريجسترها و ...) و زمينه اجراي پردازه دوم فراهم مي گردد.

پس ازاتمام تعداد سيکل هاي مربوطه ، پردازنده وضعيت پردازه ( مقاير ريجسترها و ...) را ذخيره و به پردازه اتمام زمان مربوطه را اعلام و مجددا'' پردازه اول جهت اجراء فعال خواهد گرديد.

تمام اطلاعات مورد نياز بمنظور مديريت يک پردازه در ساختمان داده اي خاص با نام PCB)Process Control Block) ، نگهداري مي گردد. پردازنده در زمان سوئيچ بين پردازه ها ، از آخرين وضعيت هر پردازه با استفاده از اطلاعات ذخيره شده در PCB آگاهي پيدا کرده و در ادامه زمينه اجراي پردازه مورد نظر بر اساس تعداد سيکل هاي در نظر گرفته شده فراهم خواهد شد. براي هر پردازه يک PCB ايجاد و اطلاعات زير در آن ذخيره خواهد گرديد :

يک مشخصه عددي (ID) که نمايانگر پردازه خواهد بود .

اشاره گري که نشاندهنده آخرين محل اجراي پردازه است

محتويات ريجستر ها

وضعيت سوئيچ ها و متغيرهاي مربوطه

اشاره گره هائي که حد بالا و پايين حافظه مورد نياز پردازه را مشخص خواهد کرد.

اولويت پردازه

وضعيت دستگاههاي ورودي و خروجي مورد نياز پردازه

هر زمان که اطلاعات مربوط به پردازه اي تغيير يابد ، ( پردازه از حالت ''آماده '' تبديل به حالت ''اجراء '' و يا از حالت '' اجراء '' به حالت ''انتظار'' و يا ''آماده '' سوئيچ نمايد ) اطلاعات ذخيره شده در PCB استفاده و بهنگام خواهند شد.

عمليات جايگزيني پردازها، بدون نظارت و ارتباط مستقيم کاربر انجام و هر پردازه به ميزان کافي از زمان پردازنده براي اتمام عمليات خود استفاده خواهد کرد. در اين راستا ممکن است ، کاربري قصد اجراي تعداد بسيار زيادي از پردازه ها را بسورت همزمان داشته باشد. در چنين مواردي است ، پردازنده خود نيازمند استفاده از چندين سيکل زماني براي ذخيره و بازيابي اطلاعات مربوط به هر يک از پردازه ها خواهد بود .در صورتيکه سيستم عامل با دقت طراحي نشده باشد و يا پردازه هاي زيادي فعاليت خود را آغاز کرده باشند ، مدت زمان زيادي از پردازنده صرف انجام عمليات سوئيچينگ بين پردازها شده و عملا'' در روند اجراي پردازها اختلال ايجاد مي گردد. وضعيت بوجود آمده فوق را Thrashing مي گويند. در چنين مواردي کاربر مي بايست نسبت به غيرفعال نمودن برخي از پردازه ها اقدام تا سيستم مجددا'' در وضعيت طبيعي قرار گيرد.

يکي از روش هائي که طراحان سيستم عامل از آن استفاده تا امکان ( شانس) تحقق Thrashing را کاهش دهند ، کاهش نياز به پردازه هاي جديد براي انجام فعاليت هاي متفاوت است . برخي از سيستم هاي عامل ازيک '' پردازه -lite '' با نام Thread استفاده مي نمايند. Thread از لحاظ کارآئي همانند يک پردازه معمولي رفتار نموده ولي نيازمند عمليات متفاوت ورودي و خروجي و يا ايجاد ساختمان داده PCB مشابه يک پردازه عادي نخواهد بود. يک پردازه ممکن است باعث اجراي چندين Threads و يا ساير پردازه هاي ديگر گردد. يک Thread نمي تواند باعث اجراي يک پردازه گردد.

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

مديريت حافظه و فضاي ذخيره سازي

سيستم عامل در رابطه با مديريت حافظه دو عمليات اساسي را انجام خواهد داد :

هر پردازه بمنظور اجراء مي بايست داراي حافظه مورد نياز و اختصاصي خود باشد .

از انواع متفاوتي حافظه در سيستم استفاده تا هر پردازه قادر به اجراء با بالاترين سطح کارآئي باشد.

سيسم هاي عامل در ابتدا مي بايست محدوده هاي حافظه مورد نياز هر نوع نرم افزار و برنامه هاي خاص را فراهم نمايند. مثلا'' فرض کنيد سيستمي داراي يک مگابايت حافظه اصلي باشد . سيستم عامل کامپيوتر فرضي ، نيازمند 300 کيلو بايت حافظه است . سيستم عامل در بخش انتهائي حافظه مستقر و بهمراه خود درايورهاي مورد نياز بمنظور کنترل سخت افزار را نيز مستقر خواهد کرد. درايورهاي مورد نظر به 200 کيلو بايت حافظه نياز خواهند داشت . بنابراين پس از استقرار سيستم عامل بطور کامل در حافظه ، 500 کيلو بايت حافظه باقيمانده و از آن براي پردازش برنامه هاي کاربردي استفاده خواهد شد. زمانيکه برنامه هاي کاربردي در حافظه مستقر مي گردند ، سازماندهي آنها در حافظ بر اساس بلاک هائي خواهد بود که اندازه آنها توسط سيستم عامل مشخص خواهد شد. در صورتيکه اندازه هر بلاک 2 کيلوبايت باشد ، هر يک از برنامه هاي کاربردي که در حافظه مستقر مي گردنند ، تعداد زيادي از بلاک هاي فوق را (مضربي از دو خواهد بود) ، بخود اختصاص خواهند داد. برنامه ها در بلاک هائي با طول ثابت مستقر مي گردند. هر بلاک داراي محدوده هاي خاص خود بوده که توسط کلمات چهار و يا هشت بايت ايجاد خواهند شد. بلاک ها و محدو ده هاي فوق اين اطمينان را بوجود خواهند آورد که برنامه ها در محدوده هاي متداخل مستقر نخواهند شد. پس از پر شدن فضاي 500 کيلوبايت اختصاصي براي برنامه هاي کاربردي ، وضعيت سيستم به چه صورت تبديل خواهد گرديد؟

در اغلب کامپيوترها ، مي توان ظرفيت حافظه را ارتقاء و افزايش داد. مثلا'' مي توان ميزان حافظه RAM موجود را از يک مگابايت به دو مگابايت ارتقاء داد. روش فوق يک راهکار فيزيکي براي افزايش حافظه بوده که در برخي موارد داراي چالش هاي خاص خود مي باشد. در اين زمينه مي بايست راهکارهاي ديگر نيز مورد بررسي قرار گيرند. اغلب اطلاعات ذخيره شده توسط برنامه ها در حافظه ، در تمام لحظات مورد نياز نخواهد نبود. پردازنده در هر لحظه قادر به دستيابي به يک محل خاص از حافظه است . بنابراين اکثر حجم حافظه در اغلب اوقات غير فابل استفاده است . از طرف ديگر با توجه به اينکه فضاي ذخيره سازي حافظه ها ي جانبي نظير ديسک ها بمراتب ارزانتر نسبت به حافظه اصلي است ، مي توان با استفاده از مکانيزمهائي اطلاعات موجود در حافظه اصلي را خارج و آنها را موقتا'' بر روي هارد ديسک ذخيره نمود. بدين ترتيب فضاي حافظه اصلي آزاد و در زمانيکه به اطلاعات ذخيره شده بر روي هارد ديسک نياز باشد ، مجددا'' آنها را در حافظه مستقر کرد. روش فوق '' مديريت حافظه مجازي '' ناميده مي شود.

حافطه هاي ذخيره سازي ديسکي ، يکي از انواع متفاوت حافظه موجود بوده که مي بايست توسط سيستم عامل مديريت گردد. حافطه هاي با سرعت بالاي Cache ، حافظه اصلي و حافظه هاي جانبي نمونه هاي ديگر از حافظه بوده که توسط سيستم عامل مديريت گردند.

مديريت دستگاهها

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

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

يکي از دلايلي که درايورها از سيستم عامل تفکيک شده اند ، ضرورت افزودن عمليات و خواسته اي حديد براي درايورها است . در چنين حالتي ضرورتي بر اصلاح و يا تغيير سيستم عامل نبوده و با اعمال تغييرات لازم در درايورها مي توان همچنان از قابليت هاي آنها در کنار سيستم عامل موجود استفاده کرد.

مديريت عمليات ورودي و خروجي در کامپيوتر مستلزم استفاده و مديريت '' صف ها '' و '' بافرها '' است . بافر ، مکان هاي خاصي براي ذخيره سازي اطلاعات بصورت مجموعه اي از بيت ها ي ارسالي توسط دستگاهها ( نظير صفحه کليد و يا يک پورت سريال ) و نگهداري اطلاعات فوق و ارسال آنها براي پردازنده در زمان مورد نظر و خواسته شده است . عمليات فوق در موارديکه چندين پردازنده در وضعيت اجراء بوده و زمان پردازنده را بخود اختصاص داده اند ، بسيار حائز اهميت است . سيستم عامل با استفاده از يک بافر قادر به دريافت اطلاعات ارسالي توسط دستگاه مورد نظر است . ارسال اطلاعات ذخيره شده براي پردازنده پس از غير فعال شدن پردازه مربوطه ، متوقف خواهد شد. در صورتيکه مجددا'' پردازه به اطلاعات ورودي نياز داشته باشد ، دستگاه فعال و سيستم عامل دستوراتي را صادر تا بافر اطلاعات مربوطه را ارسال دارد. فرآيند فوق اين امکان را به صفحه کليد يا مودم خواهد داد تا با سرعت مناسب خدمات خود را همچنان ادامه دهند ( ولواينکه پردازنده در آن زمان خاص مشغول باشد).

مديريت تمام منابع موجود در يک سيستم کامپيوتري ، يکي از مهمترين و گسترده ترين وظايف يک سيستم عامل است .

ارتباط سيستم با دنياي خارج

اينترفيس برنامه ها

سيستم عامل در رابطه با اجراي برنامه هاي کامپيوتري خدمات فراواني را ارائه مي نمايد. برنامه نويسان و پياده کنندگان نرم افزار مي توانند از امکانات فراهم شده توسط سيستم هاي عامل استفاده و بدون اينکه نگران و يا درگير جزئيات عمليات در سيستم باشند ، از خدمات مربوطه استفاده نمايند. برنامه نويسان با استفاده از API)Application program interface) ، قادر به استفاده از خدمات ارائه شده توسط سيستم هاي عامل در رابطه با طراحي و پياده سازي نرم افزار مي باشند. در ادامه بمنظور بررسي جايگاه API به بررسي مثالي پرداخته خواهد شد که هدف ايجاد يک فايل بر روي هارد ديسک براي ذخيره سازي اطلاعات است .

برنامه نويسي ، برنامه اي را نوشته که بکمک آن قادر به ذخيره سازي داده هاي ارسالي توسط يک دستگاه کنترل علمي است . سيستم عامل يک تابع API با نام MakeFile را بمنظور ايجاد فايل در اختيار برنامه نويس قرار مي دهد. برنامه نويس در زمان نوشتن برنامه از دستوري مشابه زير استفاده مي نمايد :

MakeFile [1,%Name,2]

دستورالعمل فوق به سيستم عامل خواهد گفت که فايلي را ايجاد که شيوه دستيابي به داده هاي آن بصورت تصادفي ( عدد يک بعنوان اولين پارامتر ) ، داراي نام مشخص شده توسط کاربر (Name%) و داراي طولي متغير است . ( عدد 2 ، بعنوان سومين پارامتر) سيستم عامل دستور فوق را بصورت زير انجام خواهد داد :

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

? با توجه به اطلاعات ارسالي ، سيستم عامل يک entry در سيستم فايل مربوطه ايجاد و ابتدا و انتهاي فايل ، نام فايل ، نوع فايل ، تاريخ و زمان ايجاد فايل و ساير اطلاعات ضروري را ذخيره خواهد کرد.

? سيستم عامل اطلاعاتي را در ابتداي فايل بمنظور مشخص کردن فايل ، تنظيمات مربوط به شيوه دستيابي به فايل و ساير اطلاعات مورد نياز را خواهد نوشت .

در چنين حالتي برنامه نويس از تابع فوق براي ايجاد و ذخيره سازي فايل استفاده نموده و ضرورتي بر نوشتن کدها ، نوع داده ها و کدهاي پاسخ براي هر نوع هارد ديسک نخواهد بود. سيستم عامل از امکانات درايورها استفاده و درايورها مسئول برقراري ارتباط با منابع سخت افزاري خواهند بود. در چنين حالتي برنامه نويس بسادگي از تابع مورد نظر استفاده و ادامه عمليات توسط سيستم عامل انجام خواهد شد.

امکانات ارائه شده توسط سيستم هاي عامل در قالب مجموعه اي از توابع و امکانات API يکي از موارد بسيار مهم استفاده از سيستم عامل از ديدگاه طراحان و پياده کنندگان نرم افزار است .

اينترفيس کاربر

API يک روش يکسان براي برنامه هاي کامپيوتري بمنظور استفاده از منابع موجود در يک سيستم کامپيوتري را فراهم مي نمايد. بخش رابط کاربر (UI) ، يک ساختار مناسب ارتباطي بين کاربر و کامپيوتر را فراهم مي آورد. اکثر سيستم هاي عامل از رابط هاي گرافيکي در اين زمينه استفاده مي نمايند. بخش رابط کاربر هر سيستم عامل شامل يک و يا مجموعه اي از برنامه هاي کامپيوتري است که بصورت يک لايه در بالاترين سطح يک سيستم عامل و در ارتباط با کاربر مستقر مي گردند. برخي از سيستم هاي عامل از رابط هاي گرافيکي ( نظير ويندوز ) و برخي ديگر از رابط هاي مبتني بر متن ( نظير سيستم عامل DOS ) استفاده مي نمايند.


مطلب بعدی   ::  مطلب قبلی



بهترین فروشگاه آنلاین
ابتدا محصول خود را انتخاب و خرید کنید بعد از تحویل مبلغ را پرداخت کنید


فروشگاه آنلاین - اول بخر بعدا پرداخت کن

- لينک هاي برگزيده -
  ترفندهاي جستجو در گوگل قسمت سوم
  فرايند ازدواج و مراحل آن
  فيلم بدون خشونت
  حسام الدين سراج » وداع 2 » شوخ شيرين
  کهربا
  خواب نوشين » خواب نوشين
  فيلم هاي ايراني در بازار فيلم كن
  تبادل موسيقی رايگان ممنوع!
  کوير » مرداب
  اي تبديل پسوندهاي مختلف فايل هاي ويدئويي به يكديگر
خطر استفاده از سفید کننده پوست
حليم
اريترومايسين ERYTHROMYCIN
زورگيري و راه هاي مقابله با آن
آموزش دلفی (بخش سوم)
يونجهAlfalfa
خطر استفاده از سفید کننده پوست
تصاوير جالب و ديدني14
«طلاق»، فاجعه‌اي در انفجار خانواده
ساختمان های پایتخت ؛ پناهگاه های پر خطر
  
صفحه اول  : تقشه سایت : لینک باکس