دربارهی کتاب سیستمهای عامل (با رویکرد حل مسائل) دکتر حقیقت
کتاب سیستمهای عامل نشر کتاب پارسه به صورت ساده، روان و طبقه بندی شده تمام مفاهیم اساسی و نکات لازم برای طراحی سیستمهای عامل مدرن را با رویکرد حل مسائلی مانند تستهای آزمون کارشناسی ارشد در اختیار دانشجویان، اساتید و تمام علاقمندان به علوم کامپیوتر و سیستمهای عامل قرار میدهد.
در کتاب سیستم های عامل پارس رسانه، با جمعآوری حدود 250 تست، یک مجموعهی کامل و کم نظیر از کلیهی تستهای سیستم عامل کنکورهای کارشناسی ارشد مهندسی کامپیوتر و آی تی، با حل تشریحیِ مفصل به علاقه مندان عرضه شده است. گفتنی است که سادگی و روانیِ ارائه مطالب در کنار کامل بودن اثر، و در بر گرفتن تمامی سرفصلهای درس، این کتاب را برای درک مفاهیم سیستمهای عامل و آشنایی با اصول طراحی آن ایدهآل ساخته است.
علاوه بر این که تلاش زیادی به عمل آمده تا این کتاب با ارائه راه حلهای کوتاه تستی، پاسخگوی نیازهای دانشجویان شرکت کننده در آزمونها باشد، نویسنده سعی کرده با ارائه راه حلهای مفصلِ تشریحی، ضمن آموزش کامل روشهای حل مسئله بدون نیاز به استاد، این کتاب را برای تدریس در دانشگاهها و آماده کردن دانشجویان برای امتحانات داخلیِ دانشگاهها نیز قابل استفاده کند.
کتاب "سیستمهای عامل" مشتمل بر هشت فصل میباشد: 1- سخت افزار کامپیوتر و مفاهیم پایه 2- مفاهیم سیستم عامل 3- فرآیندها و زمان بندی پردازنده 4- همروندی- انحصار متقابل و همگام سازی 5- همروندی- بن بست 6- مدیریت I /O و دیسک 7- مدیریت حافظه 8- حافظه مجازی
سیستم عامل (Operating System)، اساسیترین برنامه سیستمی است که کامپیوتر را راه اندازی کرده و تا هنگامی که کامپیوتر روشن است، مدیریت تمام منابع سیستم را به عهده میگیرد و زمینه و واسطی را فراهم میسازد که برنامههای کاربردی میتوانند به راحتی بر روی آن نوشته شوند. به عبارت دیگر، از دو دیدگاه مختلف، سیستمهای عامل دو نقش اساسیِ مجزا و مستقل را ایفا میکنند:
1- مدیر منابع (Resource Manager)
2- ماشین توسعه یافته (Extended Machine) یا ماشین مجازی (Virtual Machine)
از دیدگاه مدیریت منابع، وظیفه سیستم عامل، مدیریت کارآمد بخشهای مختلف سیستم است. از دیدگاه ماشین توسعه یافته، وظیفه سیستم عامل، تهیه یک ماشین مجازی برای کاربر است که استفاده از آن خیلی راحتتر از ماشین واقعی میباشد.
بخشی از کتاب سیستمهای عامل پارسه
فصل هشتم: حافظه مجازی
الگوریتم جایگزینی صفحه:
هنگامی که یک نقص صفحه اتفاق میافتد و همه قاب های صفحه پر است، سیستم عامل باید یک صفحه را انتخاب کرده و از حافظه خارج کند تا جا برای صفحه جدید باز شود. اگر در صفحهای که باید از حافظه بیرون برود، تغییراتی صورت گرفته باشد (صفحه کثیف باشد)، باید ابتدا آن صفحه به دیسک منتقل شود تا نسخهای از صفحه که بر روی دیسک قرار دارد، به روز در آید. اما اگر تغییری در آن صفحه صورت نگرفته باشد (مثلاً مانند صفحهای که حاوی کد برنامه است)، احتیاجی به دوباره نویسی صفحه در دیسک نیست؛ زیرا دیسک خودش به روز است. بدین ترتیب صفحه ورودی جایگزین صفحه خروجی خواهد شد.
برای افزایش کارایی سیستم، الگوریتمهای جایگزینی صفحه Replacement Algorithms گوناگونی پیشنهاد شده است. خیلی از این الگوریتمها سعی میکنند تا صفحهای را انتخاب کنند که از آن کمتر استفاده میشود؛ زیرا اگر صفحهای را انتخاب کنیم که نرخ استفاده از آن بالا است، مجبوریم در آیندهای نزدیک دوباره آن را به حافظه برگردانیم. در واقع، این دسته از الگوریتم ها، بر اساس اصل مراجعات محلی، از گذشته برای تخمین آینده استفاده میکنند.
توجه به این نکته مهم است که مسئله «جایگزینی صفحه» در سایر حوزههای طراحی کامپیوتر نیز مطرح میشود. برای مثال، بیشتر کامپیوترها دارای یک یا چند حافظه نهان متشکل از بلوکهای حافظه 64 بیتی یا 32بیتی اخیراً استفاده شده هستند. هنگامی که حافظه نهان پر میشود، بلوکهایی برای حذف و جایگزین شدن انتخاب میشوند.
این مشکل دقیقاً با مسئله جایگزینی صفحه مورد نظر ما یکسان است به جز آن که در مقیاس زمانی کوچکتری مطرح میشود (این کار در چند نانوثانیه انجام میشود، نه مانند جایگزینی صفحه در چند میلی ثانیه). دلیل مقیاس زمانی کوچکتر این است که مشکل فقدان بلوکهای حافظه نهان فقط از طریق حافظه اصلی برطرف میشود و زمان جستجو و تأخیر چرخشی دیسک را ندارد.
فرض کنید که یک سوپرمارکت داریم که 1000 قفسه در فروشگاه دارد. مدیر سوپرمارکت در هر قفسه یک نوع کالا قرار میدهد. یک انبار در زیر زمین وجود دارد که که 10000 نوع کالا در آن نگهداری میشود. هنگامی که یک مشتری درخواست یک کالا میکند، اگر آن کالا در یک قفسه باشد، به وی داده میشود و اگر در قفسههای فروشگاه نباشد، باید از انبار به یک قفسه در فروشگاه منتقل شود.
اگر همه قفسهها پر باشد، باید یکی از کالاها به انبار منتقل شود و کالای جدید جایگزین آن شود. چون رفت و آمد به زیرزمین وقت گیر و خسته کننده است، مدیر فروشگاه باید کالایی را برای جایگزینی انتخاب کرده و به انبار منتقل کند که دوباره به زودی مورد نیاز واقع نشود. در این قیاس، سوپرمارکت به جای کامپیوتر، فروشگاه به جای حافظه اصلی، قفسهها به جای قابها، کالاها به جای محتویات صفحات و انبار به جای دیسک مطرح شده است. اگر شما به جای مدیر فروشگاه باشید، کدام کالا را از فروشگاه خارج میکنید؟
کتاب سیستمهای عامل (کارشناسی ارشد) تألیف ابوالفضل طرقی حقیقت توسط انتشارات پارسه به چاپ رسیده است.
فهرست
کتاب سیستمهای عامل
فصل اول: سخت افزار کامپیوتر و مفاهیم پایه
پردازنده
سلسله مراتب حافظه
تصویر فرایند در حافظه اصلی
پشته
وقفه
ورودی / خروجی
بافر
حفاظت سخت افزاری
پرسشها
پاسخ نامه تشریحی
فصل دوم: مفاهیم سیستم عامل
سیستم عامل چیست؟
تاریخچه سیستم های عامل
سیستم های چند پردازنده، شبکه ای و توزیع شده
سیستم های عامل بلادرنگ و تعبیه شده
فرایندها
فایلها
فراخوان های سیستمی
ساختار سیستم عامل
پرسش ها
پاسخ نامه تشریحی
فصل سوم: فرآیندها و زمان بندی پردازنده
مقدمهای بر فرایندها
نخ ها (Threads)
زمان بندی
پرسشها
پاسخ نامه تشریحی
فصل چهارم: همروندی: انحصار متقابل و همگام سازی
مفاهیم اولیه IPC
انحصار متقابل
پرسشها
پاسخ نامه تشریحی
فصل پنجم: همروندی: بن بست
اصول بن بست
راهبردهای اداره بن بست
پرسش ها
پاسخنامه تشریحی
فصل ششم: مدیریت I /O و دیسک
لایه های نرم افزار I /O
مدیریت دیسک
پرسشها
پاسخ نامه تشریحی
فصل هفتم: مدیریت حافظه
مدیریت حافظه ابتدایی
مبادله در پارتیشن بندی پویا
سیستم رفاقتی
جای گذاشت (روی هم گذاری)
اهداف و معیارهای طراحی مدیریت حافظه
پرسش ها
پاسخنامه تشریحی
فصل هشتم: حافظه مجازی
صفحه بندی
قطعه بندی
صفحه بندی
صفحه بندی قطعه بندی شده
پرسش ها
پاسخ نامه تشریحی
- با رویکــرد حـل مسـائل
- نویسنده: ابوالفضل طرقی حقیقت
- انتشارات: پارسه
نظرات کاربران درباره کتاب سیستم های عامل | ابوالفضل طرقی حقیقت
دیدگاه کاربران