الفرق بين المعالجة المتعددة و multithreading

مؤلف: Laura McKinney
تاريخ الخلق: 1 أبريل 2021
تاريخ التحديث: 11 قد 2024
Anonim
Difference between Multiprocessing and Multithreading
فيديو: Difference between Multiprocessing and Multithreading

المحتوى


المعالجة المتعددة و Multithreading كلا يضيف الأداء إلى النظام. متعدد المعالجة هو إضافة المزيد من عدد أو وحدات المعالجة المركزية / المعالجات إلى النظام مما يزيد من سرعة الحوسبة للنظام. خاصية تعدد يسمح لعملية لإنشاء المزيد من المواضيع التي تزيد من استجابة النظام. لقد اكتشفت بعض الاختلافات بين المعالجة المتعددة وتعدد مؤشرات الترابط التي ناقشتها بمساعدة مخطط المقارنة الموضح أدناه.

  1. رسم بياني للمقارنة
  2. تعريف
  3. الاختلافات الرئيسية
  4. خاتمة

رسم بياني للمقارنة

أساس للمقارنةمتعدد المعالجة خاصية تعدد
الأساسيتضيف المعالجة المتعددة وحدات المعالجة المركزية (CPU) لزيادة طاقة الحوسبة.تعدد مؤشرات الترابط ينشئ مؤشرات ترابط متعددة لعملية واحدة لزيادة قوة الحوسبة.
إعداميتم تنفيذ عمليات متعددة في وقت واحد.يتم تنفيذ مؤشرات ترابط متعددة من عملية واحدة بشكل متزامن.
خلقإنشاء عملية تستغرق وقتًا طويلاً وكثيفة الموارد.إنشاء مؤشر ترابط اقتصادي من حيث الوقت والموارد.
تصنيفيمكن أن تكون المعالجة المتعددة متماثلة أو غير متماثلة.Multithreading غير مصنف.


تعريف المعالجة المتعددة

نظام المعالجة المتعددة هو نظام يحتوي على أكثر من معالجين. تضاف وحدات المعالجة المركزية إلى النظام لزيادة سرعة الحوسبة للنظام. كل وحدة المعالجة المركزية لديها مجموعة خاصة بها من السجلات والذاكرة الرئيسية. لمجرد أن وحدات المعالجة المركزية منفصلة ، فقد يحدث أن وحدة المعالجة المركزية يجب ألا يكون لديها أي شيء للمعالجة وقد تكون في وضع الخمول والآخر قد يكون محملاً بالعمليات. في مثل هذه الحالات ، تتم مشاركة العمليات والموارد بشكل حيوي بين المعالجات.

المعالجة المتعددة يمكن تصنيفها على أنها المعالجة المتعددة متماثل و المعالجة المتعددة غير المتماثلة. في المعالجة المتعددة المتماثلة ، جميع المعالجات مجانية لتشغيل أي عملية في النظام. في المعالجة المتعددة غير المتماثلة ، هناك علاقة بين السيد والعبد بين المعالجات. المعالج الرئيسي مسؤول عن تخصيص العملية لمعالجات العبيد.

إذا كان المعالج لديه وحدة تحكم الذاكرة المتكاملة ثم إضافة المعالج سيزيد من مقدار الذاكرة عنونة في النظام. المعالجة المتعددة يمكن أن تغير من نمط الوصول إلى الذاكرة من وصول موحد للذاكرة إلى وصول الذاكرة غير موحدة. يصل الوصول الموحد للذاكرة إلى نفس الوقت للوصول إلى أي ذاكرة الوصول العشوائي من أي معالج. من ناحية أخرى ، يوفر الوصول غير المنتظم للذاكرة وقتًا أطول للوصول إلى جزء من الذاكرة أكثر من الأجزاء الأخرى.


تعريف تعدد العمليات

تعدد العمليات هو تنفيذ مؤشرات ترابط متعددة لعملية واحدة بشكل متزامن داخل الاشتراكات تلك العملية. الآن دعنا نناقش أولاً موضوع الخيط؟ أ مسلك تعني العملية جزءًا من الكود من العملية ، له معرف مؤشر الترابط الخاص به ، عداد البرنامج ، السجلات والمكدس ويمكن تنفيذه بشكل مستقل. ولكن يجب أن تتشارك مؤشرات الترابط التي تنتمي إلى نفس العملية في ممتلكات تلك العملية مثل التعليمات البرمجية والبيانات وموارد النظام. إنشاء عمليات منفصلة لكل طلب خدمة يستهلك الوقت ونظام موارد العادم. بدلاً من تكبد هذا الحمل ، يكون إنشاء مؤشرات ترابط عملية أكثر فعالية.

لفهم مفهوم multithreading دعونا نلقي نظرة مثال من معالج النصوص. معالج النصوص ، يعرض الرسم ، يستجيب لضربات المفاتيح ، وفي الوقت نفسه ، يستمر في التدقيق الإملائي والنحوي. ليس لديك لفتح معالجات النصوص المختلفة للقيام بذلك بشكل متزامن. يحدث ذلك في معالج كلمات واحد بمساعدة عدة مؤشرات ترابط.

الآن دعونا نأخذ في الاعتبار فوائد multithreading. multithreading يزيد من إستجابة كما لو أن خيطًا واحدًا من العملية تم حظره أو القيام بعملية طويلة ، فإن العملية لا تزال مستمرة. فائدة الثانية من multithreading هو تقاسم الموارد حيث تشترك عدة مؤشرات ترابط لعملية ما في نفس الرمز والبيانات داخل نفس مساحة العنوان.

إنشاء موضوع هو اقتصادي لأنه يشارك رمز وبيانات العملية التي ينتمون إليها. لذلك لا يتعين على النظام تخصيص الموارد بشكل منفصل لكل موضوع. Multithreading يمكن أن يكون زيادة على نظام التشغيل متعدد المعالجات. كما multithreading على عدة وحدات المعالجة المركزية يزيد تماثل.

  1. يتمثل الاختلاف الرئيسي بين المعالجة المتعددة والمعالجة المتعددة في أن المعالجة المتعددة تسمح للنظام بإضافة أكثر من وحدتين من وحدات المعالجة المركزية إلى النظام ، في حين أن المعالجة المتعددة تتيح لعملية توليد مؤشرات ترابط متعددة لزيادة سرعة الحوسبة للنظام.
  2. تنفيذ نظام المعالجة المتعددة عمليات متعددة في وقت واحد ، في حين أن نظام multithreading يتيح تنفيذ خيوط متعددة عملية في وقت واحد.
  3. إنشاء عملية يمكن تستهلك الوقت و حتى العادم موارد النظام. ومع ذلك خلق المواضيع اقتصادي مثل مؤشرات الترابط التي تنتمي إلى نفس العملية تشترك في ممتلكات تلك العملية.
  4. المعالجة المتعددة يمكن تصنيفها إلى المعالجة المتعددة متماثل و المعالجة المتعددة غير المتماثلة بينما ، لا يتم تصنيف multithreading كذلك.

خاتمة:

يمكن زيادة فوائد multithreading تدريجياً في بيئة المعالجة المتعددة حيث أن تعدد مؤشرات الترابط على نظام المعالجة المتعددة يزيد من التوازي.