تاریخ بروزرسانی : 1397/08/02
نام بسته : سیستم عامل پیشرفته
———————————————————————–
فهرست
فصل اول: مقدمه
تعریف سیستم توزیع شده
اهداف
انواع سیستمهای توزیع شده
فصل دوم : معماری ها
سبکهای معماری
معماریهای سیستم
فصل سوم: فرآیندها
نخها
مجازی سازی
کلاینتها
سرورها
مهاجرت کد
فصل چهارم: ارتباطات
فراخوانی روال راه دور
ارتباط پیام گرا
ارتباط جریان گرا
ارتباطات چندپخشی
فصل پنجم: نام گذاری
نامها، شناسهها، و آدرسها
نامگذاری تخت
نام گذاری ساخت یافته
نامگذاری براساس صفت
فصل ششم: همگام سازی
همگام سازی ساعت
ساعتهای منطقی
انحصار متقابل
موقعیت یابی جهانی گرهها
الگوریتمهای انتخاب
فصل هفتم: سازگاری و تکثیر
مقدمه
مدلهای سازگاری مبتنی بر داده
مدلهای سازگاری کلاینت محور
مدیریت تکثیر
پروتکلهای سازگاری
فصل هشتم: تحملپذیری عیب
مقدمهای بر تحملپذیری عیب
برگشتپذیری فرآیند
ارتباط قابل اعتماد بین کلاینت- سرور
ارتباط قابل اعتماد بین اعضای گروه
تثبیت توزیع شده
ترمیم
فصل نهم: امنیت
مقدمهای بر امنیت
کانالهای امن
کنترلهای دستیابی
مدیریت امنیت
منابع این بسته درسی
بخش هایی از بسته درسی سیستم عامل پیشرفته
فصل اول: مقدمه
تعریف سیستم توزیع شده
تعریفهای گوناگونی از سیستمهای توزیع شده در متون آمده است که هیچ کدام از آنها کامل نیستند، و هیچ کدام نیز با دیگری سازگاری ندارد. برای اهداف ما، بیان ویژگیهای زیر کافی است:
سیستم توزیعشده، کلکسیونی از کامپیوترهای مستقل است که از دیدگاه کاربران مثل یک سیستم منسجم (coherent) و منفرد (single) عمل میکند.
این تعریف دو جنبهی مهم دارد. اولین جنبه این است که سیستم توزیع شده شامل مؤلفههایی (یعنی کامپیوترهایی) است که خودمختار هستند.
جنبهی دوم این است که کاربران (برنامهها یا انسانها) فکر میکنند که تنها با یک سیستم سروکار دارند. معنایش این است که مؤلفههای خودمختار باید همکاری داشته باشند. چگونگی انجام این همکاری، مهمترین نکتهی توسعهی سیستمهای توزیع شده است. توجه کنید که هیچ فرضیهای درباره نوع کامپیوترها وجود ندارد. در اصل، حتی فقط در داخل یک سیستم، انواع کامپیوترها از جمله کامپیوترهای بزرگ با کارایی بالا تا گرههای کوچکی در شبکههای حسگر میتوانند وجود باشند. به همین ترتیب، هیچ فرضیهای درباره روش اتصال کامپیوترها وجود ندارد. این جنبه را در ادامهی فصل بررسی خواهیم کرد.
به جای پرداختن بیشتر به تعریفها، بهتر است به ویژگیهای مهم سیستمهای توزیع شده بپردازیم. یک ویژگی مهم این است که تفاوتیهای بین کامپیوترها و روش اتصال بین آنها، اغلب از دید کاربران پنهان است. همین موضوع برای سازمان داخلی سیستم توزیع شده صادق است. ویژگی مهم دیگر این است که کاربران و برنامههای کاربردی میتوانند به طور یکنواخت و سازگار، با سیستم توزیع شده تعامل داشته باشند، و مهم نیست که این تعامل در کجا و در چه زمانی انجام میگیرد.
در اصل، بسط و توسعه سیستمهای توزیع شده باید آسان باشد. این ویژگی، نتیجهی مستقیم وجود کامپیوترهای مستقل، و مخفی بودن چگونگی اتصال آنها و تشکیل یک سیستم کل است. سیستم توزیع شده دائماً در دسترس است، گرچه ممکن است بخشی از آن موقتاً از دور خارج شده باشد. با این وجود، کاربران و برنامههای کاربردی نباید متوجه تعمیر یا تعویض بخشهای معیوب و افزودن بخشهای جدید برای ارائهی سرویس شوند. به منظور پشتیبانی از کامپیوترها و شبکههای ناهمگن و ارائهی دیدگاه تک سیستمی، سیستمهای توزیع شده معمولاً به وسیله لایهای از نرمافزار سازماندهی میشوند، یعنی، به طور منطقی بین لایهی بالاتر که شامل کاربران و برنامههای کاربردی است و لایهی زیرین که شامل سیستم عامل و امکانات ارتباطی پایه است. براین اساس، چنین سیستم توزیع شدهای، میان افزار نام دارد.
اهداف
از این که میتوان سیستمهای توزیع شده را ساخت، الزاماً به معنای خوب بودن این ایده نیست. با فناوری موجود، میتوان چهار درایو فلاپی روی یک کامپیوتر شخصی قرار داد. فقط به دلیل این که میتوان چنین کاری را انجام داد، اقدام به این کار، منطقی نیست. در این بخش، چهار هدف مهمی که باید برآورده شود تا ساخت سیستم توزیع شده ارزشمند باشد، بررسی میشوند.
دسترسی به منابع
هدف اصلی سیستم توزیع شده این است که کاربران (و برنامههای کاربردی) به راحتی به منابع راه دور دسترسی داشته باشند و آنها را به روش کنترل شده و مؤثر، به اشتراک بگذارند. منابع میتوانند هر چیزی باشند، مثل چاپگرها، کامپیوترها، تجهیزات ذخیرهسازی، دادهها، فایلها، صفحات وب و شبکهها. دلایل زیادی برای اشتراک منابع وجود دارد. یک دلیل روشن، صرفهجویی اقتصادی است. به عنوان مثال، اشتراک یک چاپگر بین چندین کاربر در یک اداره، اقتصادیتر از این است که برای هر کاربر یک چاپگر خریداری گردد.
نوشتههای تازه