ما هو الفرق بين البرامج الثابتة والبرامج؟

من الناحية الفنية ، تعد البرامج الثابتة(Firmware) مجرد مجموعة فرعية من البرامج(Software) ، حيث يتضمن المصطلح الأخير كل جزء مفيد من التعليمات البرمجية. في الممارسة العملية ، يشير مصطلح البرمجيات إلى فئة مختلفة جدًا من البرامج.

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

أنواع البرامج المتعددة

تكمن مشكلة مصطلح "برمجيات" في أنه واسع جدًا. يمكن اعتبار أي مجموعة من التعليمات التي يمكنها التحكم في جهاز كمبيوتر - أو أي جهاز إلكتروني آخر ، في هذا الصدد - برنامجًا.

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

تتضمن هذه الفئة من البرامج سهلة الاستخدام ، التي يطلق عليها اسم برنامج التطبيقات(Application Software) ، جميع التطبيقات والأدوات المساعدة التي تستخدمها على جهاز الكمبيوتر الخاص بك ، مثل متصفح الويب أو محرر الكلمات. يوجد أدناه نظام(System) التشغيل ، الذي يتعامل مع التفاصيل منخفضة المستوى مثل عرض المرئيات على الشاشة والتعامل مع المدخلات.

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

البرامج(Software) الثابتة: الطبقة التأسيسية(Foundation Layer) للبرنامج

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

البرنامج الثابت(Firmware) هو الرابط بين الأجهزة والبرامج ، مما يسمح للمطورين باستخدام قدرات الجهاز من خلال واجهة برمجة مبسطة بدلاً من التعليمات الخاصة بوحدة المعالجة المركزية. بالنسبة لجهاز الكمبيوتر ، هذا البرنامج الثابت هو نظام إخراج الإدخال الأساسي (BIOS)(Basic Input Output System (BIOS)) المعروف ، ويمكن الوصول إليه حتى بدون نظام تشغيل.

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

كيف يتم تثبيت البرنامج الثابت(Firmware Installed) على الجهاز(Device) ؟

لا يوجد جهاز إلكتروني قابل للاستخدام بدون البرامج الثابتة. هذا هو السبب في أن جميع المكونات الإلكترونية تأتي مع البرامج الثابتة المثبتة مسبقًا من قبل الشركة المصنعة.

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

تحديث البرامج الثابتة ليس سهلاً ولا ضروريًا على معظم الأجهزة. نظرًا لكونه رمز التحكم الأساسي للجهاز ، فإن العبث به يمكن أن يجعل الأجهزة غير قابلة للاستخدام. تعد أجهزة الكمبيوتر استثناءً ، حيث تسمح للمستخدم بتثبيت ترقيات BIOS(BIOS upgrades to be installed) عن طريق وميض الشريحة.

البرامج الثابتة مقابل البرامج: لمحة سريعة

Firmware Software
Essential code that directly controls the hardware components. Optional programs that utilize firmware to perform complex tasks.
Stored on a dedicated chip on the device. Installed on the hard disk memory.
Comes pre-installed by the manufacturer. Can be installed and configured by the user.
The lowest layer of code that supports operating systems and other software. Higher-level code that relies on the firmware below it for hardware abstraction.
Often the sole controlling program in simple electronic devices. Cannot function without firmware.
Hardware specific. Firmware differs for different processor architectures and cannot be interchanged. Hardware independent. OS functions the same on different processor families, though application software is usually OS specific.
Updated very rarely, if at all. Cannot be uninstalled. Easy to upgrade and remove.

كيف تختلف البرامج الثابتة عن البرامج(Firmware Different From Software) ؟

يُطلق على الأجهزة(Hardware) والبرامج عادةً اسم المكونين(Software) للجهاز الإلكتروني ، ولكن هذه ليست الصورة الكاملة. لا يمكن لأنظمة(Systems) التشغيل والتطبيقات الاتصال بالجهاز مباشرة ، مما يتطلب طبقة من التعليمات البرمجية المتخصصة لسد الفجوة.

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

بسبب طبيعتها الأساسية ، تأتي البرامج الثابتة محملة مسبقًا على شريحة فلاش على اللوحة الأم نفسها ، بغض النظر عن أي برنامج مكتوب على القرص. لا يمكن تحديثه (أي "وميض") إلا بعمليات متخصصة(updated (ie. “flashed”) with specialized processes) ، على عكس التثبيت البسيط لحزم البرامج.

تأتي جميع الأجهزة الإلكترونية والمكونات الطرفية مع البرامج الثابتة الخاصة بها. الكاميرات الرقمية(Digital) والهواتف الذكية ومحركات أقراص الحالة الثابتة(SSDs) وحتى محركات أقراص USB - إذا كانت تحتوي على أجهزة تحتاج إلى التحكم ، فهناك برنامج ثابت على متنها لإدارتها.



About the author

أنا مهندس أجهزة متخصص في تصميم وتطوير منتجات Apple مثل iPhone و iPad. لدي خبرة في كل من أجهزة iOS و edge ، بالإضافة إلى أدوات تطوير البرامج مثل Git و Swift. تمنحني مهاراتي في كلا المجالين فهمًا قويًا لكيفية تفاعل نظام تشغيل أجهزة Apple (OS) مع التطبيقات ومصادر البيانات. بالإضافة إلى ذلك ، تمكنني تجربتي مع Git من العمل على أنظمة التحكم في إصدار الكود ، والتي يمكن أن تساعد في تحسين الكفاءة والإنتاجية عند تطوير البرامج.



Related posts