🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Document Details

ZippyEmpowerment

Uploaded by ZippyEmpowerment

Tags

computer systems operating systems information technology

Full Transcript

‫الجامعة الوطنية اب‬ ‫األنظمة الموزعة‬ ‫مستوى ثالث (تقنية معلومات)‬ ‫اعداد د‪ /‬معاذ عبده الصبري‬ ‫‪Chapter 1: Introduction‬‬ ‫اعداد د‪ /‬معاذ عبده الصبري‬ ...

‫الجامعة الوطنية اب‬ ‫األنظمة الموزعة‬ ‫مستوى ثالث (تقنية معلومات)‬ ‫اعداد د‪ /‬معاذ عبده الصبري‬ ‫‪Chapter 1: Introduction‬‬ ‫اعداد د‪ /‬معاذ عبده الصبري‬ ‫جهاز الحاسوب‬ ‫جهاز الحاسوب‪:‬‬ ‫هو عبارة عن جهاز الكتروني مكون من مجموعة من الدوائر المتكاملة‪ ،‬التي يتم التحكم بها عبر مجموعة من البرمجيات لتمكنه من معالجة‬ ‫البيانات واألوامر وتخزينها وإخراجها حسب قواعد خاصة بسرعة فائقة ودقة متناهية‪.‬‬ ‫مكونات جهاز الحاسوب‪- :‬‬ ‫يتكون جهاز الحاسوب من‪:‬‬ ‫❑مكونات مادية (العتاد)‪:‬‬ ‫عبارة عن قطع الحاسوب المختلفة التي يمكن رؤيتها ولمسها وتمثل جسد جهاز الحاسوب‪.‬وتنقسم إلى‪-:‬‬ ‫ وحدات اإلدخال‬ ‫ وحدات المعالجة‬ ‫ وحدات اإلخراج‬ ‫ وحدات التخزين الثانوية‬ ‫❑مكونات برمجية (برامج النظام)‪:‬‬ ‫عبارة عن مكونات معنوية مجردة ال يمكن رؤيتها وال لمسها وتمثل روح الحاسوب‪.‬وتنقسم إلى ‪-:‬‬ ‫ نظام تشغيل‬ ‫ برامج تطبيقات وخدمات‬ ‫‪Defining Operating Systems‬‬ ‫نظام التشغيل )‪ (OS‬هو برنامج يعمل كواجهة بني أجهزة الكمبيوتر ومستخدم الكمبيوتر‪.‬‬ ‫وهو يوفر جمموعة من اخلدمات إلدارة أجهزة الكمبيوتر والتحكم فيها‪ ،‬مما يسمح للمستخدمني بتشغيل التطبيقات واالستفادة‬ ‫من موارد الكمبيوتر بكفاءة‪.‬يقوم نظام التشغيل مبهام أساسية مثل إدارة العمليات وإدارة الذاكرة وإدارة نظام امللفات وإدارة‬ ‫األجهزة‪.‬تتضمن أمثلة أنظمة التشغيل الشائعة ‪Microsoft Windows , macOS , Linux , Unix‬‬ ‫‪Operating System‬‬ ‫تعريف نظام التشغيل‪:‬‬ ‫هو عبارة عن البرمجيات المسؤولة عن تشغيل جهاز الحاسوب والتحكم بوحداته المادية وعن تنفيذ التطبيقات البرمجية‬ ‫التي يستخدمها المستخدم‪.‬‬ ‫عرف (‪ )Galvin‬نظام التشغيل بأنه‪:‬‬ ‫هو برنامج يدير أجهزة الحاسب‪.‬ويوفر أيضا أساسا للبرامج التطبيقية ويعمل كوسيط بين مستخدمي أجهزة الحاسب‬ ‫والحاسوب نفسه‪.‬‬ ‫أهداف نظام التشغيل الرئيسية هي‪:‬‬ ‫ تنفيذ تطبيقات المستخدم‪.‬‬ ‫ توفير بيئة مناسبة ومالئمة لالستخدام (‪)convenient‬‬ ‫ االستفادة القصوى من الموارد وذلك بجعلها تعمل بشكل فعال (‪)efficient‬‬ ‫يقوم نظام التشغيل بدورين رئيسيين‪:‬‬ ‫‪.1‬إدارة المكونات المادية والبرمجية للحاسب ‪ ،‬مثل ‪ :‬المعالج‪ ،‬الذاكرة‪ ،‬وحدات اإلدخال واإلخراج وكذلك الملفات‬ ‫والبرامج وصفحات الويب وغيرها‪.‬‬ ‫‪.2‬يعمل بطريقة فعالة لربط التطبيقات بالمكونات المادية بدون معرفة تفاصيلها‪.‬مما يسهل على مطوري البرامج‬ ‫كتابة تطبيقات ويجعلها تعمل على أكثر من جهاز‪.‬‬ ‫تصورات نظام التشغيل‬ ‫نظام التشغيل كمدير للموارد‪:‬‬ ‫يتولى نظام التشغيل مهمة إدارة الموارد المادية والبرمجية للحاسوب‪.‬‬ ‫المقصود بإدارة الموارد هو‪:‬‬ ‫‪ -1‬حجز المورد ( ‪ )allocate‬للبرنامج الذي يطلبه‪ ،‬ثم تحريره ( ‪ )free‬بعد االنتهاء منه وإتاحته لتستفيد منه‬ ‫برامج أخرى‪.‬‬ ‫‪ -2‬استخدام المورد بكفاءة واالستفادة منه االستفادة القصوى‪ :‬مثال إذا كان المعالج ينفذ في برنامج معين‪ ،‬وأحتاج هذا البرنامج إلى معلومة من‬ ‫لوحة المفاتيح )قد يستغرق وصول المعلومة وقتا ليس بِالقصير مقارنة مع سرعة المعالج(‪ ،‬في هذه الحالة سيقوم نظام التشغيل ِباالستفادة من‬ ‫المعالج في تنفيذ برنامج آخر ريثما تصل المعلومة من لوحة المفاتيح‪ ،‬هنا يكون نظام التشغيل قد استفاد من زمن المعالج في هذه الفترة‪.‬‬ ‫‪ -3‬العدل في استخدام الموارد‪ :‬يمنع نظام التشغيل البرامج من حجز الموارد واستخدامها لمدة طويلة‪.‬‬ ‫تصورات نظام التشغيل (يتبع‪)...‬‬ ‫نظام التشغيل كبرنامج تحكمي‪:‬‬ ‫يمكن النظر إلى نظام التشغيل كبرنامج يتحكم في تشغيل البرامج األخرى ويدير عملية تنفيذها لتفادي األخطاء وتجنب‬ ‫االستخدام غير السليم للحاسب وحماية البرامج عن بعضها البعض وعن نظام التشغيل‪.‬‬ ‫نظام التشغيل كنواة (‪:)Kernel‬‬ ‫نظام التشغيل هو ذلك الجزء الذي يتعامل ويدير المكونات المادية مباشرة‪ ،‬وهو النواة ( ‪ )kernel‬التي ال نراها وال‬ ‫نتعامل معها مباشرة‪ ،‬لكننا ال نستغني عن خدماتها التي هي سبب تشغيل جهاز الحاسوب وبقية البرامج والواجهات التي‬ ‫نتعامل معها‪.‬‬ ‫‪ Computer System Structure‬هيكلية النظام الحاسوبي‬ ‫يتكون النظام الحاسوبي من أربعة مكونات رئيسية هي‪-:‬‬ ‫ المكونات المادية (العتاد)‬ ‫ نظام التشغيل‬ ‫ التطبيقات‬ ‫ المستخدمين‬ ‫تشكل المكونات المادية للحاسوب مجتمعة نظاما معقدا في التعامل‪ ,‬مما أستوجب كتابة برامج تتحكم في إدارة جميع هذه‬ ‫المكونات وتستخدمها استخداما صحيحا‪ ,‬وتسمي هذه البرامج ببرامج النظام والتي من أهم وظائفها أدارة جميع هذه‬ ‫األجهزة ( المكونات المادية ) باإلضافة إلي تقديم واجهة بسيطة ومالئمة للمستخدم لكي يتمكن من تنفيذ أعماله والتعامل‬ ‫مع المكونات المادية واستثمارها‪.‬‬ ‫?‪What is an Operating System‬‬ ‫النواة هي الجزء األكثر أهمية في نظام التشغيل‪.‬إنها الواجهة األساسية بين األجهزة‬ ‫وعمليات الكمبيوتر‪.‬تقوم النواة بربط هذين االثنين من أجل ضبط الموارد بأكبر قدر ممكن‬ ‫من الفعالية‪.‬سميت بالنواة ألنها تعمل داخل نظام التشغيل‪ ،‬تما ًما مثل البذرة الموجودة داخل‬ ‫القشرة الصلبة‪.‬‬ ‫يوضح الشكل أدناه مكانه في نظام التشغيل‪.‬فهو يتحكم في جميع الوظائف الرئيسية‬ ‫ً‬ ‫جهازا لوحيًا أو سطح مكتب أو خاد ًما أو أي نوع آخر من‬ ‫لألجهزة‪ ،‬سواء كان‬ ‫األجهزة‪.‬‬ ‫تعد النواة أحد البرامج األولية التي يتم تحميلها على الذاكرة قبل أداة تحميل التشغيل ‪.‬‬ ‫ملفات اإلقالع مسؤولة عن ترجمة التعليمات لوحدة المعالجة المركزية ‪.‬فهي تدير الذاكرة‬ ‫وكذلك األجهزة الطرفية مثل لوحات المفاتيح والشاشات‪.‬‬ ‫‪Computer System Structure‬‬ ‫مكونات أنظمة الكمبيوتر ‪:‬‬ ‫األجهزة‬ ‫نظام التشغيل‬ ‫البرامج التطبيقية‬ ‫المستخدمين‬ ‫تصنيفات أنظمة التشغيل‬ ‫األنظمة أحادية المهام‪-:‬‬ ‫‪.1‬‬ ‫‪Operating system‬‬ ‫كان دور نظام التشغيل هو تحميل برنامج واحد وتنفيذه‪ ،‬ثم بعد إكماله‪ ،‬يتم تحميل برنامج‬ ‫آخر وتنفيذه‪ ،‬وهكذا‪.‬‬ ‫‪User program‬‬ ‫هذا النوع من نظم التشغيل ال يستفيد من الموارد استفادة كاملة (غير كفؤ)‪ ،‬ذلك ألنه يحمل‬ ‫‪memory‬‬ ‫برنامج واحد كل مرة‪ ،‬ويظل هذا البرنامج يعمل إلى أن ينتهي‪ ،‬خالل عمل هذا البرنامج قد‬ ‫تكون هنالك موارد متاحة لكن ال يُستفاد منها ألنه ال يوجد سوى برنامج واحد ِبالذاكرة‪.‬‬ ‫أيضا يستغرق تحميل البرنامج وقتا ليس ِبالقصير‪ ،‬مما يؤثر على أداء الحاسب‪.‬يسمى هذا‬ ‫النوع من نظم التشغيل أحادي المهام‪ ،‬حيث يوجد برنامج واحد بالذاكرة باإلضافة إلى نظام‬ ‫التشغيل‪،‬‬ ‫تصنيفات أنظمة التشغيل‬ ‫‪ -2‬تعدد البرامج (المهام) ) ‪:(multiprogramming‬‬ ‫هنا يتعامل نظام التشغيل مع عدد من البرامج المخزنة ِبالقرص‪ ،‬حيث يحمل جزء من هذه‬ ‫البرامج ِبالذاكرة في نفس الوقت‪.‬‬ ‫‪Operating system‬‬ ‫‪Jop1‬‬ ‫يبدأ نظام التشغيل بتنفيذ أحد هذه البرامج في المعالج‪.‬إذا توقف هذا البرنامج عن التنفيذ ألي‬ ‫‪Jop2‬‬ ‫سبب‪ ،‬يقوم نظام التشغيل بتشغيل برنامج آخر في المعالج‪.‬بهذه الطريقة نكون قد استفدنا من‬ ‫‪Jop3‬‬ ‫زمن المعالج وجعلناه مشغوال معظم الوقت‪.‬‬ ‫‪Jop4‬‬ ‫الغرض من تعدد البرمجة وجود أكثر من برنامج ِبالذاكرة لكي يجد المعالج دائما برنامج‬ ‫جاهز للتنفيذ مما يحسن ويسرع من أداء النظام‪.‬‬ ‫تصنيفات أنظمة التشغيل‬ ‫‪ -3‬المشاركة الزمنية )‪:(Time-sharing‬‬ ‫هي استمرار منطقي لتعدد البرامج‪.‬يقوم المعالج بخدمة العديد من المهام وذلك بإعطاء كل مهمة فترة زمنية قصيرة داخل المعالج‪ ،‬ويتنقل المعالج‬ ‫بين المهام بسرعة عالية جدا لدرجة أن كل مهمة تعمل وكأنها تستخدم المعالج لوحدها‪.‬‬ ‫إذا احتاجت مهمة أن تنتظر عملية دخل أو خرج‪ ،‬يمكن االنتقال لمهمة أخرى مما يكسب النظام استغالل جيد لزمن المعالج‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪1‬‬ ‫‪ -1‬الحاسبات المركزية ( ‪:) Main Frame‬‬ ‫الحاسبات المركزية عبارة عن جهاز حاسوب مركزي واحد تتصل به عدة طرفيات تسمى الطرفيات‬ ‫العمياء (‪ ،)dump terminal‬هذه الطرفيات عبارة عن شاشة ولوحة مفاتيح‪ ،‬ليس بها ذاكرة أو معالج‬ ‫وإنما تستخدم معالج وذاكرة الحاسب المركزي‪.‬‬ ‫طبيعة نظام التشغيل‪-:‬‬ ‫تركز أنظمة تشغيل هذا النوع من الحاسبات على التقسيم الزمني‪ ،‬فهنالك مستخدمين كثر متصلين‬ ‫بطرفيات يريدون االستفادة القصوى من موارد حاسب مركزي واحد‪ ،‬و ِبالتالي على نظام التشغيل إدارة‬ ‫الجهاز المركزي لخدمة هذا الكم من المستخدمين بحيث يكون زمن االستجابة لكل مستخدم سريع (أقل‬ ‫من ثانية) وحتى يشعر كل مستخدم أن الجهاز المركزي يخدمه لوحده‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪2‬‬ ‫‪ -2‬الحاسوب الخادم (المزود) (‪: )Server Computer‬‬ ‫هي أجهزة سريعة وقوية تستخدم لتوفير خدمات لبقية األجهزة في الشبكة وتسمح بتعدد المستخدمين‬ ‫وتعدد المهام في نفس الوقت‪.‬‬ ‫هنالك نظم تشغيل خاصة بهذه األجهزة مثل‪Windows Advanced ( )Ubuntu Server( :‬‬ ‫‪.)Server‬‬ ‫حيث تدعم هذه النظم أهم صفة تتصف بها الخوادم وهي إتاحة المشاركة بين المستخدمين وخدمة أكبر‬ ‫عدد منهم في وقت واحد‪.‬مثال خادم الويب (‪ )web server‬يسمح لعدد كبير من المتصفحين من‬ ‫االتصال في نفس الوقت وتصفح المواقع‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪3‬‬ ‫‪ -3‬األجهزة متعددة المعالجات (‪:)Multiprocessors‬‬ ‫بعض البرامج تحتاج سرعة عالية بحيث ال تكفي سرعة المعالج الواحد مهما بلغت‪ ،‬الحل هو استخدام أكثر من معالج‬ ‫لتنفيذ المهام وقد تتواجد عدة معالجات في صندوق واحد فيما يسمى تعدد المعالجات‪.‬‬ ‫يتميز تعدد المعالجات بأنه‪:‬‬ ‫‪ -1‬قليل التكلفة مقارنة ِباألنظمة األخرى حيث تتشارك المعالجات في بقية موارد الجهاز ‪ ،‬فالذاكرة مشتركة واللوحة‬ ‫األم واحدة‪.‬‬ ‫‪ -2‬سريع ألن تكلفة االتصال قليلة‪ ،‬فغالبا تستخدم المعالجات النواقل الداخلية في تبادل المعلومات‪.‬‬ ‫‪ -3‬بسيط ألنه يستخدم ذاكرة مشتركة‪ ،‬فكل المعالجات تتشارك فيها‪.‬‬ ‫‪ -4‬زيَادة االعتمادية‪ :‬إمكانية االستمرارية حتى ولو تعطلت بعض المعالجات‪.‬‬ ‫أصبحت الحاسبات ذات المعالجات متعددة النواة )‪(multi-core‬منتشرة ومتوفرة وقد حلت محل الحاسبات أحادية‬ ‫المعالج‪.‬‬ ‫المعالجات المتعددة تنقسم إلى نوعين هما‪:‬‬ ‫‪ -1‬المعالجات المتماثلة ( ‪)Symmetric multiprocessing‬‬ ‫‪ -2‬المعالجات غير المتماثلة (‪)Asymmetric multiprocessor‬‬ ‫أنواع المعالجات المتعددة ‪3-1‬‬ ‫‪ -1‬المعالجات المتماثلة ) ‪:(Symmetric multiprocessing‬‬ ‫معالجات مربوطة ِبإحكام ) ‪ (tightly coupled‬وتتشارك الذاكرة ونواقل الدخل والخرج أو ممر البيانات ويديرها نظام‬ ‫تشغيل واحد يوزع األحمال على جميع المعالجات بالتساوي‪.‬‬ ‫وهي الهندسة األكثر استعماال بين معظم األنظمة متعددة المعالجات‪.‬كما تستعمل في األنظمة متعددة األنوية حيث تعتبر‬ ‫كل نواة كوحدة معالجة مستقلة‪.‬‬ ‫أنواع المعالجات المتعددة ‪3-2‬‬ ‫‪ -2‬المعالجات غير المتماثلة (‪:)Asymmetric multiprocessor‬‬ ‫يوجد معالج رئيسي واحد يتحكم في النظام ويستخدم لنظام التشغيل وينفذ مهمة رئيسية كبيرة‪ ،‬بينما بقية المعالجات‬ ‫تستخدم للتطبيقات وتنفذ ما يأمرها به هذا المعالج الرئيسي‪ ،‬فهو قد يقسم المهمة الكبيرة إلى أجزاء صغيرة يوزعها على‬ ‫بقية المعالجات ثم يجمع النتائج بعد التنفيذ‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪4‬‬ ‫‪ -4‬األنظمة الموزعة (‪:)Distributed‬‬ ‫توزيع العمل عبر الشبكة على عدة حاسبات‪ ،‬هذه الحاسبات قد تكون قريبة أو بعيدة‪ ،‬وكل حاسب لديه معالجه‪ ،‬ذاكرته‪،‬‬ ‫وقرصه وأجهزته الطرفية الخاصة به‪.‬وقد تكون هذه األجهزة متباينة في المكونات المادية ونظم التشغيل التي تديرها‪.‬‬ ‫المميزات‪:‬‬ ‫‪ -1‬التشارك في الموارد‪.‬‬ ‫‪ -2‬زيَادة سرعة التنفيذ‪.‬‬ ‫‪ -3‬توزيع الحمل بين هذه الحاسبات‪.‬‬ ‫العيوب‪:‬‬ ‫‪ -1‬زمن االتصال بين أجزاء النظام قد يؤثر على أداء النظام ككل‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪5‬‬ ‫‪ -5‬األنظمة المضمنة (‪:)Embedded‬‬ ‫هي حاسبات ذات أغراض معينة‪ ،‬صممت لتقوم بوظيفة واحدة‪ ،‬وغالبا ما تكون مضمنة داخل جهاز تتحكم في عمله‪ ،‬مثل‬ ‫التلفزيون‪ ،‬السيارة‪ ،‬المايكرويف‪ ،‬مشغل ‪ ،MP3‬الموجهات (‪ ،(routers‬إشارات المرور‪ ،‬مسجالت ‪ ،DVD‬وغيرها‪.‬‬ ‫بعض هذه الحاسبات تحتوي على نظام تشغيل ينفذ أعمال تحكمية‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪6‬‬ ‫‪ -6‬األجهزة المتجمعة (‪:)Clustered Systems‬‬ ‫هي مجموعة من األجهزة المتواجدة في مكان واحد والمتصلة مع بعضها البعض بشبكة محلية سريعة وغالبا ما تكون‬ ‫متشابهة في المكونات المادية ونظم التشغيل التي تديرها‪.‬تتشارك في التخزين (قد يكون هنالك جهاز واحد بقرص صلب‬ ‫والبقية بدون مثال)‪.‬تستخدم لتنفيذ البرامج الضخمة والتي تحتاج وقت كبير حيث يقسم التطبيق إلى أجزاء صغيرة تنفذ في‬ ‫أجزاء التجمع‪.‬الفرق بين النظم الموزعة والحاسبات المجتمعة التباين في األجهزة والبعد الجغرافي‪.‬‬ ‫أنواع الحاسبات والنظم المستخدمة ‪7,8‬‬ ‫‪ -7‬أنظمة الحواسيب الشخصية ‪:‬‬ ‫هي حاسبات غالبا تكون بمعالج واحد وشاشة ولوحة مفاتيح وتخدم شخصا واحدا‪.‬‬ ‫طبيعة نظام التشغيل‪:‬‬ ‫تركز أنظمة تشغيل هذا النوع من الحاسبات على خدمة مستخدم واحد ودعم تعدد البرامج بحيث يستطيع المستخدم تشغيل‬ ‫أكثر من برنامج في وقت واحد‪.‬‬ ‫أيضا يهدف هذا النوع من نظم التشغيل على توفير بيئة مالئمة للمستخدم واستجابة سريعة لطلبات المستخدم‪.‬‬ ‫أمثلة لهذا النوع نظام التشغيل ويندوز‪ ،‬ماكنتوش‪ ،‬لينكس‪ ،‬هذا النوع يسمى مستخدم واحد متعدد المهام ( ‪(Single user‬‬ ‫‪Multi-task‬‬ ‫‪ -8‬أنظمة الزمن الحقيق( ‪:)Real Time System‬‬ ‫هي حواسيب موجودة في أجهزة تحكم مثل‪( :‬أجهزة تجميع السيارات‪ ،‬إطالق الصواريخ‪ ،‬النظم الطبية‪ ،‬اإلنسان اآللي )‪.‬‬ ‫طبيعة نظام التشغيل‪:‬‬ ‫تتصف نظم التشغيل التي تدير مثل هذه الحواسيب بقيد زمني )حساسة تجاه الزمن حيث البد من أن يتم التنفيذ في فترة‬ ‫زمنية محددة‪ ،‬الن التنفيذ مرتبط بعمل يجب أن ينجز في وقت معين وقد يتسبب في تلف ما إن نفذ في وقت متأخر أو متقدم‬ ‫عن الزمن المحدد له‪.‬‬ ‫الشهية نظامي ( ‪)QNX & VXworks‬‬ ‫ر‬ ‫ومن أشهر أنظمة تشغيل الزمن الحقيقي‬ ‫أنواع الحاسبات والنظم المستخدمة ‪9‬‬ ‫‪ -9‬أنظمة البطاقات الذكية‪:‬‬ ‫البطاقات الذكية هي كروت بالستيكية بحجم البطاقة اإلئتمانية مزودة برقاقة الكترونية صغيرة لها القدرة على معالجة‬ ‫المعلومات‪ ،‬وهذا يعني انها تمتلك القدرة على استقبال البيانات او المدخالت ومعالجتها من خالل البرمجيات المثبتة على‬ ‫هذه الشريحة‪.‬تمتلك هذه البطاقة ذاكرة وطاقة تحويل إلكتروني تتخذ أساليب دفع مختلفة مثل الدفع اإللكتروني كبطاقة‬ ‫إئتمانية‪ ،‬التأمين الصحي‪ ،‬التعرف على الشخصية بدل البطاقة الشخصية وغيرها من المهام‪.‬‬ ‫شريحة البطاقة الذكية تستطيع معالجة البيانات بِاإلضافة إلى تخزينها‪.‬نظام التشغيل المصمم لهذا النوع من األجهزة يعتبر‬ ‫صغير جدا‪.‬‬ ‫األنظمة الموزعة ‪Distributed systems‬‬ ‫اعداد د‪ /‬معاذ عبده الصبري‬ ‫األنظمة الموزعة ‪Distributed systems‬‬ ‫األنظمة املوزعة ‪:Distributed systems‬‬ ‫هي أنظمة حاسوبية تتكون من جمموعة من األجهزة أو العقد املتصلة ببعضها عرب شبكة اتصال‪ ،‬وتعمل هذه األجهزة معاً لتحقيق هدف مشرتك‪.‬ميكن‬ ‫لألجهزة يف النظام املوزع أن تكون متباعدة جغرافيًا وتعمل بشكل متزامن ومتوازي‪.‬‬ ‫األنظمة املوزعة تطورت بشكل كبري على مر العقود‪ ،‬حيث لعبت دوراً مهماً يف تطوير تقنيات احلوسبة احلديثة‪.‬فيما يلي حملة تارخيية عن تطور‬ ‫األنظمة املوزعة‪:‬‬ ‫الستينات والسبعينات‪:‬‬ ‫األسس النظرية‪:‬‬ ‫بدأت األفكار األساسية لألنظمة املوزعة يف الستينات مع ظهور مفاهيم مثل مشاركة الوقت ‪Time-sharing‬واحلوسبة الشبكية‪.‬‬ ‫يف السبعينات‪ ،‬بدأ الباحثون مثل جيمس جوسلينغ من تطوير أوىل نظريات األنظمة املوزعة ومشاركة الوقت‪.‬‬ ‫شبكة أربانت ‪ARPANET‬‬ ‫يف أواخر الستينات‪ ،‬مت تطوير شبكة أربانت‪ ،‬وهي أول شبكة حتويل رزم‪ ،‬واليت كانت مقدمة لإلنرتنت‪.‬هذه الشبكة مكنت العديد من األجهزة من‬ ‫التواصل مع بعضها البعض‪.‬‬ ‫لمحه تاريخية األنظمة الموزعة‬ ‫الثمانينات‪:‬‬ ‫ظهور بروتوكوالت الشبكة‪:‬‬ ‫مت تطوير بروتوكوالت ‪TCP/IP‬اليت أصبحت األساس لالتصال بني األجهزة يف الشبكات املوزعة‪.‬‬ ‫يف هذا العقد‪ ،‬بدأت الشبكات احمللية ‪ LANs‬يف االنتشار‪ ،‬مما مسح لألجهزة بالتواصل بشكل أكثر فعالية‪.‬‬ ‫أنظمة امللفات املوزعة‪:‬‬ ‫ظهور أنظمة امللفات املوزعة مثل نظام )‪Andrew File System (AFS‬الذي طورته جامعة كارنيجي‬ ‫ميلون‪.‬‬ ‫نظم التشغيل املوزعة‪:‬‬ ‫تطوير أنظمة تشغيل موزعة مثل ‪ Amoeba‬و ‪Mach‬اليت قدمت بيئات تشغيلية تدعم احلوسبة املوزعة‪.‬‬ ‫لمحه تاريخية األنظمة الموزعة‬ ‫التسعينات‪:‬‬ ‫اإلنرتنت والويب‪:‬‬ ‫انتشار اإلنرتنت وتطور الويب أدى إىل زيادة احلاجة إىل أنظمة موزعة لدعم التطبيقات الشبكية مثل الربيد اإللكرتوني‪،‬‬ ‫الويب‪ ،‬وخدمات ‪FTP.‬‬ ‫ظهور بروتوكوالت وخدمات مثل ‪HTTP‬و‪DNS.‬‬ ‫احلوسبة املوازية‪:‬‬ ‫انتشار احلواسيب متعددة املعاجلات واحلواسيب العمالقة اليت تستخدم احلوسبة املوازية ملعاجلة البيانات بشكل أسرع‪.‬‬ ‫أنظمة قواعد البيانات املوزعة‪:‬‬ ‫تطوير أنظمة قواعد البيانات املوزعة مثل ‪Oracle RAC‬و‪ ،Microsoft SQL Server‬اليت مكنت من ختزين وإدارة‬ ‫البيانات عرب عدة عقد‪.‬‬ ‫لمحه تاريخية األنظمة الموزعة‬ ‫األلفية اجلديدة‪:‬‬ ‫احلوسبة السحابية‪:‬‬ ‫ظهور مفاهيم احلوسبة السحابية مع إطالق خدمات مثل )‪Amazon Web Services (AWS‬يف ‪.2006‬‬ ‫انتشار خدمات احلوسبة السحابية من قبل شركات مثل ‪ ،Microsoft ،Google‬و‪IBM.‬‬ ‫أنظمة امللفات املوزعة احلديثة‪:‬‬ ‫تطوير أنظمة ملفات موزعة جديدة مثل )‪Hadoop Distributed File System (HDFS‬اليت أصبحت أساسًا‬ ‫ملعاجلة البيانات الكبرية‪.‬‬ ‫خوارزميات اإلمجاع‪:‬‬ ‫تطوير خوارزميات إمجاع مثل ‪Paxos‬و ‪Raft‬لضمان االتساق يف األنظمة املوزعة‪.‬‬ ‫البلوكشني والعمالت الرقمية‪:‬‬ ‫ظهور تقنيات البلوكشني والعمالت الرقمية مثل البيتكوين‪ ،‬اليت تعتمد على أنظمة موزعة لتوفري بيئة موثوقة والمركزية‪.‬‬ ‫لمحه تاريخية األنظمة الموزعة‬ ‫العقد احلالي‪:‬‬ ‫إنرتنت األشياء ‪IoT‬‬ ‫توسع استخدام األجهزة املتصلة يف البيئات املنزلية والصناعية‪ ،‬مما يزيد من احلاجة إىل أنظمة موزعة إلدارة هذه األجهزة وتنسيق‬ ‫عملها‪.‬‬ ‫الذكاء االصطناعي والتعلم اآللي‪:‬‬ ‫استخدام األنظمة املوزعة لتدريب مناذج الذكاء االصطناعي والتعلم اآللي على جمموعات بيانات ضخمة‪.‬‬ ‫احلوسبة احلافة ‪ Edge Computing‬واحلوسبة الضبابية ‪Fog Computing‬‬ ‫تطوير تقنيات احلوسبة احلافة واحلوسبة الضبابية ملعاجلة البيانات بالقرب من املصدر‪ ،‬مما يقلل من التأخري وحيسن األداء‪.‬‬ ‫اخلالصة‪:‬‬ ‫تاريخ األنظمة املوزعة مليء باالبتكارات والتطورات اليت ساهمت يف تشكيل العامل الرقمي احلديث‪.‬من الشبكات األولية مثل أربانت إىل‬ ‫احلوسبة السحابية احلديثة وإنرتنت األشياء‪ ،‬األنظمة املوزعة أصبحت جزءاً أساسياً من البنية التحتية للتكنولوجيا يف مجيع أحناء‬ ‫العامل‪.‬‬ ‫اخلصائص واملميزات لألنظمة املوزعة‬ ‫األنظمة املوزعة تتمتع بالعديد من اخلصائص واملميزات اليت جتعلها مهمة ومفيدة يف جمموعة متنوعة من التطبيقات‪.‬ومن بني هذه‬ ‫اخلصائص واملميزات‪:‬‬ ‫‪.1‬الشفافية ‪Transparency‬‬ ‫الشفافية يف الوصول‪ :‬املستخدم ال يالحظ الفرق بني املوارد احمللية واملوارد املوزعة عرب الشبكة‪.‬‬ ‫الشفافية يف التوزيع‪ :‬النظام يظهر للمستخدم ككيان واحد بغض النظر عن كيفية توزيع مكوناته‪.‬‬ ‫الشفافية يف املوقع‪ :‬املستخدم ال حيتاج ملعرفة املوقع اجلغرايف للموارد‪.‬‬ ‫الشفافية يف اهلجرة‪ :‬ميكن نقل املوارد واخلدمات دون التأثري على املستخدم‪.‬‬ ‫الشفافية يف الفشل‪ :‬ميكن للنظام التعايف من الفشل دون تأثري كبري على املستخدمني‪.‬‬ ‫اخلصائص واملميزات لألنظمة املوزعة‬ ‫‪.2‬قابلية التوسع ‪Scalability‬‬ ‫ميكن إضافة أو إزالة عقد (أجهزة) بسهولة لتلبية زيادة أو نقصان يف حجم العمل دون التأثري على النظام ككل‪.‬‬ ‫‪.3‬املرونة والتوافر ‪Flexibility and availability‬‬ ‫النظام املوزع ميكنه التعامل مع فشل العقد أو األجهزة الفردية دون توقف النظام ككل‪ ،‬مما يزيد من توافر اخلدمات‪.‬‬ ‫‪.4‬التوازي واألداء ‪Parallelism and performance‬‬ ‫ميكن للنظام توزيع املهام على عدة عقد‪ ،‬مما يسمح بتنفيذ املهام بشكل متوازي وزيادة الكفاءة واألداء‪.‬‬ ‫‪.5‬التشارك يف املوارد ‪Sharing resources‬‬ ‫ميكن لألجهزة يف النظام املوزع مشاركة املوارد مثل الذاكرة واملعاجلات والبيانات‪ ،‬مما يعزز من استخدام املوارد بشكل فعال‪.‬‬ ‫‪.6‬املوثوقية ‪Reliability‬‬ ‫بفضل وجود نسخ متعددة من البيانات واخلدمات على عدة عقد‪ ،‬ميكن للنظام التعايف بسرعة من الفشل وحتقيق موثوقية أعلى‪.‬‬ ‫اخلصائص واملميزات لألنظمة املوزعة‬ ‫‪.7‬قابلية التكيف ‪Adaptability‬‬ ‫ميكن للنظام التكيف مع التغريات يف بيئة التشغيل‪ ،‬مثل زيادة عدد املستخدمني أو التغريات يف متطلبات األداء‪.‬‬ ‫‪.8‬التعاون ‪Cooperation‬‬ ‫األنظمة املوزعة تدعم التعاون بني العقد املختلفة‪ ،‬مما يسهل تنفيذ التطبيقات املعقدة اليت تتطلب تعاون بني عدة‬ ‫أجهزة‪.‬‬ ‫‪.10‬التوفري يف التكلفة ‪Cost saving‬‬ ‫األنظمة املوزعة متكن من استخدام أجهزة أقل تكلفة لتحقيق أداء عالي‪ ،‬مما يقلل من التكلفة اإلمجالية للنظام‪.‬‬ ‫التحديات والعيوب لألنظمة املوزعة‬ ‫األنظمة املوزعة على الرغم من مميزاتها العديدة‪ ،‬تواجه بعض التحديات والعيوب اليت ميكن أن تؤثر على أدائها وموثوقيتها‪.‬من بني هذه العيوب‪:‬‬ ‫‪.1‬التعقيد ‪Complexity‬‬ ‫التصميم والتطوير‪ :‬األنظمة املوزعة تتطلب تصميم وتطوير أكثر تعقيدًا مقارنة باألنظمة املركزية‪.‬جيب أخذ العديد من العوامل بعني االعتبار مثل التزامن‪،‬‬ ‫التوزيع‪ ،‬والفشل‪.‬‬ ‫الصيانة‪ :‬إدارة وصيانة األنظمة املوزعة أصعب نظرًا لتعقيد بنيتها‪.‬‬ ‫‪.2‬الفشل ‪Failure‬‬ ‫الفشل اجلزئي‪ :‬ميكن أن تتعرض العقد الفردية للفشل‪ ،‬مما يتطلب آليات معقدة للتعامل مع هذه األعطال وضمان استمرارية العمل‪.‬‬ ‫حتديد الفشل‪ :‬حتديد ومعرفة مصدر الفشل يف األنظمة املوزعة ميكن أن يكون صعبًا‪.‬‬ ‫‪.3‬األمان ‪Security‬‬ ‫نقاط الضعف األمنية‪ :‬األنظمة املوزعة تزيد من سطح اهلجوم‪ ،‬مما جيعلها أكثر عرضة للهجمات السيربانية‪.‬‬ ‫التشفري والتوثيق‪ :‬يتطلب تأمني االتصاالت والبيانات بني العقد املختلفة استخدام تقنيات تشفري وتوثيق قوية‪ ،‬مما يزيد من التعقيد‪.‬‬ ‫التحديات والعيوب لألنظمة املوزعة‬ ‫‪.4‬تزامن البيانات‬ ‫حتديث البيانات‪ :‬احلفاظ على تزامن البيانات بني العقد املختلفة ميكن أن يكون حتديًا‪ ،‬خاصة يف األنظمة اليت تتطلب حتديثات‬ ‫فورية أو شبه فورية‪.‬‬ ‫تضارب البيانات‪ :‬ميكن أن حتدث تضاربات يف البيانات بسبب الوصول املتزامن من قبل عدة عقد‪.‬‬ ‫‪.5‬التأخري يف الشبكة‬ ‫زمن االستجابة‪ :‬االتصاالت بني العقد يف النظام املوزع تعتمد على الشبكة‪ ،‬مما قد يؤدي إىل تأخري يف زمن االستجابة‪.‬‬ ‫عرض النطاق الرتددي‪ :‬استخدام الشبكة لنقل البيانات ميكن أن يستهلك عرض النطاق الرتددي‪ ،‬مما يؤثر على األداء‪.‬‬ ‫‪.6‬تكلفة اإلعداد والصيانة‬ ‫التكلفة املبدئية‪ :‬إعداد األنظمة املوزعة يتطلب استثمارات يف البنية التحتية والشبكات‪.‬‬ ‫الصيانة الدورية‪ :‬الصيانة الدورية واملتابعة املستمرة لألجهزة والشبكات تزيد من التكاليف‪.‬‬ ‫التحديات والعيوب لألنظمة املوزعة‬ ‫‪.7‬التوافق والتكامل‬ ‫توافق األنظمة‪ :‬حتقيق التوافق بني أنظمة التشغيل والتطبيقات املختلفة قد يكون صعبًا يف البيئة املوزعة‪.‬‬ ‫تكامل البيانات‪ :‬تكامل البيانات بني العقد املختلفة يتطلب جهودًا إضافية لضمان صحتها واكتماهلا‪.‬‬ ‫‪.8‬التوثيق واملراقبة‬ ‫مراقبة األداء‪ :‬مراقبة أداء النظام بأكمله ميكن أن يكون معقدًا ويتطلب أدوات متقدمة‪.‬‬ ‫التوثيق‪ :‬التوثيق اجليد مطلوب لفهم النظام والتعامل مع املشاكل عند حدوثها‪.‬‬ ‫هذه العيوب تتطلب اختاذ تدابري خاصة وإجراءات مناسبة لضمان أن األنظمة املوزعة تعمل بكفاءة وحتقق األهداف‬ ‫املرجوة منها‪.‬‬ ‫أمثلة على استخدام األنظمة املوزعة‪:‬‬ ‫احلوسبة السحابية‪ :‬مثل خدمات أمازون ويب سريفيس ‪ ،AWS‬مايكروسوفت أزور ‪ ،Azure‬وجوجل كالود ‪Google‬‬ ‫‪Cloud.‬‬ ‫قواعد البيانات املوزعة‪ :‬مثل كاساندرا ‪ ،Cassandra‬و موجنو دي بي ‪. MongoDB‬‬ ‫أنظمة امللفات املوزعة‪ :‬مثل نظام ملفات جوجل ‪Google File System‬وهادووب ‪. Hadoop‬‬ ‫تساعد هذه اخلصائص يف جعل األنظمة املوزعة مناسبة جملموعة واسعة من التطبيقات يف جماالت مثل البنوك‪ ،‬التجارة‬ ‫اإللكرتونية‪ ،‬وسائل اإلعالم‪ ،‬األلعاب‪ ،‬والتطبيقات العلمية‪.‬‬ ‫المكونات األساسية لألنظمة الموزعة ‪Distributed systems‬‬ ‫األنظمة املوزعة تتكون من عدة مكونات أساسية تعمل معًا لتحقيق التفاعل والتواصل بني العقد املختلفة يف النظام‪.‬هذه املكونات‬ ‫تشمل‪:‬‬ ‫‪.1‬العقد ‪Nodes‬‬ ‫األجهزة‪ :‬ميكن أن تكون هذه العقد حواسيب شخصية‪ ،‬خوادم‪ ،‬أو حتى أجهزة استشعار‪.‬كل عقدة قادرة على معاجلة البيانات‬ ‫والتواصل مع العقد األخرى‪.‬‬ ‫‪.2‬الشبكة ‪Network‬‬ ‫البنية التحتية للشبكة‪ :‬تتضمن الكابالت‪ ،‬احملوالت‪ ،‬واملوجهات اليت تتيح االتصال بني العقد املختلفة‪.‬‬ ‫الربوتوكوالت‪ :‬مثل ‪ ،TCP/IP‬اليت تُستخدم لتحديد كيفية إرسال واستقبال البيانات عرب الشبكة‪.‬‬ ‫‪.3‬الربجميات الوسطية ‪Middleware‬‬ ‫الربجميات اليت تعمل بني النظام التشغيلي والتطبيقات‪ :‬تسهل االتصاالت‪ ،‬إدارة البيانات‪ ،‬واملزامنة بني العقد‪.‬‬ ‫أمثلة على الربجميات الوسطية‪ ،Message Queues ،RPC ،CORBA :‬و‪SOAP.‬‬ ‫المكونات األساسية لألنظمة الموزعة ‪Distributed systems‬‬ ‫‪.4‬أنظمة التشغيل ‪Operating Systems‬‬ ‫إدارة املوارد احمللية‪ :‬كل عقدة تعمل بنظام تشغيل يتحكم يف مواردها احمللية مثل املعاجل‪ ،‬الذاكرة‪ ،‬والتخزين‪.‬‬ ‫توفري خدمات الشبكة‪ :‬تسهيل االتصال بالشبكة وتوفري اخلدمات األساسية للتطبيقات‪.‬‬ ‫‪.5‬التطبيقات ‪Applications‬‬ ‫الربامج اليت تُنفذ على العقد‪ :‬تشمل التطبيقات املوزعة اليت تتطلب التعاون بني العقد املختلفة‪ ،‬مثل قواعد البيانات املوزعة‪ ،‬أنظمة امللفات املوزعة‪،‬‬ ‫وتطبيقات الويب‪.‬‬ ‫‪.6‬أنظمة إدارة البيانات ‪Data Management Systems‬‬ ‫قواعد البيانات املوزعة‪ :‬ختزين البيانات وإدارتها عرب عدة عقد لضمان التوافر والتكرار‪.‬‬ ‫آليات املزامنة‪ :‬ضمان تزامن البيانات بني العقد املختلفة ملنع التضاربات‪.‬‬ ‫‪.7‬آليات التزامن ‪Synchronization Mechanisms‬‬ ‫التزامن بني العقد‪ :‬استخدام األقفال ‪ ،semaphores ،Locks‬أو اآلليات األخرى لضمان التزامن بني العمليات اليت تُنفذ على العقد املختلفة‪.‬‬ ‫حتديد الوقت‪ :‬استخدام بروتوكوالت مثل ‪NTP‬لضمان تزامن الوقت بني العقد‪.‬‬ ‫المكونات األساسية لألنظمة الموزعة ‪Distributed systems‬‬ ‫‪.8‬آليات االتساق ‪Consistency Mechanisms‬‬ ‫منوذج االتساق‪ :‬حتديد كيفية حتقيق التوافق بني البيانات على العقد املختلفة‪ ،‬مثل اتساق النظام الصارم‪ ،‬اتساق القراءة‪-‬الكتابة‪ ،‬أو االتساق النهائي‪.‬‬ ‫خوارزميات االتساق‪ :‬مثل ‪Paxos‬و‪ ،Raft‬لتحقيق االتساق يف األنظمة املوزعة‪.‬‬ ‫‪.9‬إدارة الفشل ‪Failure Management‬‬ ‫اكتشاف الفشل‪ :‬آليات ملراقبة واكتشاف العقد الفاشلة يف النظام‪.‬‬ ‫التعايف من الفشل‪ :‬آليات لضمان استمرار عمل النظام حتى عند حدوث فشل يف بعض العقد‪ ،‬مثل إعادة توزيع املهام والبيانات‪.‬‬ ‫‪.10‬موازن التحميل ‪Load Balancer‬‬ ‫توزيع احلمل‪ :‬توزيع الطلبات واملهام بشكل متساوٍ عرب العقد املختلفة لضمان األداء األمثل وجتنب التحميل الزائد على عقدة واحدة‪.‬‬ ‫‪.11‬األمان ‪Security‬‬ ‫التوثيق والتفويض‪ :‬ضمان أن العقد املتصلة هي عقد موثوقة ولديها الصالحيات الالزمة‪.‬‬ ‫التشفري‪ :‬تأمني البيانات أثناء نقلها بني العقد املختلفة‪.‬‬ ‫كشف التسلل‪ :‬أنظمة ملراقبة النشاط غري املألوف واكتشاف التهديدات األمنية‪.‬‬ ‫المكونات األساسية لألنظمة الموزعة ‪Distributed systems‬‬ ‫المكونات األساسية لألنظمة الموزعة ‪Distributed systems‬‬ ‫‪.12‬واجهات الربجمة التطبيقية ‪APIs‬‬ ‫واجهات الربجمة‪ :‬تتيح للتطبيقات على العقد املختلفة التفاعل مع الربجميات الوسطية واخلدمات األخرى يف النظام‪.‬‬ ‫‪.13‬أنظمة املراقبة واإلدارة ‪Monitoring and Management Systems‬‬ ‫مراقبة األداء‪ :‬تتبع أداء النظام واكتشاف االختناقات‪.‬‬ ‫إدارة املوارد‪ :‬إدارة توزيع املوارد مثل املعاجلة والذاكرة بني العقد املختلفة‪.‬‬ ‫هذه املكونات تتكامل معًا لتشكيل نظام موزع فعال وقابل للتوسع واملوثوقية‪ ،‬وتلعب كل مكونة دورًا حيويًا يف حتقيق األهداف املرجوة من النظام املوزع‪.‬‬

Use Quizgecko on...
Browser
Browser