
هل تعلم أن أقوى الحواسيب في العالم تعمل بتوازٍ هائل؟ وهل تعلم أن كثيراً من الأشياء اليومية التي نستخدمها—مثل السيارات والهواتف الذكية—هي في الحقيقة حواسيب متوازية؟ فالسيارات حتى في أبسط نماذجها تحتوي عادةً على عشرات الحساسات والمعالجات التي تُشغِّل برامج متعددة تعمل في الوقت نفسه وتتعاون فيما بينها. أما المركبات الأكثر تطوراً فتتجاوز المئة من الحساسات والمعالجات، ناهيك عن المركبات ذاتية القيادة التي تلوح في الأفق القريب. وبالمثل يمكن النظر إلى الإنترنت على أنه نظام متوازي على نطاق واسع. باختصار، الأنظمة المتوازية والمتزامنة أصبحت جزءاً من حياتنا اليومية وهي حاضرة في جميع القطاعات. يهدف هذا المقرر إلى تزويدك بالأسس العملية والنظرية للبرمجة المتزامنة، بالاعتماد على لغة Java (مع افتراض معرفة مسبقة بمفاهيم البرمجة كائنية التوجه). ستتعرف على كيفية تنفيذ البرامج في بيئة متعددة الخيوط، ولماذا تظهر مشكلات عند الوصول المتزامن إلى بيانات مشتركة، وكيف يمكن حماية هذه البيانات باستخدام آليات المزامنة المناسبة. كما يغطي المقرر وسائل التواصل بين الخيوط، وكيفية إنهاء برنامج متزامن بشكل صحيح، ويقدم عناصر تساعدك على فهم بنية خادم (Server) وكيفية تنظيمه عند التعامل مع عدة مهام في آن واحد. هذا النموذج البرمجي أصبح أساسياً لفهم الأنظمة الحديثة وبناء تطبيقات أكثر كفاءة واستجابة.
Fabrice Kordon
Professeur
Marjorie Bournat
Doctorante
Claude Dutheillet
Maître de Conférences
Nathalie Sznajder
Maître de Conférences