Слайд 2مباحث این فصل:
اهداف و وظایف سیستم عامل
سیستم عامل به عنوان رابط بین
کاربر و کامپیوتر
سیستم عامل به عنوان مدیر منابع
سهولت تکامل تدریجی سیستم عامل ها
تکامل تدریجی سیستم عامل ها
پردازش ردیفی
سیستم عامل های دسته ای ساده
سیستمهای چند برنامه ای دسته ای
سیستم های اشتراک زمانی
دستاوردهای اصلی
فرایندها
مدیریت حافظه
حفاظت و ایمنی اطلاعات
زمانبندی و مدیریت منابع
ساختار سیستم
Слайд 3سیستم عامل چیست؟
سیستم عامل:
برنامهای است که اجرای برنامههای کاربردی را کنترل
میکند.
بصورت یک رابط میان سخت افزار و کاربر عمل میکند.
مدیریت منابع کامپیوتر را به عهده گرفته است.
سه هدف سیستم عامل:
سهولت: سیستم عامل استفاده از کامپیوتر را آسان میکند.
کارآمدی: سیستم عامل موجب استفاده کارامد تر از منابع سیستم میشود.
قابلیت رشد: سیستم عامل باید به گونه ای باشد که قابلیت رشد داشته باشد.
Слайд 4سیستم عامل: رابط بین کاربر و کامپیوتر
کاربر نهایی با سخت افزار سروکار
ندارد.
یک کاربرد (Application) توسط برنامه ساز ایجاد میشود.
برنامههای سودمند، برنامههایی هستند که به دفعات استفاده میشوند و به ایجاد برنامه، مدیریت پروندهها و کنترل I/O کمک میکنند.
مهمترین برنامه سیستمی، سیستم عامل است.
Слайд 6خدمات سیستم عامل
توسعه برنامه: برنامه های سودمندی مثل ویراستار، اشکال زدا که
از طریق سیستم عامل قابل دسترسند.
اجرای برنامه: سیستم عامل تمام مراحل اجرا (بارکردن داده ها و دستورات در حافظه، مقدار گذاری I/O ) را زمان بندی میکند.
دسترسی به I/O: فراهم کردن واسطی یکنواخت برای تمام دستگاه های I/O.
کنترل دسترسی به پرونده ها: راهکارهای حفاظتی برای دسترسی به سیستم پرونده ها.
دسترسی به سیستم: در سیستم اشتراکی، سیستم عامل دسترسی به منابع را کنترل میکند.
کشف و پاسخ خطا : عکس العمل مناسب در برابر خطاهای حین اجرا.
حسابداری: جمع آوری آمار استفاده از منابع.
Слайд 7سیستم عامل به عنوان مدیر منابع
کامپیوتر، مجموعهای از منابع برای انتقال، ذخیره
سازی، و پردازش داده هاست. سیستم عامل مسئول مدیریت منابع است.
سیستم عامل مانند سایر نرم افزارهاست و مانند سایر نرم افزار ها اجرا میشود.
سیستم عامل کنترل را به پردازنده واگذار میکند.
Слайд 8سیستم عامل به عنوان مدیر منابع
Слайд 9هسته (Kernel) سیستم عامل
هسته سیستم عامل:
بخشی از سیستم عامل که در
حافظه اصلی قرار دارد.
بیشترین تعداد دفعات استفاده را دارد.
سیستم عامل از طریق هسته، با منابع سخت افزاری و نرم افزاری ارتباط برقرار می کند.
Слайд 10دلایل تغییر سیستم عامل در طول زمان
یک سیستم عامل ممکن است به
دلایل زیر در طول زمان تغییر کند:
ارتقاء و انواع جدید سخت افزار
ارائه خدمات جدید
رفع خطاهای کشف شده در سیستم عامل
Слайд 11تکامل تدریجی سیستم عامل
پردازش ردیفی.
سیستم های دستهای ساده.
سیستم های چند برنامهای دستهای.
سیستم
های اشتراک زمانی.
سیستمهای مدرن.
Слайд 12تکامل تدریجی سیستم عامل:پردازش ردیفی
سیستم عاملی وجود نداشت و کاربر مستقیما با
سخت افزار در ارتباط بود.
برنامهها به زبان ماشین بر روی کارت نوشته می شد و به دستگاه ورودی (نوار خوان) بار می شد.
در صورت ایجاد خطا، کاربر ثبات ها و حافظه اصلی را بررسی می کرد.
دومساله اصلی :
زمانبندی: هر کاربر باید از برگه های نوبت گیری استفاده کند (معمولاً نیم ساعته). در صورت کامل نشدن در موقع مقرر برنامه خاتمه می یافت تا بعداً دوباره از ابتدا اجرا شود.
زمان نصب: هر برنامه شامل بار کردن مترجم، کد منبع به حافظه، ذخیرهسازی برنامه ترجمه شده، بود. هر یک از این کارها نیاز به اطلاعاتی بر روی نوار ورودی داشت. در صورت بروز خطا، کاربر کار را از اول شروع میکرد.
Слайд 13تکامل تدریجی سیستم عامل: پردازش دستهای
از برنامه ای به نام ناظر استفاده
میشد.
کاربر دسترسی مستقیم به ماشین ندارد.
کاربر برنامهها را بر روی کارت نوشته و متصدی کارتها را به طور ردیفی در دستگاه نوارخوان قرار داده تا مورد استفاده ناظر قرار بگیرد.
ناظر به طور خودکار بار کردن برنامه بعدی را به عهده دارد.
چون ناظر اکثر عملیات را انجام میدهد، بخش زیادی از آن در حافظه است که به آن ناظر ماندگار می گویند.
بقيه ناظر شامل برنامههای سودمند و توابع عمومی و مشترک است.
با خوانده شدن کار، کنترل به برنامه کاربر منتقل میشود و پس از خاتمه برنامه، کنترل دوباره به ناظر بر میگردد.
Слайд 15ویژگی های مطلوب سخت افزاری در سیستم پردازش دسته ای
حفاظت از حافظه
اصلی: ناظر ماندگار نباید در حافظه تغییر کند، در صورت چنین تلاشی، پردازنده باید خطا را کشف و کنترل را به ناظر برگرداند.
زمانسنج: سیستم نباید در انحصار اجرای یک برنامه باشد، با زمانسنج میتوان کارها را زمانبندی کرد.
دستورالعملهای ممتاز: دستورالعملهایی که تنها توسط ناظر اجرا می شوند (مثل I/O).
وقفهها: این خصوصیت به سیستم عامل انعطاف بیشتری میدهد.
Слайд 16حفاظت از حافظه اصلی
اکثر پردازنده ها حداقل از دو حالت اجرا حمایت
میکنند: حالت کاربر و حالت سیستم.
برنامه های کاربر در حالت کاربر اجرا می شوند.
بعضی دستورالعملها نمیتوانند اجرا شوند.
ناظر در حالت سیستم اجرا میشود.
به حالت سیستم، حالت هسته یا ممتاز نیز گفته میشود.
دستورالعملهای ممتاز در حالت ممتاز اجرا می شوند.
قسمت های محافظت شده از حافظه ممکن است در این حالت در دسترس باشند.
Слайд 17سیستم عامل چند برنامه ای دسته ای
به علت اینکه اکثر زمان یک
برنامه به اجرای دستورالعملهای I/O مربوط میشود و بدلیل عدم تطابق سرعت I/O و CPU ، در پردازش دستهای، پردازنده اکثر وقت خود را بیکار است.
اگر ناحیه کاربر، چندین برنامه در حال اجرا را در خود داشته باشد سیستم عامل میتواند در حین اجرای عمل I/O برای یک برنامه، برنامه دیگری را اجرا کند.
نکته: چون سیستم عامل چند برنامهای نیاز به مدیریت حافظه و همچنین الگوریتم های زمانبندی دارد، از سیستم عامل تک برنامه ای پیچیدهتر است.
Слайд 18سیستم عامل اشتراک زمانی(time sharing)
در بعضی مواقع، تراکنش محاورهای ضروری است. لذا
سیستم های اشتراک زمانی بوجود آمدند.
چند برنامگی امکان رسیدگی به کارهای محاورهای را میدهد و وقت پردازنده بین کارها تقسیم میشود.
در صورت وجود nکاربر به هر یک از کاربران 1/nوقت پردازنده میرسد.
Слайд 19مقایسه چند برنامه ای و اشتراک زمانی
هدف:
چند برنامهای دستهای: استفاده حداکثر
از پردازنده.
اشتراک زمانی: حداقل زمان پاسخ.
منبع دستورات به سیستم عامل:
در چند برنامه ای دستهای: دستورات زبان کنترل کار.
در اشتراک زمانی: فرمان هایی که از پایانه وارد می شوند.
Слайд 20سیستم عامل بلادرنگ (Real time)
نوعی سیستم عامل همه منظوره است.
هدف یک سیستم
بلادرنگ این است که در محدودیت زمانی مشخص، نتایج مورد انتظار را تولید کند.
در این سیستم ها، معمولا وسایل ذخیره سازی ثانویه وجود ندارد و به جای آن از ROM استفاده می شود.
Слайд 21انواع سیستم های بلادرنگ
نرم
سخت
سیستمهایی که در آن مهلت زمانی باید پاسخ داده
شود را بلادرنگ سخت و سیستم هایی که مهلت زمانی را پشتیبانی نمیکنند بلادرنگ نرم مینامند.
کاربرد سیستمهای بلادرنگ نرم: اسکن بارکد در پایانه فروشگاه. با اینکه سرعت پاسخ دهی باید سریع باشد اما به شدت سیستم های سخت نمی باشد.
کاربرد سیستمهای بلادرنگ سخت: کنترل موتور خودرو که در آن پاسخ با تأخیر می تواند نتایج فاجعه باری را به همراه داشته باشد.
Слайд 22سیستم های بلادرنگ
هدف اشتراک زمانی و سیستم تراکنش بلادرنگ: حداقل زمان پاسخ
گویی
تفاوت اشتراک زمانی و سیستم تراکنش بلادرنگ: سیستم تراکنش بلادرنگ محدود به دو یا سه کاربرد ولی اشتراک زمانی کاربرد های مختلف دارد.
Слайд 23دستاوردهای اصلی توسعه و ایجاد سیستم عامل
فرآیندها
مدیریت حافظه
حفاظت اطلاعات و ایمنی
زمانبندی
و مدیریت منابع
ساختار سیستم
Слайд 24تعریف فرآیند
فرآیند به برنامه در حال اجرا می گویند.
هر فرآیند واحدی از
فعالیت است که بوسیله دنبالهای از اجرا، حالت موجود و مجموعهای از منابع سیستم که به آن تخصیص یافته، مشخص میشود.
Слайд 25انواع فرآیندها
محدود به (CPU Limited) CPU
بیشتر زمان کامپیوتر صرف محاسبات CPU می
شود.
محدود به ورودی/ خروجی (I/O Limited )
بیشتر زمان کامپیوتر صرف ورود داده ها و خروج اطلاعات می شود.
Слайд 26اجزای فرایند
هر فرایند سه جزء دارد:
یک برنامه قابل اجرا،
داده های مورد
نیاز فرایند،
متن یا وضعیت اجرای برنامه: این جزء از همه مهمتر است و شامل تمام اطلاعاتی است که سیستم عامل برای مدیریت فرآیندها احتیاج دارد.
در حافظه اصلی یک بلوک از حافظه برای نگهداری برنامه، دادهها و متن برنامه تخصیص داده میشود.
Слайд 27سیستم عامل و مدیریت حافظه
جداسازی فرایندها: سیستم عامل باید از مداخله
فرایندها در دادههای یکدیگر جلوگیری کند.
تخصیص و مدیریت خودکار: در صورت نیاز باید به طور پویا به برنامه جا اختصاص داده شود.
حمایت از برنامهسازی مؤلفهای: برنامهنویس باید قادر به ایجاد، حذف و تغییر اندازه مؤلفهها باشد.
حفاظت و کنترل دسترسی: سیستم عامل باید اشتراک فرایندها به دادهها و حافظه را کنترل کند.
حافظه درازمدت: برای نگهداری دادهها و فرایندها به مدت طولانی نیاز به حافظه دراز مدت است.
Слайд 28حفاظت اطلاعات و ایمنی
با رشد سیستمهای اشتراک زمانی و شبکه، نیاز به
حفاظت اطلاعات بیشتر شد.
بخش اعظم حفاظت اطلاعات توسط سیستم عامل انجام میشود و به سه گروه زیر تقسیم میشود.
کنترل دسترسی: تنظیم کنترل دسترسی کاربران به دادهها و منابع
کنترل جریان اطلاعات: تنظیم جریان دادهها در داخل سیستم و تحویل آن به کاربر
گواهی: اثبات اینکه مراحل بالا به درستی انجام شده.
Слайд 29زمانبندی و مدیریت منابع
یکی از وظایف سیستم عامل، مدیریت منابع و زمانبندی
استفاده از آنها توسط فرایندهاست.
سیاست تخصیص منابع به فرایندها باید سه شرط زیر را برآورده سازد:
انصاف: همه فرایندهای خواستار یک منبع باید حق دستیابی یکسان داشته باشند.
حساسیت در مقابل تفاوتها: ممکن است نیاز باشد، سیستم عامل بین کارهای با کلاسهای مختلف تفاوت بگذارد.
کارایی: باید به گونهای باشد که حداکثر توان عملیاتی، حداقل زمان پاسخ و در مورد سیستم های اشتراکی حداکثر کاربران را حمایت کند.
Слайд 30اجزای اصلی سیستم عامل برای زمانبندی و تخصیص منابع
صف کوتاه مدت: شامل
فرایندهایی که در حافظه اصلی قرار دارند و در انتظار توزیع وقت پردازنده برای اجرا هستند.
صف درازمدت: فهرستی از کارهای جدید که برای اجرا باید توسط پردازنده به صف کوتاه مدت منتقل شوند.
صف دستگاه I/O: شامل فرایندهایی که متقاضی استفاده از یک دستگاه I/O هستند.
Слайд 31ساختار سیستم
اندازه یک سیستم سه مولفه نامطلوب را در بر دارد:
سیستم عامل
از نظر زمان تحویل، تاخیر دارد.
سیستم ها اشکالهای پنهانی دارند که در هنگام کار، اشکال خود را نشان می دهند.
کارایی آن از حد انتظار کم تر است.
Слайд 32برای رفع مشکل
سیستم های کوچک با ساختار مولفه ای.
سیستم های
بزرگ با ساختار سلسله مراتبی.
ساختار سلسله مراتبی، عملکرد سیستم را بر اساس پیچیدگی و ویژگی زمانی و سطح تجرید آنها تفکیک میکند.
دارای چند سطح است که هر سطح زیر مجموعهای از اعمال را نشان میدهد. سطوح به هم وابستگی دارند و جزئیات را از سطح بالاتر پنهان میکنند.
سطوح پایین با اندازه کوتاه تر زمان سر کار دارند.
سطوح پایینتر مربوط به سخت افزار میشود و جزء سیستم عامل نیستند.
Слайд 33سطوح سيستم عامل سلسله مراتبی
سطح 1: شامل مدارات الکتریکی.
سطح 2: مجموعه دستورالعملهای
پردازنده.
سطح 3: مفهوم رویه یا زیر برنامه.
سطح4: وقفه ها.
سطح 5: فرآیند (یک برنامه در حال اجرا).
سطح 6: حافظه ثانویه کامپیوتر.
سطح7: یک فضای آدرس منطقی برای فرآیند. (حافظه مجازی، قطعه بندی و صفحهبندی)
Слайд 34سطوح سيستم عامل سلسله مراتبی
سطح 8: مبادله اطلاعات و پیامها بین فرآیند.
سطح
9: ذخیره سازی دراز مدت پرونده ها.
سطح 10: دسترسی به دستگاه های خارجی.
سطح 11: نگهداری رابط بین شناسه های خارجی و داخلی.
سطح 12: اطلاعات لازم برای مدیریت فرآیندها مانند فهرست راهنماها
سطح 13: واسط کاربر و سیستم عامل(پوسته).
Слайд 35ویژگی های سیستم عامل های جدید
معماری ریز هسته.
چند نخی.
چند پردازشی متقارن.
سیستم های
عامل توزیعی.
طراحی شیء گرا.
Слайд 36معماری ریز هسته
ریزهسته برای رفع مشکلات بزرگشدن بیش از حد هستهها طراحی
شد و فقط سازوکارهای لازم برای پیادهسازی سیستمعامل را فراهم میکند.
موارد واگذاری به هسته:
دسترسی به فضای آدرس.
ارتباط بین فرآیندها.
زمانبندی پایه ای.
رویکرد ریز هسته:
پیاده سازی را ساده می کند.
موجب گسترش و انعطاف میگردد.
با محیط توزیعی کاملا سازگار است.
Слайд 37چند نخی
فرآیند ها به نخ هایی تقسیم میشوند که میتوانند به طور
هم زمان اجرا شوند
در فرآیندهایی که چند وظیفه اصلی مستقل را انجام میدهند، مفید است.
در این سیستمها، فرايند مجموعه ای از يك يا چند نخ و منابع سيستمي تخصيص داده شده میباشد.
Слайд 38چند پردازشی متقارن
پردازندههای متعددی وجود دارند که هر پردازنده واحد کنترل، حساب
و منطق و ثبات های خاص خود را دارند.
تمام پردازندهها اعمال یکسانی را میتوانند انجام دهند.
هسته میتواند روی هر پردازنده ای اجرا شود.
از امکانات ورودي/خروجي و حافظه اصلی به طور مشترك استفاده می کنند.
Слайд 39امتیازات چند پردازشی متقارن نسبت به معماری تکپردازنده
کارایی:
قرار دادن ترتیب کارها به
نحوی که به موازات هم انجام شوند.
دسترسی پذیری و تحمل خطا:
از آنجا که تمام پردازنده ها یک عمل را انجام میدهند، خرابی در یکی از آنها موجب توقف ماشین نمی شود.
Слайд 40امتیازات چند پردازشی متقارن نسبت به معماری تک پردازنده
رشد:
اضافه کردن پردازنده براحتی
امکانپذیر است
مقیاس پذیری:
هزینهها متناسب با تعداد پردازندهها است.
Слайд 41سیستم عامل توزیع شده (Distributed)
تصور یک فضای حافظه اصلی واحد و یک
فضای حافظه ثانوی واحد و دیگر امکاناتی که دسترسی به آنها یکنواخت شده است را ارائه میکند.
در سیستم عاملهای توزیع شده، سیستمهای موجود در شبکههای مختلف و با راههای ارتباطی مختلف مجتمع میشوند.
هر پردازنده، حافظه و ساعت مخصوص به خود را دارد.
پردازندهها از نظر اندازه و عملکرد با یکدیگر فرق دارند.
دلایل ساخت سیستم های توزیعی
اشتراک منابع : مثلا کاربری در یک سایت می تواند از چاپگری در سایت دیگر استفاده کند.
افزایش سرعت محاسبات: مثلا توزیع یک محاسبه بین چند سایت