الوظيفة التي تحدث عنها وزير الإتصالات المصري براتب 100 ألف دولار؟

تكنولوجيا

الوظيفة التي تحدث عنها وزير الإتصالات المصري براتب 100 ألف دولار؟

ما هي البرمجة المدمجة (Embedded Software):

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

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

تعتبر فكرة البرمجة المدمجة جزءًا من ما يدفع تطور الأجهزة والمعدات الرقمية في أسواق تكنولوجيا المعلومات الحالية.

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

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

خصائص النظام المضمن تشمل:

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

كيف تُبرمج الأنظمة المدمجة؟ وما اللغات المستعملة في ذلك؟

الأنظمة المدمجة (Embedded System) مزيج من الأجهزة والبرمجيّات، وتتكوّن من وحدات متعدّدة مرتَّبة معاً وفق مبدأ عملها. تهدف هذه الأنظمة إلى تحقيق غرض معيّن خلال مدّة زمنيّة محدَّدة؛ أي تؤدّي مهمّة واحدة فقط، مثل غسّالة الملابس، وتكمن فائدتها في تقليل الكلفة والمساحة اللازمين، إضافة إلى موثوقيّتها العالية. سنتعرّف في هذا المقال إلى النظم المدمجة، ولغات برمجتها، ومهمّة كلّ منها.

مكوّنات الأنظمة المدمجة:

يتكوّن أيّ نظام مدمج من:

  • المعدّات المدمجة: يمثّل المتحكّم الصغريّ المكوِّن الأساس للنظام. أمّا التجهيزات المحيطيّة، فترتبط بالمعدّات المدمجة لتبادل البيانات.
  • نظام تشغيل الزمن الحقيقيّ المدمج: يستعمل لتنفيذ العمليّات المعقَّدة بأنواعها.
  • ملفّات التعريف: وسيلة ربط بين أنظمة التشغيل والأجهزة المرتبطة.
  • وحدات الاتّصال: تستعمل للاتّصال مع الأجهزة الخارجيّة.
  • التطبيقات المدمجة: تؤدّي العمليّات المحدَّدة مسبقاً للجهاز.

لغات برمجة النظم المدمجة:

تحتاج الأنظمة المدمجة إلى أنظمة تشغيل زمن حقيقيّ لتعمل، وتنفّذ مجموعة من العمليّات في الوقت ذاته، وتُكتب برامجها باستعمال لغات البرمجة مثل C/C++، وبايثون، وجافا سكريبت، وتعمل على أنظمة تشغيل لينوكس، OSE، Micro C/OS، Nucleus، Fusion، VxWorks، وغيرها.

تعتمد عمليّة اختيار لغة البرمجة المناسبة على العوامل الآتية:

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

تبرز مساوئ الأنظمة المدمجة فيما يلي:

  •  تعقيد عملية التحديث.
  • الحاجة إلى إعادة تشغيلها عند حدوث أيّة مشكلات.
  • صعوبة تطوير أجزائها.
  • التطبيقات:

تُستعمل على مدى واسع في البنوك، والسيّارات، والأجهزة المنزليّة، والصواريخ، وغيرها.

الأسئلة الشائعة:

  1. ما هي الأنظمة المدمجة؟

تُعرف أنظمة التشغيل المدمج أو البرامج المدمجة بأنّها برمجيّات الحاسوب التي تعمل على توجيه الأجهزة نحو عملها المطلوب عبر سلسلة من الأوامر.

  • ما هي لغات البرمجة المستعملة في الأنظمة المدمجة؟

تُستعمل مختلف لغات البرمجة، مثل C، وC++، وبايثون، وجافا سكريبت.

  • ما الفرق بين الأنظمة المدمجة والأنظمة الاعتياديّة؟

يتكوّن النظام المدمج من مجموعة من الأجهزة والأنظمة المصمَّمة للعمل معاً لخدمة غرض معيّن، وتنفِّذ العمليات المتعاقبة واحدة تلو الأخرى، بينما يعمل النظام الاعتياديّ على تنفيذ عمليّات متعددة في آنٍ واحد.

  • ما أنواع الأنظمة المدمجة؟

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

  • ما التطبيقات الرئيسيّة للأنظمة المدمجة؟

تتمثّل تلك التطبيقات في غسّالة الملابس، والكاميرات الرقميّة، ومشغّل الموسيقى، وغيرها.

الملخّص:

يعدّ النظام المدمج مزيج من التجهيزات والبرامج المتوافقة مع بعضها، وتُستعمل مختلف لغات البرمجة لأغراض مختلفة، مثل التحكّم في الآلات والحواسيب، إذ يترك اختيار لغة البرمجة للمبرمج بحسب ما يراه مناسباً. تُبرمج تطبيقات الأنظمة المدمجة بلغات C، وC++، وبايثون، وجافا سكريبت، وتعمل على مختلف أنظمة التشغيل، مثل لينوكس، مايكرو سي، QNX، وغيرها، وتمثّل لغة C اللغة الأساسيّة لكتابة الأكواد البرمجيّة.

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

وأضاف الرئيس: فيه دول عدد سكانها لا يتعدى أصابع اليدين، وبيشتغل في المجال ده نصف مليون، عارفين يعني إيه 500 ألف بني آدم، كل واحد بيعمل 100 ألف دولار، ده مش عايز مصنع، عايز دماغ، فيه دول عندها 3 مليون واحد شغال، أنا هدفي أشاور لنفسي والناس والحكومة، أنا مهتم بالإنسان.

 

ولذلك، تعدّ لغة C أكثر مرونة مقارنة بلغات البرمجة عالية المستوى؛ لأنّها ذات بنية صغيرة الحجم نسبيّاً، وتدعم تعديل البيانات.