چکیده

با گسترش شبکه های کامپیوتری، نیاز به انجام محاسبات گسترده و ایجاد ارتباطات سریع بین سیستم های کامپیوتری افزایش پیدا کرده است؛ یکی از پیچیدگی های این ارتباطات، نـاهمگن بودن سیستمهای سرویس دهنده و سرویس گیرنده است، لذا برای افزایش توان محاسـباتی و حل مشکل ناهمگونی در شبکه، سیستمهای تـوزیعی مـورد اسـتفاده وسـیع قـرار گرفتـه انـد. سیستمهای توزیعی مجموعهای از کامپیوترهای مستقل هستند که برای کاربر خـود ماننـد یـک سیستم منسجم و منفرد به نظر میرسند. سیستم توزیعی بـه منظـور پشـتیبانی از کامپیوترهـا و شبکه های ناهمگن، غالبا به وسیله لایه هایی از نرم افزار سـازماندهی میشـوند. ارتبـاط بـین اشیایی که تحت بستر شبکه بصورت توزیع شده هستند، توسط میان افزار میسر میشود .میان افزار لایه های بین سیستم عامل شبکه و برنامه های کاربردی توزیع شده است بلکـه شـرایط محیطی نیز محدودیت هایی دارد. میان افزارها به چند دسته مهم تقسیم میشوند کـه هـر نـوع قابلیتهای خاص خودرا داراست کوربا یک نوع خاصی ازOMG است و دارای اهدفی مثل بهبود سیستمهای توزیعی و استفاده از برنامه نویسی شئ گرا، ایجاد بستری بـرای اینکـه زبانهـای نویسی مختلف بتوانند با ھم دیگر ارتباط برقرار کنند. استاندارد سـاختار معمـاری CORBA توسط گروه OMG و بهمنظور برقراری ارتباط بین اشیاء توزیعشـده تـدوین گردیـده اسـت. اشیائی که خود حاوی ماجولهای نرمافـزاری مـی باشـند. بـاوجودCORBA سیسـتم ھای توزیعی می توانند با سخت افزارها ، سیستم عامل ها، زبـان هـای برنامـه نویسـی مختلـف بـا یکدیگر ارتباط برقرار کنند.

×
کلمات کلیدی: سیستم های توزیع شده-میان افزار-CORBA-OMG-ORB

.۱ مقدمه

۱

سیستمهای توزیعی مجموعه ای از کامپیوترهای مستقل هستند که برای کاربر خود مانند یک سیستم منسجم و منفرد به نظـر میرسند. سیستم توزیعی به منظور پشتیبانی از کامپیوترها و شبکه هـای نـاهمگن، غالبـا بـه وسـیله لایـه هـایی از نـرم افـزار سازماندهی می شوند.بدان معنی که، به صورت منطقی بین یک لایه سطح بالاتر، شامل کـاربران و برنامـه هـای کـاربردی و یک لایه زیرین، حاوی سیستم عامل و امکانات ارتباطی قرار داده می شوند. به همین دلیل، این نـوع سیسـتم تـوزیعی، میـان افزار نامیده میشود. میان افزارها به چند دسته مهم تقسیم میشوند که هر نوع قابلیتهای خـاص خـود را داراسـت. ایـن امکـان وجود دارد که شی هایی که روی ماشینهای مختلف مستقر هستند ناهمگن باشند.این ماشینها ممکن است نسبت بـه یکـدیگر ساختار پردازنده و سیستم عامل متفاوتی داشته باشند. ممکن است این شی ها با زبانهای برنامه نویسی متفـاوتی نوشـته شـده باشند و یا حتی به یک میان افزار متصل نباشند. با توجه به همه این تفاوت های مختلف از جهت ناهمگونی باید خـاطر نشـان کرد که برای برنامه نویس سطح کاربرد، باید تمام این تفاوت ها بصورت شفاف باشد و قابل حس نباشد.[۱]