مقدمه:
سیستمعامل یا سامانه عامل نرمافزاری است که مدیریت منابع رایانه را به عهده گرفته و بستری را فراهم میسازد که نرمافزار کاربردی اجرا شده و از خدمات آن استفاده کنند. سیستمعامل جزء ضروریترین نرمافزارهای یک سیستم کامپیوتری است. سیستمعامل خدماتی به برنامههای کاربردی و کاربر ارائه میدهد. برنامههای کاربردی یا از طریق واسطهای برنامهنویسی کاربردی یا از طرق فراخوانیهای سیستم به این خدمات دسترسی دارند. با فراخوانی این واسطها، برنامههای کاربردی میتوانند سرویسی را از سیستمعامل درخواست کنند، پارامترها را انتقال دهند، و پاسخ عملیات را دریافت کنند. ممکن است کاربران با بعضی انواع واسط کاربری نرمافزار مثل واسط خط فرمان یا یک واسط گرافیکی کاربر با سیستمعامل تعامل کنند. برای کامپیوترهای دستی و رومیزی، عموماً واسط کاربری به عنوان بخشی از سیستمعامل در نظر گرفته میشود. در سیستمهای بزرگ و چند کاربره مثل یونیکس و سیستمهای شبیه یونیکس، واسط کاربری معمولاً به عنوان یک برنامه کاربردی که خارج از سیستمعامل اجرا میشود پیادهسازی میشود. نمونههایی از محبوبترین سیستمعاملهای نوین شامل: اندروید، بیاسدی، آیاواس، لینوکس،اواس ده، کیواناکس، مایکروسافت ویندوز، ویندوز فون و زد/اواس میباشند.
هسته اساسی يک کامپيوتر سيستم عامل ، است . سيستم عامل، نرم افزاری است که سخت افزار را کنترل و همانگونه که از نام آن مشخص است باعث انجام عمليات در کامپيوتر می گردد . سيستم عامل ، برنامه ها را به درون حافظه کامپيوتر استقرار و زمينه اجرای آنان را فراهم می نمايد. سيستم عامل دستگاه های جانبی ، نظير ديسک ها و چاپگرها را مديريت می نمايد. کامپيوتر و چاپگر های موجود در يک محيط کامپيوتری را می توان بيکديگر مرتبط تا زمينه مبادله اطلاعات و داده ها ، فراهم گردد. شبکه ، شامل گروهی از کامپيوترها و دستگاه های مرتبط بيکديگر است. هماهنگی در اجرای همزمان برنامه ها در يک شبکه ، مديريت دستگاههای جانبی متصل به شبکه و موارد ديگر ، مستلزم وجود امکانات و پتانسيل های بيشتر از طرف سيستم عامل است . يک سيستم عامل شبکه ای ، امکانات فوق و ساير پتانسيل های لازم در خصوص شبکه را ارائه می نمايد. ويندوز 2000 ماکروسافت، نسل جديدی از سيستم های عامل شبکه ای است که زيرساخت مناسبی را بمنظور مديريت و حمايت از برنامه ها بمنظور استفاده توسط کاربران شبکه و سازمان های مربوطه، فراهم می نمايد.
انواع سیستم عامل:
سیستم های بی درنگ:
سیستمهای بیدرنگ یا زمان واقعی یک سیستم عامل چند وظیفهای است که معمولاً به عنوان یک کنترلکننده در یک کاربرد خاص استفاده میشوند. سیستم در این حالت میبایست در زمانی مشخص و معین حتماً جواب مورد نظر را بدهد. سیستمهای کنترل آزمایشهای علمی، تصویربرداری پزشکی، کنترل صنعتی و برخی از سیستمهای نمایش از این دستهاند.
سیستم های چند کاربره:
سیستمهای چند کاربره اجازه میدهند تا کاربران متعدد به صورت همزمان به یک سیستم کامپیوتری دسترسی داشته باشند.
سیستم عامل تک پردازنده:
این نوع سیستمعاملها، سیستمعاملهای نسل چهارم (نسل فعلی) هستند که بر روی یک پردازنده اجرا میشوند. از قبیل ویندوز اکسپی، ۹۸، امای و ویستا که بیشتر محصول شرکتمایکروسافت میباشند.
سیستم عامل شبکه ایی:
سیستم عامل هایی مثل ناول نت که بیشترین استفاده و امکانات این سیستم عامل برای شبکه میباشد.
سیستم عامل توزیع شده:
این سیستمعاملها خود را مانند سیستمعاملهای تک پردازنده به کاربر معرفی میکنند، اما در عمل از چندین پردازنده استفاده میکنند. این نوع سیستمعامل در یک محیط شبکهای اجرا میشود در این نوع سیستم یک برنامه پس از اجرا در کامپوترهای مختلف جواب نهایی به سیستم اصلی کاربر برمیگردد سرعت پردازش در این نوع سیستم بسیار بالاست.
دلایل ایجاد سیستم عامل:
یک سیستم کامپیوتری پیشرفته از یک یا چند پردازنده ، مقداری حافظه اصلی ، دیسک ها ، چاپگر ها ، صفحه کلید ، صفحه نمایش ، واسط های شبکه ای و دیگر دستگاه های ورودی و خروجی تشکیل شده است . این اجزا در کنار یکدیگر یک سیستم پیچیده را به وجود آورده اند . نوشتن برنامه هایی که تمامی این عناصر را مدیریت کرده و از آنها به طور صحیح ، بهینه و کارآمد استفاده نماید ، کار بسیار مشکلی است . اگر هر برنامه نویس مجبور باشد با مفاهیمی نظیر نحوه کار دستگاه های ورودی خروجی گوناگون آشنا باشد ، بسیاری از برنامه ها هرگز نوشته نخواهد شد . به همین دلیل ، از سالها قبل به وضوح مشخص بود که باید روش هایی یافت که برنامه نویسان را از پیچیدگی های سخت افزار دور نگه دارد . تلاش های گسترده ، منجر به ایجاد یک لایه نرم افزاری روی سخت افزار شد که همه اجزای سیستم را کنترل نموده و کار برنامه نویسان را راحت تر کند . به این لایه نرم افزاری سیستم عامل می گویند.
به طور کلی ، وظایف سیستم عامل شامل موارد زیر است :
- استفاده بهینه از منابع و جلوگیری از به هدر رفتن آنها
- تخصیص و آزاد سازی منابع
- اداره صف ها و زمان بندی استفاده از منابع
- حساب داری ( Accounting ) میزان استفاده از منابع
- ایجاد امنیت ( security )
- ایجاد ، حذف و اداره فرایند ها
- ایجاد مکانیسم های ارتباط بین فرایند ها و همگام سازی آنها
- مدیریت فایل ها و پوشه ها
- مدیریت حافظه های اصلی و جانبی
- برقراری امکان دسترسی چندتایی ( Multiaccess ) و اجرای هم روند ( Concurrent ) فرایند ها
- به اشتراک گذاری منابع ( Resource Sharing )
- تعیین راهکار هایی برای اداره بن بست ( deadlock ) ها
- جلوگیری از شرایط رقابتی ( Race Condition ) و تداخل یا در هم قفل شدن ( Interlock ) فرایند ها
- جلوگیری از گرسنگی ( Starvation )
سیستم عامل های فعلی:
امروزه پرمصرف ترین سیستم عامل جهان ، ویندوز است که بر روی بیشتر رایانههای شخصی نصب شده است.
نام چند سیستم عامل معروف جهان در زیر آمده است :
- یونیکس
- لینوکس
- سولاریس (سیستم عامل)
- بی اس دی
- مک او اس
- ام وی اس.
- ویلز (سیستم عامل)
- ویندوز اکسپی
- ویندوز 7
- ویندوز انتی
- ویندوز سیئی
- پالم (سیستم عامل)
- سیمبیان (سیستم عامل)
شاید بهتره بگیم سیستم عامل یه راه اسان تر برای انجام عملیات مورد نظرمون هست
به محبوبیت استفاده از رایانه در هر مکانی خیلی کمک کرد