البرنامج الثابت، المعروف أيضًا باسم "برنامج الأجهزة"، هو رمز برمجي مدمج في الأجهزة يمكّنها وميزاتها من العمل بشكل صحيح. ويتم تحديث البرامج الثابتة بانتظام لإصلاح المشكلات الشائعة أو إضافة ميزات أو توسيعها أو زيادة توافق الجهاز مع التقنيات الجديدة.
تعتمد العديد من الأجهزة على البرامج الثابتة لتعمل، بما في ذلك أجهزة التلفزيون والكاميرات والهواتف المحمولة والطابعات ومحركات الأقراص والمزيد. وتوجد البرامج الثابتة في الذاكرة غير المتطايرة للجهاز، حيث يمكن تخزين المحتوى عند إيقاف تشغيل الجهاز. كما يمكن كتابة البرامج الثابتة على أنواع مختلفة من الذاكرة بما في ذلك ذاكرة الوصول العشوائي (RAM) وذاكرة القراءة فقط (ROM) وذاكرة القراءة فقط القابلة للمسح والبرمجة (EPROM) وذاكرة الفلاش.
تساعد البرامج الثابتة الأجهزة على أداء وظائفها المقصودة بعدة طرق مهمة، بما في ذلك تقديم الإرشادات الخاصة بكيفية بدء تشغيل الجهاز، وكيفية تفاعله مع الأجهزة الأخرى—مثل أجهزة توجيه الإنترنت أو أجهزة التحكم عن بُعد—وكيفية أداء مهام حساسة للإدخال/الإخراج (I/O). تقوم العديد من الشركات المصنعة للأجهزة، مثل Apple وLG Electronics وMicrosoft والمزيد ، بتضمين البرامج الثابتة في منتجاتها بحيث تعمل بشكل مشابه لنظام تشغيل الكمبيوتر (OS).
ويقال إن مصطلح "البرامج الثابتة" استخدم لأول مرة من قِبل العالم الأمريكي Ascher Opler في عام 1967 لوصف برنامج قال إنه "بين الأجهزة والبرمجيات1". اليوم، تُعد البرامج الثابتة جزءًا أساسيًا من العديد من الأجهزة، بدءًا من أجهزة iPhone أو Mac أو جهاز التحكم عن بُعد الخاص بالتلفزيون، وصولاً إلى أجهزة استشعار إنترنت الأشياء (IOT) على الأقمار الصناعية والسيارات من دون سائق. وعلى الرغم من تشابه البرامج الثابتة والبرامج، إلا أن هناك اختلافات مهمة تستحق الدراسة عند تقييم مدى ملاءمتها لاحتياجات العمل.
إن أبسط طريقة لفهم الفرق بين البرامج الثابتة والبرامج هي أغراضها الفريدة: بينما تم تصميم البرامج الثابتة لمساعدة الأجهزة على بدء التشغيل والتواصل مع بعضها البعض، يتم استخدام البرامج بشكل أساسي للتفاعل. وتُستخدم البرامج الثابتة لتوفير التحكم في الأجهزة الاستهلاكية، مثل الهواتف وأجهزة التلفزيون. ويقوم المصنعون بتحديث البرامج الثابتة بشكل متكرر لإضافة ميزات جديدة وتعزيز الأمان والحماية من الثغرات الأمنية. كما يعلم أي مستخدم لهاتف Android أو iOS—أو حتى أجهزة التلفزيون الذكية ووحدات التحكم في الألعاب—يجب تنزيل تحديثات إصدار البرنامج الثابت وتثبيتها بانتظام وإلا فإنها تؤثر في أداء الجهاز.
من ناحية أخرى، يتم تثبيت البرامج على الجهاز لتحسين تفاعل المستخدم مع أنشطة مثل تصفح الإنترنت والتحقق من البريد الإلكتروني ومعالجة النصوص ومشاهدة مقاطع الفيديو وبث الموسيقى وغيرها. لا يرتبط البرنامج ارتباطًا وثيقًا بالأجهزة مثل البرامج الثابتة ويحتاج إلى برامج ثابتة للتواصل مع الأجهزة التي توفر وظائفها لها.
تُعد البرامج الثابتة ضرورية للتشغيل السليم للأجهزة بصفتها أمرًا مفروغًا منه في عملنا وحياتنا الشخصية، مثل أجهزة الكمبيوتر الشخصية (PCs) والهواتف الذكية ووحدات التحكم في الألعاب والمزيد. معظم مستخدمي هذه الأجهزة على دراية بالبرامج الثابتة من خلال "تحديثات البرامج الثابتة" المتكررة الضرورية للحفاظ على عمل أجهزتهم.
غالبًا ما يتم إصدار تحديثات البرامج الثابتة، التي تتكون من رمز الكمبيوتر، لإصلاح التهديدات الأمنية التي يمكن أن تؤثر في أداء الجهاز مثل الأخطاء أو الاختراقات. ولكن يمكن أيضًا إصدارها لإضافة ميزة جديدة إلى الجهاز، مثل طريقة تفاعله مع نوع جديد من الوسائط. وتتضمن أمثلة تحديثات البرامج الثابتة إضافة ميزات الأمان إلى جهاز توجيه الإنترنت، وتحسين وظيفة التصفح لتطبيق بث الفيديو، وتحديث نظام التشغيل (OS) الذي يسمح للوحة نظام الكمبيوتر بدعم نوع جديد من المعالجات.
منذ اليوم، أصبحت معظم الأجهزة متصلة بالإنترنت، وأصبح تنزيل التحديثات عن بُعد، أو "لاسلكيًا"، وسيلة للمصنعين لإصدار تحديثات البرامج الثابتة. يقوم معظمهم ببرمجة القدرة على تحديث الجهاز إلى البرنامج الثابت ويتلقى المستخدم إشعارًا ببساطة. لا تزال الأجهزة الأخرى تتطلب من المستخدمين زيارة موقع الشركة المصنعة على الويب وتنزيل الرمز الضروري. ويختلف تكرار تحديثات البرامج الثابتة حسب نوع الجهاز الذي تم تصميمه من أجله. وعادةً ما تجمع الهواتف الذكية، على سبيل المثال، بين تحديثات البرامج الثابتة والبرامج للحفاظ على عمل الهاتف ونظام التشغيل الأساسي بشكل صحيح.
نظرا لأن البرامج الثابتة مستخدمة على نطاق واسع وهي ضرورية لوظائف العديد من الأجهزة المهمة، فقد أصبحت هدفًا مهمًا للمخترقين. تحتوي الأجهزة التي تعتمد على البرامج الثابتة على العديد من الثغرات الأمنية لأنها تستخدم التعليمات البرمجية نفسها بشكل متكرر. أجهزة الكمبيوتر المحمول، على سبيل المثال، والتي غالبًا ما تحتوي على معلومات عمل حساسة، تعتمد على البرامج الثابتة لتشغيل بطارياتها، وبطاقات الصوت والفيديو، وكاميرات الويب وغيرها، ما يجعلها أهدافًا جذابة.
غالبًا ما ينطوي اختراق البرامج الثابتة على نشر برنامج ضار، وهي رموز تمت كتابتها عمدًا لإلحاق الضرر بنظام الكمبيوتر أو المستخدم عن طريق ربط نفسها بالبرامج الثابتة. وتشمل الأنواع الشائعة من البرامج الضارة برامج الفدية التي تحتجز بيانات المستخدم كرهينة، وأحصنة طروادة التي تتجنب الكشف من خلال التظاهر بأنها برنامج شرعي، وبرامج التجسس التي تسرق معلومات حساسة حول المستخدم. نادرًا ما يضطر المخترقون إلى الوصول فعليًا إلى جهاز ما لاستغلاله، حيث يمكنهم الوصول عن بُعد باستخدام اتصالات Bluetooth أو Wi-Fi، والتي تزداد شعبيتها مع زيادة عدد الأجهزة المتصلة بالإنترنت.
يمكن أن تؤدي ميزات أمان البرامج الثابتة الضعيفة إلى سرقة بيانات المستخدم الحساسة أو اختراقها واكتساب الجهات الفاعلة السيئة التحكم عن بُعد في جهاز المستخدم. على سبيل المثال، في يونيو من عام 2024، أصدرت Google تحذيرًا من أن مشكلة في برمجيات Pixel الثابتة جعلتها عرضة للمهاجمين وأنه لا يوجد إصلاح معروف للمشكلة2.
تتخذ الشركات، التي تدرك بشكل متزايد مخاطر الثغرات الأمنية في البرامج الثابتة، تدابير متزايدة لمنع الاستغلال لأنظمتهم بسبب الفوائد العديدة التي توفرها البرامج الثابتة.
تحسين الأداء—من دون أجهزة جديدة: تتيح تحديثات البرامج الثابتة للأجهزة الحصول على قدرات جديدة دون تغيير الجهاز أو بنيته. وتعمل العديد من تحديثات البرامج الثابتة على تحسين أوقات التنفيذ والتعليمات البرمجية الأساسية للجهاز وتساعد على تحسين أدائه.
تحسين تجربة المستخدم: توفر تحديثات البرامج الثابتة للمستخدمين ميزات وبرامج حاسوبية ووظائف جديدة للأنشطة التي يعتمدون عليها، مثل التحقق من أرصدة الحسابات أو تسجيل برنامج على التلفزيون الذكي أو معرفة البقالة التي يريدون شراؤها، وذلك من خلال ربط ثلاجتهم الذكية بالتطبيق عبر قدرات إنترنت الأشياء (IOT).
حل المشكلات بشكل أسرع: تسمح تحديثات البرامج الثابتة بحل العديد من المشكلات الشائعة في الجهاز بسرعة، بما في ذلك أوقات التشغيل والمعالجة، والمزيد من وظائف تعدد المهام، والتوافق الأفضل مع الأجهزة الخارجية.
وظائف العناصر: تساعد تحديثات البرامج الثابتة على ضمان عمل جميع العناصر الطرفية للجهاز، مثل مكبرات الصوت والميكروفونات في الهاتف الذكي، بالطريقة التي صُممت بها، ما يتيح للجهاز العمل بأعلى مستويات الأداء.
انخفاض تكاليف الإصلاح: يساعد الحفاظ على تحديث البرامج الثابتة للأجهزة على تقليل احتمالية إصابة الأجهزة بالأخطاء والحاجة إلى إصلاحات الأخطاء أو إصلاح المعدات المكلفة في المستقبل.
يتم تثبيت البرنامج الثابت على الجهاز في أثناء تصنيعه. في المقام الأول، يسهل الاتصالات بين نظام التشغيل (OS) وأجهزة الجهاز. وتحتوي البرامج الثابتة على العديد من الإرشادات الضرورية لعمل الجهاز بالطريقة التي تم تصميمه بها. تقوم وحدة المعالجة المركزية للكمبيوتر (CPU)، المكان الذي يتم فيه تحويل إدخال البيانات إلى إخراج معلومات، باسترداد البرامج الثابتة من ذاكرة الكمبيوتر وتشغيلها.
يتم استخدام البرامج الثابتة على العديد من الأجهزة التي نعتمد عليها كل يوم. ربما تكون حالة الاستخدام الأكثر شيوعًا هي تشغيل الجهاز بعد فترة طويلة من عدم النشاط. بعد أن تخلد إلى النوم، على سبيل المثال، وتستيقظ من نومك وتلقي نظرة على هاتفك للتحقق من رسائلك، يساعد البرنامج الثابت على ضمان تشغيل جهازك بشكل صحيح. للاحتفاظ بالمعلومات في أثناء عدم استخدامها، يقوم الجهاز بتخزين البرامج الثابتة في ذاكرته "غير المتطايرة". ومع ازدياد تعقيد المهام المطلوبة من البرامج الثابتة، فقد اكتسبت بعض خصائص أجهزة الكمبيوتر، وتحديدًا استخدامها لذاكرة فلاش ونظام الإدخال/الإخراج الأساسي أو BIOS.
نظرًا لأن العديد من الأجهزة تحتاج إلى الاحتفاظ بالمعلومات في أثناء إيقاف تشغيلها، فإن البرامج الثابتة عادة ما تُخزن البيانات في ذاكرة النظام "غير المتطايرة" أو "القراءة فقط" (ROM)، والمعروفة أيضًا باسم ذاكرة الفلاش. يتم استخدام هذا النوع من الذاكرة في مجموعة واسعة من الأجهزة المحمولة مثل محركات أقراص فلاش والهواتف الذكية والكاميرات الرقمية وأجهزة الكمبيوتر المحمولة والمزيد ، وهو ضروري لوظائف البرامج الثابتة.
في الآونة الأخيرة، اكتسبت ذاكرة الفلاش بعض القدرات نفسها المرتبطة بأجهزة الكمبيوتر. على سبيل المثال، عندما يتم تشغيل جهاز كمبيوتر، فإنه يمر عبر تسلسل يعرف باسم نظام الإدخال/الإخراج الأساسي، أو BIOS. استخدم البرنامج الثابت الأول الذي يقوم بتشغيل تسلسل BIOS شريحة ROM، والآن تحولت الأنظمة إلى استخدام ذاكرة فلاش لـ BIOS بحيث يمكن إعادة كتابة البيانات دون الحاجة إلى إزالة الشريحة من لوحة النظام وإعادة إدخالها بمجرد إعادة برمجتها.
بالإضافة إلى التغييرات التي طرأت على طريقة استخدام البرامج الثابتة وتخزين الذاكرة، فقد حدثت تطورات في أنواع البرامج الثابتة المتاحة للمستخدمين أيضًا. واليوم، يمكن تصنيف البرامج الثابتة إلى ثلاث مجموعات أساسية تحددها بنيتها:
البرامج الثابتة منخفضة المستوى هي جزء لا يتجزأ من أجهزة الجهاز ويتم تخزينها على شرائح غير متطايرة للقراءة فقط، مثل ROM، والتي لا يمكن تحديثها. وتستخدم الأجهزة التي تعتمد على البرامج الثابتة منخفضة المستوى ذاكرة لا يمكن كتابتها إلا مرة واحدة ولا تتم إعادة برمجتها أبدًا.
البرامج الثابتة عالية المستوى هي برامج ثابتة لا يمكن تحديثها بسبب تعقيد أجهزتها. في جهاز الكمبيوتر، يتم تضمين البرامج الثابتة عالية المستوى في شرائح ذاكرة الفلاش وهي مسؤولة عن مهام أكثر تقدمًا من البرامج الثابتة منخفضة المستوى. وتحتوي البرامج الثابتة عالية المستوى على إرشادات مهمة حول كيفية عمل الجهاز وتفاعل العناصر المختلفة.
يتم تضمين البرامج الثابتة للنظام الفرعي في ما يعرف باسم "النظام المضمن"، وهو مزيج محدد من الأجهزة والبرامج المصممة لغرض أو مهمة. وتشبه البرامج الثابتة للنظام الفرعي، البرامج الثابتة عالية المستوى في تعقيدها وقدرتها على التكيف. مثل البرامج الثابتة عالية المستوى، يمكن تحديث البرامج الثابتة للنظام الفرعي بسهولة.
تُستخدم البرامج الثابتة في مجموعة واسعة من الأجهزة الحساسة للتحول الرقمي، ومن ثمّ فإن لها العديد من التطبيقات المفيدة للمؤسسات الحديثة. وتتضمن بعض الاستخدامات التجارية الأكثر شيوعًا للبرامج الثابتة ما يأتي:
أجهزة الكمبيوتر الشخصية
تعتمد أجهزة الكمبيوتر الشخصية (PCs) على البرامج الثابتة للاحتفاظ بالبيانات الحساسة في أثناء إيقاف تشغيلها، بالإضافة إلى مواصفات BIOS وواجهات البرامج الثابتة الموسعة الموحدة (UEFI) لواجهة البرنامج بين نظام التشغيل والبرامج الثابتة. وعادةً ما تكون هذه الميزات مضمنة على شريحة ذاكرة على لوحة نظام الكمبيوتر. وتعتمد مكونات الكمبيوتر الشائعة مثل الرسومات وبطاقات الفيديو أيضًا على البرامج الثابتة لتعمل.
أجهزة تخزين البيانات
تتطلب محركات أقراص USB ومحركات الأقراص الصلبة الخارجية ومحركات الأقراص المحمولة وأجهزة تخزين البيانات المحمولة الأخرى، برامج ثابتة للعمل. ويتم تضمين البرامج الثابتة في شرائح ذاكرة فلاش التي تعتمد عليها العديد من أجهزة تخزين البيانات الحديثة ويمكن تحديثها بسهولة على عكس البرامج الثابتة الموجودة في ROM أو EPROM.
الهواتف الذكية
تعتمد الهواتف الذكية بشكل كبير على البرامج الثابتة لتعمل. لا تساعد البرامج الثابتة على ضمان تشغيل الهاتف الذكي بعد عدم استخدامه لفترة من الوقت فحسب، بل تساعد أيضًا على ضمان تفاعل العناصر الحساسة مع بعضها البعض بالطريقة التي صُممت بها. وأخيرًا، في الهواتف الذكية، تعتمد إصلاحات الأخطاء وميزات الأمان والقدرات الجديدة على تحديثات البرامج الثابتة المنتظمة التي يتم تنزيلها من الإنترنت لتعمل بشكل صحيح.
السيارات
تحتوي العديد من السيارات المصممة في السنوات العشر الماضية على أجهزة كمبيوتر تعتمد على البرامج الثابتة لأداء المهام الحساسة. ويتم استخدام أنواع مختلفة من البرامج الثابتة في مختلف أنظمة السيارات، بما في ذلك وحدات التحكم في المحرك (ECUs) التي تعمل على تحسين أداء المحرك وكفاءة استهلاك الوقود، وأنظمة المعلومات والترفيه (المعلومات والترفيه) التي تزداد تعقيدًا والتي تساعد على الملاحة والكاميرات الملحقة بالعديد من السيارات.
أجهزة إنترنت الأشياء (IoT)
يشير إنترنت الأشياء (IOT) إلى شبكة من الأجهزة المادية والمركبات والأجهزة والأشياء المادية الأخرى المضمنة بأجهزة الاستشعار والبرامج والاتصال بالشبكة، ما يسمح لها بجمع البيانات ومشاركتها. وتُعد البرامج الثابتة ضرورية للعديد من حالات الاستخدام لتقنية إنترنت الأشياء (IOT)، مثل الأجهزة المنزلية الذكية، والسيارات ذاتية القيادة، والمدن والمصانع الأكثر ذكاءً وغيرها الكثير. في جهاز إنترنت الأشياء (IOT)، مثل جهاز الاستشعار الذي ينقل البيانات عبر الإنترنت، تحتوي البرامج الثابتة على تعليمات حساسة مخزنة بشكل دائم في الجهاز، والتي تسمح للجهاز بالتشغيل وإيقاف التشغيل، وجمع البيانات وتحليلها ونقلها وغير ذلك.
1. البرامج الثابتة (الرابط موجود خارج ibm.com)، ويكيبيديا
2. تحذر Google من عيب أمان البرامج الثابتة في Pixel يتم استغلالها على أنها هجوم يوم الصفر (الرابط موجود خارج ibm.com)، The Hacker News، في 13 يونيو 2024
يُعَد IBM Cloud Infrastructure Center منصة برمجية متوافقة مع OpenStack، تتيح إدارة البنية التحتية للسحابات الخاصة على أنظمة IBM zSystems و IBM LinuxONE.
استكشف الخوادم ووحدات التخزين والبرامج المصممة لتعزيز استراتيجية مؤسستك في البيئة السحابية الهجينة والذكاء الاصطناعي.
العثور على حل البنية التحتية السحابية الذي يلبي احتياجات أعمالك وتوسيع نطاق الموارد عند الطلب.