پشتیبانی: 09131253620
ارتباط با ما
تلگرام: 09131253620

برجسته ترین ها
گروه های مقاله ها
HyperLink


سیستم های عامل توزیع شده بخش بیست و یکم تاریخ درج: ١٣٩۴/٠۶/٣١

 تفاوت سیستم توزیع شده و شبکه کامپیوتری:
یک سیستم توزیع شده (distributed system) مجموعه ایست از چندین کامپیوتر مستقل ،که کاربر آنرا به شکل یک سیستم واحد و متناسب می بیند.در این سیستم ها معمولا یک لایه نرم افزاری (روی سیستم عامل ) بنام میان افزار(middleware) است، که مدل مورد نظر را پیاده سازی می کند.وب (world wide web) نمونه ای از یک سیستم توزیع شده است، که در آن همه چیز از دیدگاه کاربر یک سند(صفحه وب) به نظر می رسد.در شبکه کامپیوتری این تجانس مدل و نرم افزار وجود ندارد.کاربران به طور مستقیم با کامپیوتر ها در تماسند.هیچ کوششی برای ایجاد تجانس بین آنها صورت نمی گیرد.کاربر به روشنی تفاوت های نرم افزاری و سخت افزاری کامپیوتر ها را می بیند ، و اگر بخواهد برنامه ای را روی یکی از کامپیوتر ها اجرا کند،باید ابتدا وارد ان بشود(log in)  .در حقیقت یک سیستم توزیع شده نرم افزاری است که روی شبکه کار می کند.و تجانس و شفافیت آن توسط این نرم افزار تامین می شود. به همین دلیل تفاوت سیستم توزیع شده با یک شبکه بیشتر در نرم افزار(به ویژه سیستم عامل) نهفته است تا سخت افزار.

با این همه شباهت های زیادی نیز بین این دو وجود دارد.مثلا، سیستم های توزیع شده و شبکه هر دو به انتقال فایل نیاز دارند.تفاوت در این است که این کار را چه کسی انجام می دهد، سیستم یا کاربر.
سیستم های توزیع شده

نتيجه گيري:
نرم افزارها به دو دسته تقسيم مي شوند نرم افزار سيستمي و كاربردي كه سيستم عامل ها جزو نرم افزار هاي سيستمي به شمار ميروند و مهم ترين نرم افزار موجود در كامپيوتر مي باشند كه رابط بين كاربر و سخت افزار و نرم افزار هاي كاربردي محسوب ميشود كه ار اين نرم افزار بر روي كامپيوتر وجود نداشته باشد كامپيوتر بلا استفاده مي شود و ديگر كارايي را نخواهد داشت انواع و اقسام سيستم عامل وجود دارد مانند سيستم عامل هاي خانواده مايكرو سافت سيستم عامل هاي مك و لينوكي يونيكس وسيستم عامل تك كاره شبكه اي و... كه يكي از آنها نيز سيستم عامل توزيع شده است.
سیستم عامل توزیع شده در یک محیط شبکه‌ای اجراء می‌شود. در این سیستم قسمتهای مختلف برنامه کاربر بدون آنکه خود او متوجه شود می‌توانند همزمان در چند کامپیوتر مجزا اجراء شده و سپس نتایج نهایی به کامپیوتر اصلی کاربر بر گردند.
تعریف سیستم توزیع شده: هر سیستمی که بر روی مجموعه ای از ماشین ها که دارای حافظه اشتراکی نیستند، اجرا شده و برای کاربران به گونه ای اجرا شود که گویا بر روی یک کامپیوتر می باشند ، يک سيستم توزيع شده است. در يک سيستم توزيع شده : يک نرم افزار يا مجموعه نرم افزاری واحد و متحد الشکل بر روی هر گره اجرا می شود. همه ماشینها یک کرنل مشابه را اجرا می کند. هر کرنل منابع خود را کنترل می کند مواردی که در طراحی سیستم توزیع شده باید در نظر گرفت: شفافیت انعطاف پذیری قابلیت اطمینان کارایی خوب قابليت گسترش قابلیت اطمینان: در دسترس بودن یک فاکتور مهم مرتبط با اين سيستم ها است. طراحی نباید به گونه ای باشد که نیاز به اجرای همزمان کامپوننت های اساسی باشد. افزونگی بیشتر داده هاه باعث افزایش در دسترس بودن شده اما ناسازگاری را بیشتر میکند. قدرت تحمل نقص(Fault tolerance) باعث پوشاندن خطاهای ایجاد شده توسط کاربر می شود.کارآیی: بدون کارآیی مناسب کلیه موارد استفاده نرم افزار بی فایده می باشد. اندازه گیری کارايی در سيستم های توزيع شده کار آسانی نيست. برای رسيدن به کارايی بايد توازنی خاص در تعداد پیغامها و اندازه کامپوننهای توزیع شده بر قرار باشد.قابليت گسترش: قابليت گسترش یک اصل کلی برای توسعه سیستمهای توزیع شده می باشد. برای رسيدن به اين قابليت بايد از کامپوننتها، جداول و الگوریتمهای متمرکز دوری کرد. فقط باید از الگوریتمهای غیر متمرکز استفاده شود.کاربران نباید از این موضوع باخبر شوند که برنامه آنها در کجا به اجراء در می‌آید و یا فایلهای آنها در کجای شبکه قرار دارد و همه این کارها باید توسط سیستم عامل به صورت خودکار انجام گیرد. به عبارتی دیگر سیستم باید از دید کاربر شفاف باشد و هرچیز را با نام آن فراخوانی کند و کاری به آدرس آن نداشته باشد. بروز اشکال در سرويس دهنده . با توجه به اينکه عناصر يک سيستم توزيعی،  عموما" بصورت از راه دور اجراء می گردند، ما دارای چندين نقطه ( مکان) برای بروز اشکال خواهيم بود. بروز اشکال در يکی از نقاط ،  می تواند باعث بروز مسائل عمده ای در رابطه با عملکرد تمام برنامه توزيع شده گردد. بنابراين می بايست راهکارهای مناسب در خصوص مواجه شدن با چنين مواردی،  اتخاذ گردد .بروز اشکال در سرويس گيرنده . در صورتيکه سرويس دهنده ای وضعيت خاصی را ازطرف سرويس گيرنده ،  اخذ و  ذخيره می نمايد و سرويس گيرنده با اشکال مواجه گردد،  می بايست از روشی بمنظور اعلام بروز اشکال به سرويس دهنده استفاده کرد. تصميم گيری و نحوه برخورد با منابع در اختيار سرويس گيرنده نيز از جمله مواردی است که می بايست راهکارهای آن بدرستی مشخص گردد.تلاش برای فراخوانی مجدد . در صورتيکه يک متد از راه دور فراخوانده شود و از طرف سرويس دهنده واکنش لازم داده نشود،  نبايد تلاش مجددی برای فراخوانی متد صورت پذيرد. مثلا" در صورتيکه متدی برای محاسبه هزينه يک سفارش فراخوانده شده و سرويس دهنده درخواستی را دريافت تا سفارش را انجام ولی پاسخ گم گردد منطقی نخواهد بود  سفارش مربوطه مجددا" ارسال گردد . امنيت . در برنامه های توزيع شده فرصت های زيادی برای تهديد های امنيتی وجود دارد . در اين راستا لازم است از يکطرف به  مسائل تائيد اعتبار و صلاحيت قانونی   و از طرف ديگر به ايمن سازی ارتباطات بين يک سرويس گيرنده و يک سرويس دهنده ،  توجه جدی صورت پذيرد . حفاظت در مقابل انواع حملات اطلاعاتی از چالش های مهم در زمينه ايمن سازی برنامه های توزيع شده است .يکسان سازی زمان (Clock) . عمليات و فرآيندهای متعددی در برنامه های توزيع شده به پارامتر زمان ارتباط خواهد داشت .. مثلا" در يک سيستم سفارشات تا تکليف وضعيت نحوه پرداخت،  مشخص نگردد نمی توان اقدام به پردازش و ثبت سفارش مربوطه نمود. بنابراين می بايست در رابطه با نحوه همسان سازی کلاک(Clock)  کامپيوترهای متفاوت که در يک برنامه توزيع شده با يکديگر ارتباط دارند،  تصميم لازم اتخاذ گردد .یکی از مزایای مهم سیستمهای توزیع شده سرعت بالای اجرای برنامه‌هاست چرا که یک برنامه همزمان می‌تواند از چندین کامپیوتر برای اجراء شدنش استفاده کند.
چرا به برنامه های توزيع شده نياز داريم ؟ 
در اين رابطه دلايل متعددی عنوان می شود که مهمترين آنان عبارتند از : 
هزينه سيستم های Mainfarme  . يکی از اولين دلايل مهم ، هزينه های بالای سيستم های Mainframe است . اين مسئله از دو زاويه متفاوت قابل بررسی است : هزينه بالای سرمايه گذاری اوليه که بسياری  از سازمان ها و موسسات توان مالی آن را ندارند و دوم اينکه در اين مدل ، دارای صرفا" يک نقطه  آسيب پذير با ريسک بالا می باشيم . 
مالکيت اختصاصی داده ها. يکی از فاکتورهای مهم ديگر،  سياست های مربوط به مالکيت داده ها است . سازمان ها و موسسات که  دارای داده های اختصاصی خود می باشند،  علاقه مند به واگذاری مسئوليت مديريت داده های مربوطه ،  به ساير مکان های فيزيکی نمی باشند .امنيت . يکی ديگر از فاکتورهای مهم در اين زمينه موضوع امنيت است . برای يک سازمان ،  اولا" دستيابی به اغلب داده های آن می بايست بسادگی محقق گردد و ثانيا"  داده ها ی حساس موجود در  سازمان می بايست از بعد امنيتی،  ايمن نگهداری گردند . تامين دو خواسته فوق ( رويکردهای رقابتی  و رويکردهای امنيتی ) با جدا سازی فيزيکی داده ا از يکديگر محقق خواهد شد ( انباشت داده ها، با نگرش های متفاوت در رابطه با سرعت در دستيابی و ايمن در ذخيره سازی ، ضرورت وجود برنامه های توزيع شده را بخوبی نمايان می سازد )  مسائل فوق،   ضرورت حرکت بسمت ايجاد يک الگوی جديد بمنظور طراحی برنامه های کامپيوتری را مطرح و بر همين اساس نسل جديدی از برنامه های کامپيوتری با عنوان " برنامه های توزيع شده" در عرصه نرم افزار بوجود آمد
همچنین به علت توزیع شدن اطلاعات, بانکهای اطلاعاتی حجیم می‌توانند روی یکسری کامپیوترهای شبکه شده قرار بگیرند. و لازم نیست که همه اطلاعات به یک کامپیوتر مرکزی فرستاده شود(که در نتیجه این نقل و انتقالات حجیم زمان زیادی به هدر می‌رود.)
فرق سيستم عامل هاي معمولي با سيستم عامل توزيع شده در اين است كه در اولي يك كاربر وجود دارد كه دارد از يك نرم افزار خاص استفاده مي كند و كاربر آن يك نفر مي باشد ولي در سيستم عامل توزيع شده يك كامپيوتر نرم افزار را اجرا مي كند و ديگر كامپيوتر ها از آن استفاده مي كنند و در يك پايگاه داده مشخص اطلاعات آنها ذخيره ميشود و اين نوع سيستم عامل وظيفه دارد كه در اين نوع سيستم اختلالاتي براي شبكه بوجود نيايد 
 

تگها: distributed system   Mainfarme   سیستم توزیع شده   نتیجه گیری   
 

HyperLink

ارسال نظر در مورد این مطلب
نام :  
آدرس ایمیل :  
متن پیام :  
کد امنیتی :  
   
   
مهدی 1395/11/30

سلام لطفا تفاوت بین بسط پذیری با توسعه در سیستمهای توزیع شده را بگویید چه هست؟ جواب را برام ایمیل کنید باسپاس
 
این مطلب را به اشتراک بگذارید: