انواع-سیستم-عامل
انواع سیستم‌عامل

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

  • تک و چندوظیفگی (Single- and multi-tasking)

یک سیستم تک‌وظیفگی تنها می‌‎تواند در آن واحد یک برنامه را اجرا کند، در حالی که یک سیستم‌عامل چندوظیفگی می‌گذارد همزمان بیشتر از یک برنامه اجرا شود. این توسط قابلیت «اشتراک زمانی1» به دست می‌آید؛ بدین گونه که زمان موجود پردازنده را با مکرراً وقفه انداختن در پردازش‌ها به صورت قطعه‌های زمانی بین چندین پردازش تقسیم می‌کند؛ این کار توسط زیرسیستمی از سیستم‌عامل با قابلیت زمان‌بندی وظایف انجام می‌گیرد. چندوظیفگی ممکن است با دو نوع انحصاری و تعاونی توصیف شود. در چندوظیفگی انحصاری، سیستم‌عامل زمان پردازنده را قطعه‌قطعه می‌کند و هر قطعه را به برنامه‌ای اختصاص می‌دهد. سیستم‌عامل‌های شبیه یونیکس، مانند سولاریس، لینوکس و همچنین آمیگااواِس از چندوظیفگی انحصاری پشتیبانی می‌کنند. چندوظیفگی تعاونی با تکیه بر اینکه هر پردازش زمان را برای پردازش‌های دیگر با روشی تعریف‌شده فراهم کند، به دست می‌آید. نسخه‌‎های ۱۶-بیتی مایکروسافت ویندوز از چندوظیفگی تعاونی استفاده می‌کردند. نسخه‌های ۳۲-بیتی هردوی ویندوز NT و Win9x  از چندوظیفگی انحصاری بهره می‌بردند.

  • ویندوز-ان‌تی-3.1
    ویندوز N.T نسخه ۳٫۱؛ اولین نسخه از این ویندوز

    تک و چندکاربره (Single- and multi-user)

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

  • توزیع‌شده (Distributed)

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

  • قالب‌یافته (Templated)

در یک سیستم‌عامل، با پیش‌زمینه‌ی توزیع‌شده و پردازش ابری، قالب‌سازی به این اشاره دارد که ایمیجی از یک ماشین مجازی به عنوان یک سیستم‌عامل مهمان ساخته شود (مانند ایمیج ویندوز ۷ برای نصب در ماشین‌مجازی)؛ سپس آن ایمیج به عنوان ابزاری برای اجرا کردن چندین ماشین مجازی ذخیره می‌شود. این فن در هردوی شبیه‌سازی و مدیریت پردازش ابری استفاده می‌شود و در انبار سرورهای بزرگ متداول است.

  • تعبیه‌شده (Embedded)

سیستم‌عامل‌های تعبیه‌شده طراحی می‌شوند تا در سیستم‌های تعبیه‌شده به کار برده شوند. آن‌ها طراحی می‌شوند تا بر روی ماشین‌های کوچکی مانند PDA (دستیار دیجیتال شخصی)هایی که خودمختاری کمتری دارند، عملیات انجام دهند. آن‌ها قادرند با تعداد محدودی از منابع به کار بپردازند و از قبل به صورت جمع‌وجور و فوق‌العاده کارآمد طراحی می‌شوند. ویندوز CE و Minix 3 دو نمونه از سیستم‌عامل‌های تعبیه‌شده هستند.

  • ویندوز-ce-روی-pda
    ویندوز CE بر روی یک PDA

    بی‌درنگ (Real-time)

یک سیستم‌عامل بی‌درنگ، سیستم‌عاملی است که تضمین‌ می‌کند رویدادها یا داده‌ها تا قبل از اینکه لحظه‌ای مشخص فرا برسد، پردازش کرده باشد. یک سیستم‌عامل بی‌درنگ ممکن است از نوع تک یا چندوظیفگی باشد، اما وقتی که چندوظیفگی باشد، از الگوریتم‌های زمان‌بندی تخصصی استفاده می‌کند تا یک نوع ماهیت رفتار تعیین‌شده به دست آید. یک سیستم رویدادمحور (event-driven) بین وظایف بر اساس اولویت‌ها یا رخدادهای خارجی‌ سوئیچ می‌کند، در حالی که سیستم‌عامل‌های اشتراک زمانی بر اساس «وقفه‌های ساعت2» بین وظایف سوئیچ می‌کنند.

  • کتابخانه‌ای (Library)

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


منبع: Types of operating systems

پانویس‌ها

  1. اشتراک زمانی (time-sharing) به معنی «اشتراک گذاشتن منابع مختلف رایانه میان چند کاربر با بهره گرفتن از شگردهای چندبرنامه‌ای و چندوظیفه‌ای است»
  2. وقفه‌های ساعت (clock interrupts) نوعی وقفه است که سیستم‌عامل در مدت زمان‌های مشخصی (مثلاً هر ۱ ثانیه یا ۱ میلی ثانیه) وقفه‌ای می‌اندازد تا تصمیم بگیرد به وظیفه فعلی  اجازه بدهد به اجرا شدن ادامه بدهد یا یک وظیفه دیگر را زمان‌بندی کند
  3. سیستم‌عاملی است که برای همه پردازش‌ها فقط یک فضای آدرسی مجازی که جهانی است، فراهم می‌کند
  • 0نوشته ها
  • 55دیدگاه ها

به تکنولوژی، بازی‌های ویدئویی و نویسندگی علاقه‌مندم. در حال حاضر مدیریت وب‌سایت تک‌سرا را بر عهده دارم.

هیچ دیدگاهی ثبت نشده هنوز, شما اولین باشید!

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *