سیستم عامل

در فرهنگ رایانه سیستم عاملنرم‌افزاری است که مدیریت منابع رایانه را به عهده گرفته و بستری را فراهم می‌سازد که نرم افزار کاربردی اجرا شده و از خدمات آن استفاده کنند. سیستم عامل خدماتی به برنامه‌های کاربردی و کاربر ارائه می‌دهد. برنامه‌های کاربردی یا از طریق واسطهای برنامه نویسی کاربردی (Application User Interface-APIs) و یا از طرق فراخوانی های سیستم (system call) به این خدمات دسترسی دارند. با فراخوانی این واسط ها، برنامه‌های کاربردی می‌توانند سرویسی را از سیستم عامل درخواست کنند، پارامتر ها را انتقال دهند، و پاسخ عملیات را دریافت کنند. ممکن است کاربران با بعضی انواع واسط کاربری نرم افزار مثل واسط خط فرمان (Command Line Interface-CLI) یا یک واسط کاربری گرافیکی (Graphical User Interface-GUI) با سیستم عامل تعامل کنند. برای کامپیوتر های دستی و رومیزی، عموما واسط کاربری به عنوان بخشی از سیستم عامل در نظر گرفته می‌شود. در سیستم های بزرگ و چند کاربره مثل یونیکس و سیستم های شبیه یونیکس، واسط کاربری معمولا به عنوان یک برنامه کاربردی که خارج از سیستم عامل اجرا می‌شود پیاده سازی می‌شود.

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

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

در نگرش بالا به پایین، وظیفه سیستم عامل این است که یک ماشین توسعه یافته (Extended Machine) یا ماشین مجازی (Virtual Machine) را به کاربران ارائه کند تا آنها بتوانند آسان تر برنامه نویسی نمایند و درگیر پیچیدگی‌های سخت افزاری رایانه نشوند.

به طور کلی، وظایف سیستم عامل شامل موارد زیر است :

  • استفاده بهینه تر از منابع و جلوگیری از به هدر رفتن آنها
  • تخصیص و آزاد سازی منابع
  • اداره صف‌ها و زمان بندی استفاده از منابع
  • حساب داری میزان استفاده از منابع
  • ایجاد امنیت
  • ایجاد، حذف و اداره فرایند‌ها
  • ایجاد مکانیسم‌های ارتباط بین فرایند‌ها و همگام سازی آنها
  • مدیریت فایل‌ها و پوشه‌ها
  • مدیریت حافظه‌های اصلی و جانبی
  • برقراری امکان دسترسی چندتایی (Multiaccess) و اجرای هم روند (Concurrent) فرایند‌ها
  • به اشتراک گذاری منابع (Resource Sharing)
  • تعیین راهکار‌هایی برای اداره بن بست (deadlock)‌ها
  • جلوگیری از شرایط رقابتی (Race Condition) و تداخل یا در هم قفل شدن (Interlock) فرایند‌ها
  • جلوگیری از گرسنگی (Starvation)

سیستم عامل‌های فعلی

در سالهای اخیر رقابت بشتر بین سیستم عامل های مایکروسافت ویندوز ، اپل مَکینتاش و لینوکس جریان دارد که آماری که در ماه اکتبر 2009 توسط سایت W3 school به ثبت رسیده حاکی از آن است که هم اکنون 88.5 درصد کاربران کامپیترهای شخصی از سیستم عامل های ویندوز استفاده می کنند.

آمار موجود که مربوط به اکتبر 2009 میباشد به شرح زیر است :

  • ویندوز 7 : 4.4 %
  • ویندوز ویستا : 18.6 %
  • ویندوز اکس پی : 63.3 %
  • ویندوز سرور 2003 : 1.5 %
  • ویندوز 2000 : 0.7 %
  • مَکینتاش : 6.8 %
  • لینوکس : 4.2 %

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

همچنین از سیستم عامل های موجود روی گوشی های تلفن همراه نسل جدید می توان به اسامی زیر اشاره کرد :


فهرستی از توزیع‌های لینوکس

توزیع‌های گنو/لینوکس بسیار زیادند (نزدیک به ۷۰۰ تا). هر توزیعی برای کاربردی خاص ایجاد شده‌است. برخی از توزیع‌های معروف عبارتند از: