nدو مشخصه اصلی صفحه بندی و قطعه بندی کلید پیشرفت مدیریت حافظه اند:nکلیه مراجعات یک فرایند به حافظه، آدرسهای منطقی هستند که به صورت پویا در زمان اجرا به آدرس فیزیکی ترجمه میشوند.nفرایند ممکن است به داخل و خارج حافظه مبادله شود بنابراین ممکن است بخشهای مختلفی از حافظه را اشغال کند.nممکن است برنامه به بخش های تقسیم شود که نیاز نیست به صورت پیوسته در حافظه قرار گیرند.nبرای اجرای فرایند نیاز به بار شدن تمام بخشهای فرایند نیست.سیستمعامل یا سامانهٔ عامل نرمافزاری است که مدیریت منابع رایانه را به عهده گرفته و بستری را فراهم میسازد که نرمافزار کاربردی اجرا شده و از خدمات آن استفاده کنند. سیستمعامل جزء ضروریترین نرمافزارهای یک سیستم کامپیوتری است. سیستمعامل خدماتی به برنامههای کاربردی و کاربر ارائه میدهد. برنامههای کاربردی یا از طریق واسطهای برنامهنویسی کاربردی[یادداشت ۱] و یا از طرق فراخوانیهای سیستم به این خدمات دسترسی دارند. با فراخوانی این واسطها، برنامههای کاربردی میتوانند سرویسی را از سیستمعامل درخواست کنند، پارامترها را انتقال دهند، و پاسخ عملیات را دریافت کنند. ممکن است کاربران با بعضی انواع واسط کاربری نرمافزار مثل واسط خط فرمان یا یک واسط گرافیکی کاربر با سیستمعامل تعامل کنند. برای کامپیوترهای دستی و رومیزی، عموماً واسط کاربری به عنوان بخشی از سیستمعامل در نظر گرفته میشود. در سیستمهای بزرگ و چند کاربره مثل یونیکس و سیستمهای شبیه یونیکس، واسط کاربری معمولاً به عنوان یک برنامه کاربردی که خارج از سیستمعامل اجرا میشود پیادهسازی میشود. نمونههایی از محبوبترین سیستمعاملهای نوین شامل: اندروید، بیاسدی، آیاواس، لینوکس، اواس ده، کیواناکس، مایکروسافت ویندوز، ویندوز فون و زد/اواس میباشند.انواع سیستمعاملسیستمهای بیدرنگسیستمهای بیدرنگ یا زمان واقعی یک سیستم عامل چند وظیفهای است که معمولاً بعنوان یک کنترل کننده در یک کاربرد خاص استفاده میشوند. سیستم در این حالت میبایست در زمانی مشخص و معین حتماً جواب مورد نظر را بدهد. سیستمهای کنترل آزمایشهای علمی، تصویربرداری پزشکی، کنترل صنعتی و برخی از سیستمهای نمایش از این دستهاند. هدف اصلی استفاده از سیستمهای بیدرنگ واکنش سریع و تضمین شده در برابر یک رویداد خارجی میباشد. در سیستمهای بیدرنگ معمولاً وسایل ذخیرهسازی ثانویه وجود ندارد و به جای آن از حافظههای ROM استفاده میشود. سیستمعاملهای پیشرفته نیز در این سیستمها وجود ندارند چرا که سیستمعامل کاربر را از سختافزار جدا میکند و این جداسازی باعث عدم قطعیت در زمان پاسخگویی میشود. سیستمهایی که در آن مهلت زمانی[یادداشت ۲] باید پاسخ داده شود را بیدرنگ سخت و سیستمهایی که مهلت زمانی را پشتیبانی نمیکنند بیدرنگ نرم مینامند. از کاربرد سیستمهای بیدرنگ سخت میتوان به کنترل موتور یک خودرو (پاسخ با تأخیر میتواند نتایج فاجعهباری را به همراه داشته باشد) و در سیستمهای بیدرنگ نرم میتوان به اسکن بارکد در پایانه فروشگاه (با اینکه سرعت پاسخدهی باید سریع باشد اما به حادّی سیستمهای سخت نمیباشد) اشاره کردسیستمهای چند کاربرهسیستمهای چند کاربره اجازه میدهند تا کاربران متعدد بصورت همزمان به یک سیستم کامپیوتری دسترسی داشته باشند. سیستمهای اشتراک زمانی و کارساز وب را میتوان بعنوان سیستمهای چند کاربره طبقهبندی کرد. در سیستمهای اشتراک زمانی تنها یک پردازنده قرار دارد که توسط مکانیزمهای زمانبندی بین برنامههای مختلف کاربرها با سرعت زیاد سوئیچ میشود و بنابراین هر کاربر تصور میکند کل رایانه در اختیار اوستسیستمعامل تک پردازندهاین نوع سیستمعاملها، سیستمعاملهای نسل چهارم (نسل فعلی) هستند که بر روی یک پردازنده اجرا میشوند. از قبیل XP,Vista,98,Me که بیشتر محصول شرکت مایکرو سافت میباشند.سیستمعامل شبکهایسیستم عاملهایی مثل ناول نت که بیشترین استفاده و امکانات این سیستم عامل برای شبکه میباشد.سیستمعامل توزیع شده این سیستمعاملها خود را مانند سیستمعاملهای تک پردازنده به کاربر معرفی میکنند، اما در عمل از چندین پردازنده استفاده میکنند. این نوع سیستمعامل در یک محیط شبکهای اجرا میشود در این نوع سیستم یک برنامه پس از اجرا در کامپوترهای مختلف جواب نهایی به سیستم اصلی کاربر برمیگردد سرعت پردازش در این نوع سیستم بسیار بالاست.دلایل ایجاد سیستمعاملیک سیستم کامپیوتری پیشرفته از یک یا چند پردازنده، مقداری حافظه اصلی، دیسکها، چاپگرها، صفحهکلید، صفحه نمایش، واسطهای شبکهای و دیگر دستگاههای ورودی و خروجی تشکیل شدهاست. اگر سیستم یکپارچهای برای مدیریت این منابع وجود نداشته باشد، هر برنامه باید به تنهایی این کار را انجام دهد. سیستمعامل یک لایه نرمافزاری فراهم میکند که وظیفه مدیریت منابع سیستم را از دوش برنامههای کاربردی رهانیده و کار برنامهنویسی را سادهتر مینماید؛ که با توجه به نسخههای جدید سیستم عاملها که به دلیل بهرهمندی از تکنولوژی گرافیک و امکان استفاده از ماوس، امکان استفاده ساده و آسان را برای کاربران مبتدی فراهم نمودهاست. در حقیقت سیستمعامل واسط بین سختافزار رایانه و کاربر میباشد.وظایف سیستمعاملسیستمعامل دو کار عمده انجام میدهد:در نگرش پایین به بالا، منابع منطقی (مانند فایلها) و منابع فیزیکی (مانند دستگاههای سختافزاری) رایانه را مدیریت و کنترل میکند.در نگرش بالا به پایین، وظیفه سیستمعامل این است که یک ماشین توسعه یافته[یادداشت ۳]یا ماشین مجازی را به کاربران ارائه کند تا آنها بتوانند آسانتر برنامهنویسی نمایند و درگیر پیچیدگیهای سختافزاری رایانه نشوند.[نیازمند منبع]به طور کلی، وظایف سیستمعامل شامل موارد زیر است:استفاده بهینهتر از منابع و جلوگیری از به هدر رفتن آنهاتخصیص و آزاد سازی منابعاداره صفها و زمانبندی استفاده از منابعحسابداری میزان استفاده از منابعایجاد امنیتایجاد، حذف و اداره فرایندهاایجاد مکانیسمهای ارتباط بین فرایندهاو همگامسازی آنهامدیریت فایلهاو پوشههامدیریت حافظههایاصلی و جانبیبرقراری امکان دسترسی چندتایی و اجرای هم روند فرایندهابه اشتراک گذاری منابعتعیین راهکارهایی برای اداره بنبستجلوگیری از وضعیت رقابتی و تداخل یا در هم قفل شدن فرایندهاجلوگیری از گرسنگیسیستمعاملهای فعلیدر سالهای اخیر رقابت بیشتر بین سیستمعاملهای مایکروسافت ویندوز، اپل مک اواس و لینوکس جریان دارد که آماری که در ماه ژوییه ۲۰۱۱ توسط وبگاه W3Schools به ثبت رسیده حاکی از آن است که هم اکنون بیش از ۸۰ درصد کاربران اینترنت از سیستمعامل ویندوز استفاده میکنند.آمار موجود که مربوط به اوت ۲۰۱۰ میباشد به شرح زیر است:ویندوز ۷: ۳۷٫۸٪ویندوز ویستا: ۶٫۷٪ویندوز اکس پی: ۳۹٫۷٪ویندوز ۲۰۰۳: ۰٫۹٪مک اواس: ۸٫۱٪توزیعهای گنو/لینوکس: ۵٫۲٪از سیستمعاملهای مشهور کامپیوترهای شخصی میتوان به اسامی زیر اشاره کرد:یونیکسگنو/لینوکسمک اواسویندوز اکسپیویندوز ویستاویندوز انتیویندوز ۷ویندوز ۸ویندوز 8.1ویندوز 10ویندوز سیایسولاریسبی اس دیداسام وی اسویلزپالمهمچنین از سیستمعاملهای موجود روی گوشیهای تلفن همراه نسل جدید میتوان به اسامی زیر اشاره کرد:اندرویدiOSویندوز موبایلویندوز فونسیمبینیوآیکیوبادابلک بریمیگوپالمتایزنتاریخچه سیستم عاملدر آغازاولین کامپیوترها فاقد سیستمعامل بودند. در اوایل سال ۱۹۶۴ فروشندگان کامپیوترهای تجاری ابزار کاملاً گستردهای را برای تسهیل توسعه، زمانبندی، و اجرای کارها روی یک سیستم پردازش دستهای فراهم میکردند. برای مثال رایانه تولید شده توسط UNI VAC.در ابتدا سیستمعامل روی مین فریمها مستقر میشد و کمی بعد سیستمعامل میکروکامپیوترهای ابتدایی که فقط از یک برنامه در هر زمان پشتیبانی میکردند و به یک زمانبند بسیار ابتدایی نیاز داشتند. هر برنامه زمانی که در حال اجرا بود تحت کنترل کامل ماشین قرار داشت. چند وظیفهای (اشتراک زمانی) اولین بار در مین فریمها و در ۱۹۶۰ عرضه شد. ابتدا کامپیوترها بسیار بزرگ و جاگیر بودند اما امروزه در کف یک دست جا میگیرند.مین فریمهامیکرو کامپیوترها میکروکامپیوترهای اولیه نیاز یا ظرفیت داشتن یک سیستمعامل پیچیده که روی مین فریمها توسعه یافته بود نداشتند.سيستم عامل سيستم عامل بدون شک مهمترين نرم افزار در کامپيوتر است . پس از روشن کردن کامپيوتر اولين نرم افزاری که مشاهده می گردد سيستم عامل بوده و آخرين نرم افزاری که قبل از خاموش کردن کامپيوتر مشاهده خواهد شد، نيز سيستم عامل است . سيستم عامل نرم افزاری است که امکان اجرای تمامی برنامه های کامپيوتری را فراهم می آورد. سيستم عامل با سازماندهی ، مديريت و کنترل منابع سخت افزاری امکان استفاده بهينه و هدفمند آنها را فراهم می آورد. سيتم عامل فلسفه بودن سخت افزار را بدرستی تفسير و در اين راستا امکانات متعدد و ضروری جهت حيات ساير برنامه های کامپيوتری را فراهم می آورد. تمام کامپيوترها از سيستم عامل استفاده نمی نمايند. مثلا" اجاق های مايکرويو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپيوتر بوده که از سيستم عامل استفاده نمی نمايند. در اين نوع سيستم ها بدليل انجام عمليات محدود و ساده، نيازی به وجود سيستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظير صفحه کليد و نمايشگرهای LCD ، در اختيار سيستم گذاشته می گردند. ماهيت عمليات انجام شده در يک اجاق گاز مايکروويو بسيار محدود و مختصر است، بنابراين همواره يک برنامه در تمام حالات و اوقات اجراء خواهد شد. برای سيستم های کامپيوتری که دارای عملکردی بمراتب پيچيده تر از اجاق گاز مايکروويو می باشند، بخدمت گرفتن يک سيستم عامل باعث افزايش کارآئی سيستم و تسهيل در امر پياده سازی برنامه های کامپيوتری می گردد. تمام کامپيوترهای شخصی دارای سيستم عامل می باشند. ويندوز يکی از متداولترين سيستم های عامل است . يونيکس يکی ديگر از سيستم های عامل مهم در اين زمينه است . صدها نوع سيستم عامل تاکنون با توجه به اهداف متفاوت طراحی و عرضه شده است. سيستم های عامل مختص کامپيوترهای بزرگ، سيستم های روبوتيک، سيستم های کنترلی بلادرنگ ، نمونه هائی در اين زمينه می باشند.سيستم عامل با ساده ترين تحليل و بررسی دو عمليات اساسی را در کامپيوتر انجام می دهد :مديريت منابع نرم افزاری و سخت افزاری يک سِستم کامپيوتری را برعهده دارد.پردازنده ، حافظه، فضای ذخيره سازی نمونه هائی از منابع اشاره شده می باشند .روشی پايدار و يکسان برای دستيابی و استفاده از سخت افزار را بدو ن نياز از جزئيات عملکرد هر يک از سخت افزارهای موجود را برای برنامه های کامپيوتری فراهم می نمايد اولين وظيفه يک سيستم عامل، مديريت منابع سخت افزاری و نرم افزاری است . برنامه های متفاوت برای دستيابی به منابع سخت افزاری نظير: پردازنده ، حافظه، دستگاههای ورودی و خروجی، حافطه های جانبی، در رقابتی سخت شرکت خواهند کرد. سيستم های عامل بعنوان يک مدير عادل و مطمئن زمينه استفاده بهينه از منابع موجود را برای هر يک از برنامه های کامپيوتری فراهم می نمايند.وظيفه دوم يک سيستم عامل ارائه يک رابط ( اينترفيس ) يکسان برای ساير برنامه های کامپيوتری است . در اين حالت زمينه استفاده بيش از يک نوع کامپيوتر از سيستم عامل فراهم شده و در صورت بروز تغييرات در سخت افزار سيستم های کامپيوتری نگرانی خاصی از جهت اجرای برنامه وجود نخواهد داشت، چراکه سيستم عامل بعنوان ميانجی بين برنامه های کامپيوتری و سخت افزار ايفای وظيفه کرده و مسئوليت مديريت منابع سخت افزاری به وی سپرده شده است .برنامه نويسان کامپيوتر نيز با استفاده از نقش سيستم عامل بعنوان يک ميانجی براحتی برنامه های خود را طراحی و پياده سازی کرده و در رابطه با اجرای برنامه های نوشته شده بر روی ساير کامپيوترهای مشابه نگرانی نخواهند داشت . ( حتی اگر ميزان حافظه موجود در دو کامپيوتر مشابه نباشد ) . در صورتی که سخت افزار يک کامپيوتر بهبود و ارتقاء يابد، سيستم عامل اين تضمين را ايجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حيات وسرويس دهی خود باشند. مسئوليت مديريت منابع سخت افزاری برعهده سيتم عامل خواهد بود نه برنامه های کامپيوتری، بنابراين در زمان ارتقای سخت افزار يک کامپيوتر مسئوليت سيتستم عامل در اين راستا اولويت خواهد داشت . ويندوز 98 يکی از بهترين نمونه ها در اين زمينه است . سيستم عامل فوق بر روی سخت افزارهای متعدد توليد شده توسط توليدکنندگان متفاوت اجراء می گردد. ويندوز 98 قادر به مديريت و استفاده از هزاران نوع چاپگر ديسک و ساير تجهيزات جانبی است .سيستم های عامل را از بعد نوع کامپيوترهائی که قادر به کنترل آنها بوده و نوع برنامه های کاربردی که قادر به حمايت از آنها می باشند به چهار گروه عمده تقسيم می نمايند.سيستم عامل بلادرنگ(RTOS). از اين نوع سيستم های عامل برای کنترل ماشين آلات صنعتی ، تجهيزات علمی و سيستم های صنعتی استفاده می گردد. يک سيستم عامل بلادرنگ دارای امکانات محدود در رابطه با بخش رابط کاربر و برنامه های کاربردی مختص کاربران می باشند. يکی از بخش های مهم اين نوع سيستم های عامل ، مديريت منابع موجود کامپيوتری بگونه ای است که يک عمليات خاص در زمانی که می بايست ، اجراء خواهند شد. تک کاربره - تک کاره. همانگونه که از عنوان اين نوع سيستم های عامل مشخص است، آنها بگونه ای طراحی شده اند که قادر به مديريت کامپيوتر بصورتی باشند که يک کاربر در هر لحظه قادر به انجام يک کار باشد. سيستم عامل Palm OSبرای کامپيوترهای PDA نمونه ای مناسب از يک سيستم عامل مدرن تک کاربره و تک کاره است . تک کا