
رسم بياني للمقارنة
أساس للمقارنة | تعدد المهام | خاصية تعدد |
---|---|---|
الأساسية | يتيح تعدد المهام لـ CPU تنفيذ مهام متعددة في نفس الوقت. | السماح لـ Multithreading CPU لمعالجة مؤشرات الترابط متعددة من عملية في نفس الوقت. |
التحول | في مفاتيح متعددة المهام وحدة المعالجة المركزية بين البرامج في كثير من الأحيان. | في multithreading CPU التبديل بين مؤشرات الترابط بشكل متكرر. |
الذاكرة والموارد | في نظام تعدد المهام ، يجب تخصيص ذاكرة منفصلة وموارد لكل برنامج تقوم وحدة المعالجة المركزية بتنفيذه. | في نظام multithreading يجب تخصيص الذاكرة إلى عملية مشاركة مؤشرات ترابط متعددة من هذه العملية نفس الذاكرة والموارد المخصصة للعملية. |
تعريف تعدد المهام
تعدد المهام هو عندما تقوم وحدة المعالجة المركزية الواحدة بتنفيذ عدة مهام (برنامج ، عملية ، مهمة ، سلاسل) في نفس الوقت. لتنفيذ مهام متعددة ، تقوم وحدة المعالجة المركزية بالتبديل بين هذه المهام بشكل متكرر للغاية بحيث يمكن للمستخدم التفاعل مع كل برنامج في وقت واحد.
في نظام تشغيل متعدد المهام ، يمكن لعدة مستخدمين مشاركة النظام في نفس الوقت. كما رأينا وحدة المعالجة المركزية بسرعة بين المهام ، لذلك هناك حاجة إلى القليل من الوقت للتبديل من مستخدم واحد إلى المستخدم التالي. وهذا يعطي انطباعًا للمستخدم بأن نظام الكمبيوتر بأكمله مخصص له.

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


الاختلافات الرئيسية بين تعدد المهام و Multithreading في نظام التشغيل
- الاختلاف الأساسي بين تعدد المهام و multithreading هو أنه في تعدد المهام ، يسمح النظام بتنفيذ العديد من البرامج والمهام في نفس الوقت ، بينما ، في multithreading ، يقوم النظام بتنفيذ سلاسل عمليات متعددة لنفس العمليات أو في نفس الوقت.
- في وحدة المعالجة المركزية متعددة المهام يجب التبديل بين برامج متعددة بحيث يظهر أن العديد من البرامج تعمل في نفس الوقت. على أيدي الآخرين ، في وحدة المعالجة المركزية multithreading يجب التبديل بين مؤشرات ترابط متعددة لجعله يبدو أن جميع مؤشرات الترابط تعمل في نفس الوقت.
- يخصص تعدد المهام ذاكرة منفصلة وموارد لكل عملية / برنامج بينما ، في مؤشرات ترابط multithreading التي تنتمي إلى نفس العملية يشارك نفس الذاكرة والموارد مثل تلك العملية.
استنتاج:
يتشابه تعدد المهام مع البرمجة المتعددة بينما ، Multithreading هو تعدد المهام القائم على الخيط. تعد خاصية Multithreading أقل تكلفة من تعدد المهام حيث يسهل إنشاء السلاسل ثم عملية.