محبوبترینها
نمایش جنگ دینامیت شو در تهران [از بیوگرافی میلاد صالح پور تا خرید بلیط]
9 روش جرم گیری ماشین لباسشویی سامسونگ برای از بین بردن بوی بد
ساندویچ پانل: بهترین گزینه برای ساخت و ساز سریع
خرید بیمه، استعلام و مقایسه انواع بیمه درمان ✅?
پروازهای مشهد به دبی چه زمانی ارزان میشوند؟
تجربه غذاهای فرانسوی در قلب پاریس بهترین رستورانها و کافهها
دلایل زنگ زدن فلزات و روش های جلوگیری از آن
خرید بلیط چارتر هواپیمایی ماهان _ ماهان گشت
سیگنال در ترید چیست؟ بررسی انواع سیگنال در ترید
بهترین هدیه تولد برای متولدین زمستان: هدیههای کاربردی برای روزهای سرد
در خرید پارچه برزنتی به چه نکاتی باید توجه کنیم؟
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1827213636
اصـــول طراحــــی سیـستـم های عـــامل
واضح آرشیو وب فارسی:سایت ریسک: mahdi761031-01-2009, 09:39 AMبا سلام خدمت تمامی دوستان عزیز مطالبی که در این تاپیک با عنوان طراحی سیستم های عامل می گذارم خانم نرگس شکری تهیه و تدوین کرده اند . من این مطالب را برای استفاده دانشجویان به تدریج در سایت خواهم گذاشت . منبع : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! باتشـــکر موفق باشید . mahdi761031-01-2009, 09:48 AMمقدمه سيستم عامل بدون شک مهمترين نرم افزار در کامپيوتر است. پس از روشن کردن کامپيوتر اولين نرم افزاری که مشاهده می گردد سيستم عامل بوده و آخرين نرم افزاری که قبل از خاموش کردن کامپیوترمشاهده خواهد شد، نيز سيستم عامل است . سيستم عامل نرم افزاری است که امکان اجرای برنامه های کامپيوتر را فراهم می آورد. سيستم عامل با سازماندهی ، مديريت و کنترل منابع سخت افزاری امکان استفاده بهينه و هدفمند آنها را فراهم می آورد. سيتم عامل فلسفه بودن سخت افزار را بدرستی تفسير و در اين راستا امکانات متعدد و ضروری جهت حيات ساير برنامه های کامپيوتری را فراهم می آورد تمام کامپيوترها از سيستم عامل استفاده نمی نمايند. مثلا" اجاق های مايکرويو که در آشپزخانه استفاده شده دارای نوع خاصی از کامپيوتر بوده که از سيستم عامل استفاده نمی نمايند. در اين نوع سيستم ها بدليل انجام عمليات محدود و ساده، نيازی به وجود سيستم عامل نخواهد بود. اطلاعات ورودی و خروجی با استفاده از دستگاههائی نظير صفحه کليد و نمایشگرها در اختيار سيستم گذاشته می گردند. ماهيت عمليات انجام شده در يک اجاق گاز مایکروویو بسيار محدود و مختصر است، بنابراين همواره يک برنامه درتمام حالات و اوقات اجرا خواهد شد برای سيستم های کامپيوتری که دارای عملکردی بمراتب پيچيده تر از اجاق گاز مايکروويو می باشند بخدمت گرفتن يک سيستم عامل باعث افزايش کارآئی سيستم و تسهيل در امر پياده سازی برنامه های کامپيوتری می گردد. تمام کامپيوترهای شخصی دارای سيستم عامل می باشند. ويندوز يکی ازمتداول ترين سيستم های عامل است . يونيکس يکی ديگر از سيستم های عامل مهم در اين زمينه است . صدها نوع سيستم عامل تاکنون با توجه به اهداف متفاوت طراحی و عرضه شده است. سيستم های عامل مختص کامپيوترهای بزرگ، سيستم های روبوتيک، سيستم های کنترلی بلادرنگ نمونه هائی در اين زمينه می باشند به طور کلی نرم افزارهای کامپیوتر به دو گروه تقسیم میشوند یکی برنامه های سیستمی که عملیات کامپیوتر را مدیریت میکنند و دیگری برنامههای کاربردی سیستم عامل (operatino system = os) اصلی ترین برنامه سیستمی است که به عنوان رابط بین کاربر و سخت افزار کامپیوتر عمل میکند سیستم عامل معمولا اولین برنامه ای است که پس از بوت شدن در حافظه بار میشود. پس از بار شدن قسمتی از سیستم عامل بطور دائم در حافظه (Resident) باقی میماند. قسمتهای دیگر با توجه به کاربرد از دیسک به حافظه آورده میشود به قسمت اصلی سیستم عامل که وظایف مهم آن را انجام میدهد هسته یا Kernelگفته میشود. هسته سیستم عامل برنامهای است که در تمامی اوقات بر روی کامپیوتر در حال اجراست سیستم عامل و معماری کامپیوتر اثر زیادی بر روی یکدیگر داشتهاند. یعنی جهت سهولت کار با سخت افزارهای جدید, سیستم عاملها توسعه یافتندو همچنین در اثنای طراحی سیستم عاملها , مشخص شد که تغییراتی در طراحی سخت افزار میتواند سیستم عاملها را ساده تر و کارآمدتر سازد mahdi761031-01-2009, 09:56 AMاهداف سیستم عامل سیستم عامل سه هدف اصلی دارد : - سهولت سیستم عامل استفاده از کامپیوتر را ساده میسازد. این بدان معناست که مثلاً کاربر یا برنامه نویس بدون درگیر شدن با مسائل سخت افزاری دیسکها، به راحتی فایلی را بر روی دیسک ذخیره و حذف کند . این کار در واقع با به کاربردن دستورات سادهای که فراخوان های سیستمی (System Calls) را صدا میزنند انجام پذیرد در صورت عدم وجود سیستم عامل کاربر و یا برنامه نویس میبایست آشنایی کاملی با سخت افزارهای مختلف کامپیوتر (مثل مانیتور فلاپی - کی بورد و غیره) داشته باشد و روتین هایی برای خواندن و نوشتن آنها به زبان سطح پایین بنویسد. از این جنبه به سیستم عامل به عنوان ماشین توسعه یافته (Extended machine) یا ماشین مجازی (Virtual machine) اطلاق میشود که واقعیت سخت افزار را از دید برنامه نویسان مخفی میسازد - کارآمدی هدف دوم سیستم عامل مدیریت منابع (Resource Management) میباشد, یعنی سیستم عامل باعث استفاده بهینه و سودمند از منابع سیستم میگردد. منظور از منابع: پردازندهها ,حافظهها ,دیسکها, ماوس ها چاپگر ها , فایلها , پورتها و غیره هستند. یک سیستم کامپیوتری منابع نرم افزاری و سخت افزاری بسیار دارد که ممکن است در حین اجراء برنامه لازم باشند , سیستم عامل همانند مدیر منابع عمل کرده و آنها را بر حسب نیاز به برنامههای مشخصی تخصیص میدهد - قابلیت رشد سیستم عامل باید به نحوی ساخته شده باشد که به طور موثر توسعه, آزمایش و معرفی قابلیتهای جدید سیستمی را بدون ایجاد مزاحمت در خدمات جاری , میسر سازد سيستم عامل يک رابط ( اينترفيس ) يکسان برای ساير برنامه های کامپيوتری ارائه می دهد. در اين حالت زمينه استفاده بيش از يک نوع کامپيوتر از سيستم عامل فراهم شده و در صورت بروز تغييرات در سخت افزار سيستم های کامپيوتری نگرانی خاصی از جهت اجرای برنامه وجود نخواهد داشت، چرا که سيستم عامل بعنوان ميانجی بين برنامه های کامپيوتری و سخت افزار ايفای وظيفه کرده و مسئوليت مديريت منابع سخت افزاری به وی سپرده شده است . برنامه نويسان کامپيوتر نيز با استفاده از نقش سيستم عامل بعنوان يک ميانجی براحتی برنامه های خود را طراحی و پياده سازی کرده و در رابطه با اجرای برنامه های نشسته شده بر روی ساير کامپيوترهای مشابه نگرانی نخواهند داشت . (حتی اگر میزان حافظه موجود در دو کامپيوتر مشابه نباشد ) . در صورتيکه سخت افزار يک کامپيوتر بهبود و ارتقاء يابد، سيستم عامل اين تضمين را ايجاد خواهد کرد که برنامه ها، در ادامه بدون بروز اشکال قادر به ادامه حيات و سرويس دهی خود باشند. مسئوليت مديريت منابع سخت افزاری برعهده سیستم عامل خواهد بود نه برنامه های کامپيوتری. بنابراين در زمان ارتقای سخت افزار يک کامپيوتر مسئوليت سیستم عامل در اين راستا اولويت خواهد داشت ويندوز يکی از بهترين نمونه ها در اين زمينه است . سيستم عامل فوق بر روی سخت افزارهای متعدد توليد شده توسط توليدکنندگان متفاوت اجرا می گردد. ويندوز قادر به مديريت و استفاده از هزاران نوع چاپگر ديسک و ساير تجهيزات جانبی است سيستم های عامل را از بعد نوع کامپيوترهائی که قادر به کنترل آنها بوده و نوع برنامه های کاربردی که قادر به حمايت از آنها می باشند به چهار گروه عمده تقسيم می نمایند - سيستم عامل بلادرنگ (RTOS ): از اين نوع سيستم های عامل برای کنترل ماشين آلات صنعتی ، تجهيزات علمی و سيستم های صنعتی استفاده می گردد. يک سيستم عامل بلادرنگ دارای امکانات محدود در رابطه با بخش رابط کاربر و برنامه های کاربردی مختص کاربران می باشند. يکی از بخش های مهم اين نوع سيستم های عامل ، مديريت منابع موجود کامپيوتری بگونه ای است که يک عمليات خاص در زمانی که می بايست ، اجراء خواهند شد - تک کاربره - تک کاره: همانگونه که از عنوان اين نوع سيستم های عامل مشخص است، آنها بگونه ای طراحی شده اند که قادر به مديريت کامپيوتر بصورتی باشند که يک کاربر در هر لحظه قادر به انجام يک کار باشد. سيستم عامل Palm OS برای کامپيوترهای نمونه ای مناسب از يک سيستم عامل مدرن تک کاربره و تک کاره است - تک کاربره – چندکاره: اکثر سيستم های عامل استفاده شده در کامپيوترهای شخصی از اين نوع می باشند. ويندوز و MacOS نمونه هائی در اين زمينه بوده که امکان اجرای چندين برنامه بطور همزمان را برای يک کاربر فراهم می نمايند. مثلا" يک کاربر ويندوز قادر به تايپ يک نامه با استفاده از يک واژه پرداز بوده و در همان زمان يک فايل از اينترنت گرفته و در همان وضعيت محتويات نامه الکترونيکی خود را برای چاپ بر روی چاپگر ارسال کرده باشد - چندکاربره: يک سيستم عامل چند کاربره ، امکان استفاده همزمان چندين کاربر از منابع موجود کامپيوتر را فراهم می آورند. منابع مورد نياز هر يک از کاربران می بايست توسط سيستم عامل بدرستی مدیریت شود تا در صورت بروز اشکال در منابع تخصيص يافته به يک کاربر، بر روند استفاده ساير کاربران از منابع مورد نظر اختلالی ايجاد نگردد. يونيکس، VMS و سيستم های عامل کامپيوترهای بزرگ نظير MVS، نمونه هائی از سيستم های عامل چندکاربره می باشند . در ادامه با توجه به شناخت مناسب بوجود آمده در دررابطه با انواع سيستم های عامل به عمليات و وظايف سيستم عامل اشاره خواهد شد. وظايف سيستم عامل پس از روشن نمودن کامپيوتر، اولین برنامه ای که اجراء می گردد ، مجموعه دستوراتی می باشند که در ROM ذخيره و مسئول بررسی صحت عملکرد امکانات سخت افزاری موجود می باشند. برنامه فوق (POST) ، پردازنده ، حافظه و ساير عناصر سخت افزاری را بررسی خواهد کرد . پس از بررسی موفقيت آمیز برنامه POST، در ادامه درايوهای ( هارد ، فلاپی ) سيستم فعال خواهند شد. در اکثر کامپيوترها پس از فعال شدن هارد ديسک ، اولين بخش سيستم عامل با نام Bootstrap Loader فعال خواهد شد. برنامه فوق صرفا" دارای يک وظيفه اساسی است : انتقال ( استقرار ) سيستم عامل در حافظه اصلی و امکان اجرای آن . برنامه فوق عمليات متفاوتی را بمنظور استقرار سيستم عامل در حافظه انجام خواهد داد. سيستم عامل دارای وظايف زير است: - مديريت پردازنده - مديريت حافظه - مديريت دستگاههای ورودی و خروجی - مدیریت حافظه جانبی - اينترفيس برنامه های کاربردی - رابط کاربر وظايف شش گانه فوق ، هسته عمليات در اکثر سيستم های عامل است . در ادامه به تشريح وظايف فوق اشاره می گردد . mahdi761031-01-2009, 10:01 AMمديريت پردازنده دو وظيفه مهم اوليه زير را دارد: - ايجاد اطمينان که هر پردازه و يا برنامه به ميزان مورد نياز پردازنده را برای تحقق عمليات خود ، اختيار خواهد کرد. - استفاده از بيشترين سيکل های پردازنده برای انجام عمليات. ساده ترين واحد نرم افزاری که سيستم عامل بمنظور زمانبندی پردازنده با آن درگير خواهد شد ، يک پردازه و يا يک Thread خواهد بود. موقتا" می توان يک پردازه را مشابه يک برنامه در نظر گرفت ، در چنين حالتی مفهوم فوق ( پردازه ) ، بيانگر يک تصوير واقعی از نحوه پردازش های مرتبط با سيستم عامل و سخت افزار نخواهد بود. برنامه های کامپيوتری ( نظير واژه پردازها بازيهای کامپيوتری و ...) در حقيقت خود يک پردازه می باشند ، ولی برنامه های فوق ممکن است از خدمات چندين پردازه ديگر استفاده نمايند. مثلا" ممکن است يک برنامه از پردازه ایی بمنظور برقراری ارتباط با ساير دستگاههای موجود در کامپيوتر استفاده نمايد. پردازه های فراوان ديگری نيز وجود دارد که با توجه به ماهيت عمليات مربوطه ، بدون نياز به محرک خارجی (نظير يک برنامه) فعاليت های خود را انجام می دهند. يک پردازه ، نرم افزاری است که عمليات خاص و کنترل شده ای را انجام می دهد کنترل يک پردازه ممکن است توسط کاربر ، ساير برنامه های کاربردی و يا سيستم عامل صورت پذيرد. سيستم عامل با کنترل و زمانبندی مناسب پردازه ها زمينه استفاده از پردازنده را برای آنان ، فراهم می نمايد. در سيستم های تک - کاره ، سيستم زمانبندی بسيار روشن و مشخص است . در چنين مواردی، سيستم عامل امکان اجرای برنامه را فراهم و صرفا" در زمانيکه کاربر اطلاعاتی را وارد و يا سيستم با وقفه ای برخورد نمايد ، روند اجراء متوقف خواهد شد. وقفه ، سيگنال های خاص ارسالی توسط نرم افزار و يا سخت افزار برای پردازنده می باشند. در چنين مواردی منابع صادر کننده وقفه درخواست برقراری يک ارتباط زنده با پردازنده برای اخذ سرويس و يا ساير مسائل بوجود آمده ، را می نمايند. در برخی حالات سيستم عامل پردازه ها را با يک اولويت خاص زمانبندی می نمايد . در چنين حالتی هر يک از پردازه ها با توجه به اولويت نسبت داده شده به آنان ، قادر به استفاده از زمان پردازنده خواهند بود. در اين چنين موارد ، در صورت بروز وقفه ، پردازنده آنها را ناديده گرفته و تا زمان عدم تکميل عمليات مورد نظر توسط پردازنده ، فرصت پرداختن به وقفه ها وجود نخواهد داشت . بديهی است با توجه به نحوه برخورد پردازنده ( عدم توجه به وقفه ها ) ، در سريعترين زمان ممکن عمليات و فعاليت جاری پردازنده به اتمام خواهد رسيد. برخی از وقفه ها با توجه به اهميت خود ( نظير بروز اشکال در حافظه و يا ساير موارد مشابه ) ، قابل اغماص توسط پردازنده نبوده و می بايست صرفنظر از نوع و اهميت فعاليت جاری ، سريعا" به وقفه ارسالی پاسخ مناسب را ارائه گردد. پردازنده ، با توجه به سياست های اعمال شده سيستم عامل و بر اساس يک الگوريتم خاص ، در اختيار پردازه های متفاوت قرار خواهد گرفت . در چنين مواردی پردازنده مشغول بوده و برای اجراء ، پردازه ایی را در اختيار دارد. در زماني که پردازنده درگير يک پردازه است ، ممکن است وقفه هائی از منابع متفاوت نرم افزاری و يا سخت افزاری محقق گردد. در چنين وضعيتی با توجه به اهميت و جايگاه يک وقفه ، پردازنده برخی از آنها را ناديده گرفته و همچنان به فعاليت جاری خود ادامه داده و در برخی موارد با توجه به اهميت وقفه ، فعاليت جاری متوقف و سرويس دهی به وقفه آغاز خواهد شد. در سيستم های عامل " تک - کاره " ، وجود وقفه ها و نحوه مديريت آنها در روند اجرای پردازه ها تاثير و پيچيدگی های خاص خود را از بعد مديريتی بدنبال خواهد داشت . در سيستم های عامل "چند - کاره " عمليات بمراتب پيچيده تر خواهد بود. در چنين مواردی می بايست اين اعتقاد بوجود آيد که چندين فعاليت بطور همزمان در حال انجام است . عملا" پردازنده در هر لحظه قادر به انجام يک فعاليت است و بديهی است رسيدن به مرز اعتقادی فوق ( چندين فعاليت بطور همزمان ) مستلزم يک مديريت قوی و طی مراحل پيچيده ای خواهد بود. در چنين حالتی لازم است که پردازنده در مدت زمان يک ثانيه هزاران مرتبه از يک پردازه به پردازه ديگر سوئيچ کند تا امکان استفاده چندين پردازه از پردازنده را فراهم نمايد . در ادامه نحوه انجام عمليات فوق ، تشريح می گردد: - یک پردازه بخشی از حافظه RAM را اشغال خواهد کرد - پس از استقرار بيش از يک پردازه در حافظه ، پردازنده بر اساس يک زمانبندی خاص ، فرصت اجرا را به يکی از پردازه ها خواهد داد. - پردازنده ، بر اساس تعداد سيکل های خاصی پردازه را اجراء خواهد کرد. - پس ازاتمام تعداد سيکل های مربوطه ، پردازنده وضعيت پردازه ( مقاير ريجسترها و ...) را ذخيره به پردازه اتمام زمان مربوطه را اعلام می نمايد. - پردازنده در ادامه اطلاعات ذخيره شده در رابطه با پردازه ديگر را فعال ( ريجسترها و ...) و زمينه اجرای پردازه دوم فراهم می گردد. - پس ازاتمام تعداد سيکل های مربوطه ، پردازنده وضعيت پردازه ( مقاير ريجسترها و ...) را ذخيره و به پردازه اتمام زمان مربوطه را اعلام و مجددا" پردازه اول جهت اجراء فعال خواهد گرديد. تمام اطلاعات مورد نياز بمنظور مديريت يک پردازه در ساختمان داده ای خاص با نام PCB ( Process Control Block) ،نگهداری می گردد. پردازنده در زمان سوئيچ بين پردازه ها از آخرين وضعيت هر پردازه با استفاده از اطلاعات ذخيره شده در PCB آگاهی پيدا کرده و در ادامه زمينه اجرای پردازه مورد نظر بر اساس تعداد سيکل های در نظر گرفته شده فراهم خواهد شد. - برای هر پردازه يک ID که نمايانگر پردازه خواهد بود. - اشاره گری که نشاندهنده آخرين محل اجرای پردازه است. - محتويات ريجستر ها - وضعيت سوئيچ ها و متغيرهای مربوطه - اشاره گره هائی که حد بالا و پايين حافظه مورد نياز پردازه را مشخص خواهد کرد. - اولويت پردازه - وضعيت دستگاههای ورودی و خروجی مورد نياز پردازه هر زمان که اطلاعات مربوط به پردازه ای تغيير يابد ، ( پردازه از حالت "آماده " تبديل به حالت "اجراء " و يا از حالت " اجراء " به حالت "انتظار" و يا "آماده " سوئيچ نمايد ) اطلاعات ذخيره شده در PCB استفاده و بهنگام خواهند شد. عمليات جايگزينی پردازه ها، بدون نظارت و ارتباط مستقيم کاربر انجام و هر پردازه به ميزان کافی از زمان پردازنده برای اتمام عمليات خود استفاده خواهد کرد. در اين راستا ممکن است ، کاربری قصد اجرای تعداد بسيار زيادی از پردازه ها را بصورت همزمان داشته باشد. در چنين مواردی است ، پردازنده خود نيازمند استفاده از چندين سيکل زمانی برای ذخيره و بازيابی اطلاعات مربوط به هر يک از پردازه ها خواهد بود. در صورتيکه سيستم عامل با دقت طراحی نشده باشد و يا پردازه های زيادی فعاليت خود را آغاز کرده باشند، مدت زمان زيادی از پردازنده صرف انجام عمليات سوئيچينگ بين پردازه ها شده و عملا" در روند اجرای پردازه ها اختلال ايجاد می گردد. وضعيت بوجود آمده فوق را Thrashing می گويند. در چنين مواردی کاربر می بايست نسبت به غيرفعال نمودن برخی از پردازه ها اقدام تا سيستم مجددا" در وضعيت طبيعی قرار گيرد. يکی از روش هائی که طراحان سيستم عامل از آن استفاده تا امکان ( شانس) تحقق Thrashingرا کاهش دهند ، کاهش نياز به پردازه جديد برای انجام فعاليت های متفاوت است . برخی از سيستم های عامل ازيک پردازه " - lite "به نام Thread استفاده می نمايند. Thread از لحاظ کارآئی همانند يک پردازه معمولی رفتار نموده ولی نيازمند عمليات متفاوت ورودی و خروجی و يا ايجاد ساختمان داده PCB مشابه يک پردازه عادی نخواهد بود. يک پردازه ممکن است باعث اجرای چندين Thread و يا ساير پردازه های ديگر گردد. يک Thread نمی تواند باعث اجرای يک پردازه گردد. تمام موارد اشاره شده در رابطه با زمانبندی با فرض وجود يک پردازنده مطرح گرديده است . در سيستم هائی که دارای دو و يا بيش از دو پردازنده می باشند ، سيستم عامل حجم عمليات مربوط به هر پردازنده را تنظيم و مناسب ترين روش اجراء برای يک پردازه در نظر گرفته شود . سيستم های عامل نامتقارن ، از يک پردازنده برای انجام عمليات مربوط به سيستم عامل استفاده و پردازه های مربوط به برنامه های کاربردی را بين ساير پردازه ها تقسيم می نمايند. سيستم های عامل متقارن ، عمليات مربوط به خود و عمليات مربوط به ساير پردازه ها را بين پردازه های موجود تقسيم می نمايند. در اين راستا سعی می گردد که توزيع عمليات برای هر يک از پردازه ها بصورت متعادل انجام گردد. mahdi761031-01-2009, 10:05 AMسيستم عامل در رابطه با مديريت حافظه دو عمليات اساسی را انجام خواهد داد : 1- هر پردازه بمنظور اجراء می بايست دارای حافظه مورد نياز و اختصاصی خود باشد. 2- از انواع متفاوتی حافظه در سيستم استفاده تا هر پردازه قادر به اجراء با بالاترين سطح کارآئی باشد. سیستم های عامل در ابتدا می بايست محدوده های حافظه مورد نياز هر نوع نرم افزار و برنامه های خاص را فراهم نمايند. مثلاً فرض کنید،سيستمی دارای يک مگابايت حافظه اصلی باشد. سيستم عامل کامپيوتر فرضی، نيازمند 300 کيلو بايت حافظه است سيستم عامل در بخش انتهائی حافظه مستقر و به همراه خود درايورهای مورد نياز بمنظور کنترل سخت افزار را نيز مستقر خواهد کرد درايورهای مورد نظر به 200 کيلو بايت حافظه نياز خواهند داشت. بنابراين پس از استقرار سيستم عامل بطور کامل در حافظه، 500 کيلو بايت حافظه باقيمانده و از آن برای پردازش برنامه های کاربردی استفاده خواهد شد. زماني که برنامه های کاربردی در حافظه مستقر می گردند، سازماندهی آنها در حافظه بر اساس بلاک هائی خواهد بود که اندازه آنها توسط سيستم عامل مشخص خواهد شد. در صورتيکه اندازه هر بلاک 2 کيلوبايت باشد، هر يک ازبرنامه های کاربردی که در حافظه مستقر می گردنند، تعداد زيادی از بلاک های فوق را (مضربی از دو خواهد بود)، بخود اختصاص خواهند داد. برنامه ها در بلاک هائی با طول ثابت مستقر می گردند. هر بلاک دارای محدوده های خاص خود بوده که توسط کلمات چهار و يا هشت بايت ايجاد خواهند شد. بلاک ها ومحدوده های فوق اين اطمينان را بوجود خواهند آورد که برنامه ها در محدوده های متداخل مستقر نخواهند شد. پس از پر شدن فضای 500 کيلوبايت اختصاصی برای برنامه های کاربردی، وضعيت سيستم به چه صورت تبديل خواهد گردید؟در اغلب کامپيوترها،میتوان ظرفيت حافظه را ارتقاء و افزايش داد. مثلاً RAM موجود را از يک مگابايت می توان ميزان حافظه به دو مگابايت ارتقاء داد. روش فوق يک راهکار فيزيکی برای افزايش حافظه بوده که در برخی موارد دارای چالش های خاص خود می باشد. در اين زمينه می بايست راهکارهای ديگر نيز مورد بررسی قرار گيرند. اغلب اطلاعات ذخيره شده توسط برنامه ها در حافظه، در تمام لحظات مورد نياز نخواهد بود. پردازنده در هر لحظه قادر به دستيابی به يک محل خاص از حافظه است. بنابراين اکثر حجم حافظه در اغلب اوقات غير قابل استفاده است. از طرف ديگر با توجه به اينکه فضای ذخيره سازی حافظه ها ی جانبی نظير ديسک ها بمراتب ارزانتر نسبت به حافظه اصلی است،می توان با استفاده از مکانيزم هائی اطلاعات موجود در حافظه اصلی را خارج و آنها را موقتاً بر روی هارد ديسک ذخيره نمود. بدين ترتيب فضای حافظه اصلی آزاد و در زماني که به اطلاعات ذخيره شده بر روی هارد ديسک نياز باشد، مجدداً آنها را در حافظه مستقر کرد. روش فوق " مديريت حافظه مجازی " ناميده می شود. حافطه های ذخيره سازی ديسکی، يکی از انواع متفاوت حافظه موجود بوده که می بايست توسط سيستم عامل مديريت گردد. حافطه های با سرعت بالایCache، حافظه اصلی و حافظه های جانبی نمونه های ديگر ازحافظه بوده که توسط سيستم عامل مديريت می گردند. mahdi761031-01-2009, 10:09 AMدستيابی سيستم عامل به سخت افزارهای موجود ازطریق برنامه های خاصی با نام "درايور" انجام می گيرد. درايور مسئوليت ترجمه بين سيگنال های الکترونيکی زير سيستم های سخت افزاری و زبانهای برنامه نويسی سطح بالاو سيستم عامل و برنامه های کاربردی را را برعهده خواهد داشت. مثلاً درايورها اطلاعاتی را که سيستم عامل بصورت يک فايل تع سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 353]
-
گوناگون
پربازدیدترینها