سیستمعامل یا سامانهٔ عامل[۱] (به انگلیسی: Operating) نرمافزاری است که مدیریت منابع Systemرایانه را به عهده گرفته و بستری را فراهم میسازد که نرمافزار کاربردی اجرا شده و از خدمات آن استفاده کنند. سیستمعامل جزء ضروریترین نرمافزارهای یک سیستم کامپیوتری است. سیستمعامل خدماتی به برنامههای کاربردی و کاربر ارائه میدهد. برنامههای کاربردی یا از طریق واسطهای برنامهنویسی کاربردی[یادداشت ۱] و یا از طرق فراخوانیهای سیستم به این خدمات دسترسی دارند. با فراخوانی این واسطها، برنامههای کاربردی میتوانند سرویسی را از سیستمعامل درخواست کنند، پارامترها را انتقال دهند، و پاسخ عملیات را دریافت کنند. ممکن است کاربران با بعضی انواع واسط کاربری نرمافزار مثل واسط خط فرمان یا یک واسط گرافیکی کاربر با سیستمعامل تعامل کنند. برای کامپیوترهای دستی و رومیزی، عموماً واسط کاربری به عنوان بخشی از سیستمعامل در نظر گرفته میشود. در سیستمهای بزرگ و چند کاربره مثل یونیکس و سیستمهای شبیه یونیکس، واسط کاربری معمولاً به عنوان یک برنامه کاربردی که خارج از سیستمعامل اجرا میشود پیادهسازی میشود. نمونههایی از محبوبترین سیستمعاملهای نوین شامل: اندروید،بیاسدی، آیاواس، لینوکس، اواس ده، کیواناکس، مایکروسافت ویندوز، ویندوز فون و زد/اواس میباشند.سیستمهای بیدرنگ یا زمان واقعی یک سیستم عامل چند وظیفهای است که معمولاً بعنوان یک کنترل کننده در یک کاربرد خاص استفاده میشوند. سیستم در این حالت میبایست در زمانی مشخص و معین حتماً جواب مورد نظر را بدهد. سیستمهای کنترل آزمایشهای علمی، تصویربرداری پزشکی، کنترل صنعتی و برخی از سیستمهای نمایش از این دستهاند. هدف اصلی استفاده از سیستمهای بیدرنگ واکنش سریع و تضمین شده در برابر یک رویداد خارجی میباشد. در سیستمهای بیدرنگ معمولاً وسایل ذخیرهسازی ثانویه وجود ندارد و به جای آن از حافظههای ROM استفاده میشود. سیستمعاملهای پیشرفته نیز در این سیستمها وجود ندارند چرا که سیستمعامل کاربر را از سختافزار جدا میکند و این جداسازی باعث عدم قطعیت در زمان پاسخگویی میشود. سیستمهایی که در آن مهلت زمانی[یادداشت ۲] باید پاسخ داده شود را بیدرنگ سخت و سیستمهایی که مهلت زمانی را پشتیبانی نمیکنند بیدرنگ نرم مینامند. از کاربرد سیستمهای بیدرنگ سخت میتوان به کنترل موتور یک خودرو (پاسخ با تأخیر میتواند نتایج فاجعهباری را به همراه داشته باشد) و در سیستمهای بیدرنگ نرم میتوان به اسکن بارکد در پایانه فروشگاه (با اینکه سرعت پاسخدهی باید سریع باشد اما به حادّی سیستمهای سخت نمیباشد) اشاره کرد
سیستمعامل دو کار عمده انجام میدهد:
- در نگرش پایین به بالا، منابع منطقی (مانند فایلها) و منابع فیزیکی (مانند دستگاههای سختافزاری) رایانه را مدیریت و کنترل میکند.
- در نگرش بالا به پایین، وظیفه سیستمعامل این است که یک ماشین توسعه یافته[یادداشت ۳] یا ماشین مجازی را به کاربران ارائه کند تا آنها بتوانند آسانتر برنامهنویسی نمایند و درگیر پیچیدگیهای سختافزاری رایانه نشوند.[نیازمند منبع]
به طور کلی، وظایف سیستمعامل شامل موارد زیر است:
- استفاده بهینهتر از منابع و جلوگیری از به هدر رفتن آنها
- تخصیص و آزاد سازی منابع
- اداره صفها و زمانبندی استفاده از منابع
- حسابداری میزان استفاده از منابع
- ایجاد امنیت
- ایجاد، حذف و اداره فرایندها
- ایجاد مکانیسمهای ارتباط بین فرایندها و همگامسازی آنها
- مدیریت فایلها و پوشهها
- مدیریت حافظههای اصلی و جانبی
- برقراری امکان دسترسی چندتایی[یادداشت ۴] و اجرای هم روند[یادداشت ۵] فرایندها
- به اشتراک گذاری منابع[یادداشت ۶]
- تعیین راهکارهایی برای اداره بنبست[یادداشت ۷]
- جلوگیری از وضعیت رقابتی[یادداشت ۸] و تداخل یا در هم قفل شدن[یادداشت ۹] فرایندها
- جلوگیری از گرسنگی[یادداشت ۱۰]
سیستمعاملهای فعلی[ویرایش]
در سالهای اخیر رقابت بیشتر بین سیستمعاملهای مایکروسافت ویندوز، اپل مک اواس و لینوکس جریان دارد که آماری که در ماه ژوییه ۲۰۱۱ توسط وبگاه W3Schools به ثبت رسیده حاکی از آن است که هم اکنون بیش از ۸۰ درصد کاربران اینترنت از سیستمعامل ویندوز استفاده میکنند.
آمار موجود که مربوط به اوت ۲۰۱۰ میباشد به شرح زیر است:
- ویندوز ۷: ۳۷٫۸٪
- ویندوز ویستا: ۶٫۷٪
- ویندوز اکس پی: ۳۹٫۷٪
- ویندوز ۲۰۰۳: ۰٫۹٪
- مک اواس: ۸٫۱٪
- توزیعهای گنو/لینوکس: ۵٫۲٪
پاورپوینت-سیستم عامل و حافظه مجازی- در 35 اسلاید-powerpoint-ppt