بخش تاریخچه و تکامل سیستمعاملها
اهداف یادگیری
- آشنایی با سیر تکامل سیستمعاملها
- درک چالشهای طراحی و پیادهسازی سیستمعامل در طول زمان
- شناخت نسلهای مختلف سیستمعامل و ویژگیهای آنها
سیستمعاملها از ابتدای پیدایش کامپیوترها تاکنون مسیری طولانی را طی کردهاند. درک این سیر تحول به ما کمک میکند تا اهمیت سیستمعاملهای امروزی و چالشهای پیش روی آنها را بهتر درک کنیم.
نسل صفر: بدون سیستمعامل (دهه 1940)
در این دوره، کامپیوترها بسیار گرانقیمت و حجیم بودند و تنها توسط تعداد محدودی از متخصصان مورد استفاده قرار میگرفتند. برنامهها با زبان ماشین نوشته میشدند و مستقیماً روی سختافزار اجرا میشدند. هیچ سیستمعاملی وجود نداشت و کاربران باید مستقیماً با سختافزار در ارتباط بودند.
مثال:
کامپیوتر ENIAC که در دهه 1940 ساخته شد، هیچ سیستمعاملی نداشت و برنامهنویسان باید با تغییر اتصالات فیزیکی، برنامهها را اجرا میکردند.
نسل اول: سیستمهای دستهای (دهه 1950)
با ظهور ترانزیستورها، کامپیوترها کوچکتر و ارزانتر شدند. در این دوره، سیستمهای دستهای (Batch Systems) معرفی شدند. در این سیستمها، چندین برنامه به صورت دستهای به کامپیوتر داده میشدند و سیستمعامل آنها را یکی پس از دیگری اجرا میکرد.
- مزایا: استفاده بهینهتر از منابع سختافزاری
- معایب: عدم تعامل مستقیم کاربر با کامپیوتر، زمان انتظار طولانی برای اجرای برنامهها
نسل دوم: سیستمهای اشتراک زمانی (دهه 1960)
با پیشرفت تکنولوژی، کامپیوترها قدرتمندتر شدند و امکان اجرای همزمان چندین برنامه فراهم شد. سیستمهای اشتراک زمانی (Time-Sharing Systems) به کاربران اجازه میدادند تا به صورت همزمان از طریق ترمینالها به کامپیوتر متصل شوند و برنامههای خود را اجرا کنند.
- مزایا: افزایش بهرهوری، امکان تعامل مستقیم کاربر با کامپیوتر
- معایب: پیچیدگی بیشتر سیستمعامل، نیاز به مدیریت منابع به صورت کارآمدتر
نسل سوم: سیستمهای چندبرنامهای (دهه 1970)
در این دوره، سیستمهای چندبرنامهای (Multiprogramming Systems) معرفی شدند که امکان اجرای همزمان چندین برنامه را در حافظه اصلی فراهم میکردند. سیستمعامل وظیفه مدیریت حافظه، CPU و سایر منابع را بر عهده داشت تا از تداخل برنامهها با یکدیگر جلوگیری شود.
سیستمهای چندبرنامهای، پایه و اساس سیستمعاملهای مدرن امروزی را تشکیل میدهند.
نسل چهارم: سیستمهای توزیعشده (دهه 1980 تاکنون)
با ظهور شبکههای کامپیوتری، سیستمهای توزیعشده (Distributed Systems) توسعه یافتند. در این سیستمها، چندین کامپیوتر به یکدیگر متصل میشوند و منابع خود را به اشتراک میگذارند. سیستمعامل در این سیستمها وظیفه مدیریت ارتباطات شبکهای، هماهنگی بین کامپیوترها و اشتراکگذاری منابع را بر عهده دارد.
نکات کاربردی و مشاورهای
- برای درک بهتر مفاهیم این بخش، میتوانید تاریخچه سیستمعاملهای معروف مانند Unix، Windows و Linux را مطالعه کنید.
- تمرکز خود را بر روی درک مزایا و معایب هر نسل از سیستمعاملها قرار دهید.
- با استفاده از منابع آنلاین و کتابهای مرجع، اطلاعات خود را در مورد این بخش تکمیل کنید.
سوال ۱: اولین سیستمعامل چه زمانی توسعه یافت؟
کدام گزینه به درستی زمان توسعه اولین سیستمعامل را بیان میکند؟
- A) دهه 1940
- B) دهه 1950
- C) دهه 1960
- D) دهه 1970
سوال ۲: کدام سیستمعامل اولین سیستمعامل تجاری موفق بود؟
کدام گزینه اولین سیستمعامل تجاری موفق را معرفی میکند؟
- A) UNIX
- B) Windows
- C) IBM OS/360
- D) Linux
سوال ۳: کدام یک از سیستمعاملهای زیر بر پایه UNIX توسعه یافته است؟
کدام گزینه یک سیستمعامل مبتنی بر UNIX را معرفی میکند؟
- A) Windows NT
- B) macOS
- C) DOS
- D) Android
سوال ۴: کدام یک از سیستمعاملهای زیر متنباز (Open Source) است؟
کدام گزینه یک سیستمعامل متنباز را معرفی میکند؟
- A) Windows
- B) macOS
- C) Linux
- D) iOS
سوال ۵: کدام یک از سیستمعاملهای زیر برای دستگاههای موبایل طراحی شده است؟
کدام گزینه یک سیستمعامل موبایل را معرفی میکند؟
- A) Windows 10
- B) macOS
- C) Android
- D) Linux
سوال ۶: کدام یک از سیستمعاملهای زیر برای اولین بار از رابط کاربری گرافیکی (GUI) استفاده کرد؟
کدام گزینه به درستی سیستمعامل دارای اولین رابط کاربری گرافیکی را معرفی میکند؟
- A) Windows 1.0
- B) macOS
- C) Xerox Alto
- D) Linux
سوال ۷: کدام یک از سیستمعاملهای زیر برای اولین بار از مفهوم چندوظیفگی (Multitasking) پشتیبانی کرد؟
کدام گزینه به درستی سیستمعامل دارای اولین پشتیبانی از چندوظیفگی را معرفی میکند؟
- A) Windows 3.1
- B) UNIX
- C) DOS
- D) macOS
سوال ۸: کدام یک از سیستمعاملهای زیر برای اولین بار از مفهوم حافظه مجازی (Virtual Memory) استفاده کرد؟
کدام گزینه به درستی سیستمعامل دارای اولین پشتیبانی از حافظه مجازی را معرفی میکند؟
- A) Windows 95
- B) macOS
- C) UNIX
- D) Linux
سوال ۹: کدام یک از سیستمعاملهای زیر برای اولین بار از مفهوم شبکههای کامپیوتری پشتیبانی کرد؟
کدام گزینه به درستی سیستمعامل دارای اولین پشتیبانی از شبکههای کامپیوتری را معرفی میکند؟
- A) Windows NT
- B) UNIX
- C) DOS
- D) Linux
سوال ۱۰: کدام یک از سیستمعاملهای زیر برای اولین بار از مفهوم امنیت چندسطحی (Multilevel Security) پشتیبانی کرد؟
کدام گزینه به درستی سیستمعامل دارای اولین پشتیبانی از امنیت چندسطحی را معرفی میکند؟
- A) Windows 2000
- B) macOS
- C) UNIX
- D) Linux