ويندوز ولينكس جزءا لا يتجزأ من النشر

توضح هذه المقالة كيفية نشر نظام مضمن بسرعة استنادًا إلى Windows 10 و Debian Linux. يتم إعطاء أمثلة على بناء واجهة آمنة.

مقدمة


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


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


متطلبات واجهة


من وجهة نظر المستخدم ، يجب أن تفي الواجهة بالمتطلبات التالية:


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

وبعبارة أخرى ، وجود قيود كاملة على إجراءات المستخدم ، والاستقرار وقابلية التوسع.


بالنسبة لنظام التشغيل لجهاز كمبيوتر أحادي اللوحة ، سننظر على الفور في خيارين ، أحدهما يعتمد على Windows والآخر يعتمد على Linux ، وسنقارنهما مع بعضنا البعض.


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


من أجل عدم الخوض في الفروق الدقيقة لتثبيت Windows و Linux على نظام ARM ، يمكن تجميع النظام بسهولة على أساس بعض المعالجات المتوافقة مع x86. في هذه الحالة ، تم استخدام واحدة من العديد من اللوحات المتوفرة على منصة Intel Bay Trail لإجراء التجارب.


تتوفر حزمة من جميع البرامج والبرامج النصية على GitHub .


مسار ويندوز


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


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


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


إصلاح سريع


عند الفحص الأول ، اتضح أنه حتى في نظام التشغيل Windows 10 العادي ، توجد بالفعل وظيفة "Assigned Access" مضمنة (الشكل 1) ، والتي تبدو كحل جاهز للمهمة.


وصول معين

شكل 1. تعيين وظيفة الوصول


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


القرار الصحيح


1. التثبيت الأولي


أولاً وقبل كل شيء ، نحن بحاجة إلى توزيع Windows 10 Enterprise LTSB . يمكنك التقاط صورة Microsoft الأصلية ، أو يمكنك استخدام بعض الصور الخفيفة ، أو إنشاء صورك الخاصة باستخدام أدوات الجهات الخارجية. بالنسبة للوحة التجريبية ، تم اختيار أحد التجميعات الجاهزة (إصدار 32 بت خفيف الوزن).


نقوم بتثبيت النظام من مجموعة التوزيع على اللوحة المستهدفة. عند التثبيت ، نقوم بتقسيم القرص إلى قسمين ، C: - للنظام ، D: - للتطبيق الرئيسي والأدوات المساعدة والسجلات. هذا الانهيار مفيد في المستقبل لمرشح التسجيل. بعد التثبيت ، ننتظر حتى تظهر قائمة الإعدادات ، أو لا نواصل القائمة مع إعدادات الشبكة.


نقوم بإعادة التشغيل في وضع الخدمة عبر Ctrl + Shift + F3.


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


نافذة Sysprep

شكل 2. وضع الخدمة.


2. تكوين النظام


لمزيد من الإجراءات ، ستحتاج إلى أدوات النشر من أدوات التقييم والنشر لـ Windows 10 .


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


معرفة الرقم التسلسلي للإصدار المطلوب داخل الحاوية (SourceIndex).


dism /Get-WimInfo /WimFile:install.esd 

ثم ، قم باستخراج ملف الصورة (في هذه الحالة ، الأول في الحاوية).


 dism /export-image /SourceImageFile:install.esd /SourceIndex:1 /DestinationImageFile:install.wim /Compress:max /CheckIntegrity 

أنت الآن بحاجة إلى فتح الصورة في Windows System Image Manager (من أدوات النشر) وإنشاء دليل.


تجدر الإشارة إلى أن العمل مع الصور في Windows System Image Manager يكون ممكنًا فقط إذا كان عمق بت الصورة يطابق عمق بت المضيف. وهذا يعني أنه من المستحيل تحرير صورة الإصدار 32 بت في نظام 64 بت. هنا ، كما يقولون ، لا تعليق.


عند إنشاء الدليل ، قم بتحرير ملف الإجابات للأداة المساعدة SysPrep . أدخل معلومات المالك ، أضف المستخدمين الضروريين وقم بتكوين أول توقيع تلقائي (الشكل 3).


ملف الإجابات

شكل 3. إنشاء ملف الإجابات.


ليس من المنطقي إدراج جميع المعلمات ؛ يمكن العثور على محتويات ملف الإجابات في المستودع. الشيء الرئيسي هو عدم نسيان تعيين المعلمات CopyProfile إلى true ، SkipReam إلى 1 وتمكين autologin المسؤول. يمكنك إدخال مفتاح المنتج الخاص بك في القسم 4 المتخصص - Microsoft-Windows-Shell-Setup - ProductKey .


3. تثبيت البرامج


بعد ذلك ، ستحتاج إلى ملف صورة install.wim الفعلي ، لذلك تحتاج إلى وضعه بجوار ملف الإجابات customize.xml ، والذي بعده يجب حفظ المسار يدويًا للصورة. في نهاية الملف ، يجب أن يبدو السطر كما يلي:


 <cpi:offlineImage cpi:source="wim:d:/service/install.wim#Windows 10 Enterprise LTSB" xmlns:cpi="urn:schemas-microsoft-com:cpi" /> 

للحصول على واجهة العرض التوضيحي لـ KioskShell ، تحتاج إلى إنشاء إصدار لنظام التشغيل Windows من المصدر. نصائح التجميع موجودة في المستودع.


نقوم بنسخ الملفات إلى اللوحة والحصول على بنية الملفات والدليل التالية:


 C:\ └── Design\ ├── backgroundDefault.jpg -      ( ) └── oemlogo.bmp -  ,      D:\ ├── Logs\ -       ├── Service\ │ ├── AfterSetup.bat -   ,     SysPrep │ ├── FirstLogon.bat -        │ ├── customize.xml -   │ ├── install.wim -   │ ├── CustomShellSetup.ps1 -  PowerShell     │ ├── EnableRules.ps1 -  PowerShell     │ ├── DisableAllRules.ps1 -      ( ) │ └── UserLogon.bat -      ( ) └── Shell\ -     "KioskShell.exe"    

4. إعداد النظام اليدوي


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


نقوم بتثبيت المكونات الضرورية للنظام المضمن وتعطيل التحكم في حساب المستخدم (انظر AfterSetup.bat من المستودع)


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


بما أنه في المستقبل أود أن أكون قادرًا على الإدارة عن بُعد ، سنعمل على الوصول عبر RDP. ستنتهي صلاحية كلمة مرور المسؤول في مرحلة التكوين التلقائي.


بعد ذلك ، تحتاج إلى تعطيل تحديث النظام في محرر نهج المجموعة المحلي (في قسم تكوين الكمبيوتر - القوالب الإدارية - مكونات Windows - Windows Update ، تحتاج إلى تعيين التحديثات التلقائية المكونة على معطل ). بالإضافة إلى ذلك ، تحتاج أيضًا إلى إيقاف تشغيل المسح التلقائي لـ Windows Update (في برنامج جدولة المهام في قسم Microsoft - Windows - UpdateOrchestrator الذي تحتاجه لتعطيل كل المهام) ، وإلا ستظهر نافذة سوداء في كل مرة تقوم فيها بالتشغيل ، وعند اتصالك بالإنترنت ، قد يبدأ Windows في التحديث فجأة.


بعد ذلك ، قم بتكوين إعدادات الطاقة. للقيام بذلك ، يجب أولاً جعل جميع إعدادات الطاقة مرئية في قسم إعدادات الطاقة المتقدمة (لهذا ، في التسجيل في كل مفتاح فرعي في HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Power \ PowerSettings \ 238C9FA8-0AAD-41ED-83F4-97BE242C8F20 ، قيمة له 2 ). الآن بعد توفر كل الإعدادات ، قم بإيقاف تشغيل وضع السكون ووضع الغياب وإزالة الإجراء على زر الطاقة (إلا إذا كنت بحاجة إلى خلاف ذلك بالطبع) ، وقم بإيقاف تشغيل مؤقت التفويض عندما يكون خاملاً. بعد ذلك ، نزيل وضع الاستعداد مع الاتصال (في قسم HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Power ، قم بتعيين المعلمة CsEnabled على 0 ). إذا لزم الأمر ، قم بإيقاف تشغيل التحكم في درجة سطوع الشاشة.


عند اكتمال جميع إعدادات النظام ، لدينا الفرصة الأخيرة لإجراء أي تغييرات ، لأن التشغيل الثاني من البرنامج النصي AfterSetup.bat سيبدأ آلية التكوين التلقائي باستخدام SysPrep ، والتي لا يمكن إيقافها. لا تزال بحاجة إلى تذكر تنشيط النظام (يُقترح تعريف نفسك بخيارات تنشيط إصدارات الشركات من Windows بنفسك). حتى في هذه المرحلة ، يمكنك عمل نسخة احتياطية من القرص بأكمله وإصلاح الحالة الأولية للصورة في حالة حدوث أي تغييرات في المستقبل.


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


5. الإعداد النهائي للنظام التلقائي


بعد التحميل الأول لصورة العمل (انظر FirstLogon.bat من المستودع) ، سيتم تكوين الواجهة الآمنة ، وسيتم إعادة تكوين التوليف التلقائي إلى حساب المستخدم ، وسيتم تعطيل اختصارات لوحة المفاتيح التي يمكنها كسر النظام. بعد ذلك ، سيتم تكوين مرشح الكتابة الموحد وتفعيله. في هذه الحالة ، يتم تكوين المرشح لحماية جميع الأقسام باستثناء مجلدات الخدمة والسجلات ، ويستخدم مبادلة 256 ميجابايت. سيتم إعادة تشغيل النظام عدة مرات ، وإذا تم تنفيذ كل شيء بشكل صحيح ، فسيظهر واجهة آمنة عند بدء التشغيل التالي نيابة عن حساب المستخدم .


لخدمة النظام في الموقع ، من الممكن الانتقال إلى شاشة تسجيل الدخول ، وعلى سبيل المثال ، تسجيل الدخول إلى حساب المسؤول. في نظام التشغيل Windows 10 ، يتم توفير طريقة قياسية لذلك ، تحتاج إلى الضغط على مفتاح "Win" 5 مرات متتالية.


مسار لينكس


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


حل بسيط


1. التثبيت الأولي


لذا ، أولاً وقبل كل شيء ، نحن بحاجة إلى التوزيع نفسه ، على سبيل المثال دبيان . يمكنك أن تأخذ آخر ، يمكنك أن تجعل بنفسك. الشيء الرئيسي هو أن التوزيع لا يحتوي على نظام تحديث تلقائي. بالنسبة للوحة التجريبية ، تم اختيار Debian Linux 9 (إصدار 64 بت ، kernel 4.9).


نقوم بتثبيت النظام بالطريقة التقليدية. عند التثبيت ، نقوم بتقسيم القرص إلى قسمين ، sda1 - / للنظام ، sda2 - / var / log لسجلات النظام والبرامج. هذا الانهيار مفيد في المستقبل لمرشح التسجيل. تثبيت xfce واجهة المستخدم الرسومية وخادم ssh . نضيف المسؤول أثناء تثبيت المستخدم وتعيين كلمة المرور.


بعد التثبيت ، أول شيء من حساب الجذر هو إضافة مستخدم المسؤول إلى مجموعة sudo .


 apt install sudo adduser administrator sudo 

نذهب إلى النظام تحت مسؤول اسم المستخدم وإضافة مستخدم مستخدم جديد.


 sudo useradd -m user 

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


 sudo passwd -d user 

2. تكوين النظام


نقوم بتثبيت برامج التشغيل وحزم البرامج الثابتة وبرامج إضافية حسب الرغبة.


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


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


 sudo apt install fluxbox arandr plymouth 

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


معلمات الشاشة set_resolution.sh


شكل 4. إعدادات الشاشة.


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


أنت الآن بحاجة إلى تكوين fluxbox لتلبية متطلبات الواجهة الموضحة أعلاه. للقيام بذلك ، قم بإيقاف تشغيل لوحة session.screen0.toolbar.visible في /home/user/.fluxbox/init : false ، علق على جميع اختصارات لوحة المفاتيح باستثناء أزرار الصوت في / home/user/ .fluxbox / keys و / home / user /. يضيف fluxbox / startup إطلاق البرنامج النصي لتهيئة الشاشة ، مما يؤدي إلى تعطيل وظائف توفير الطاقة للشاشة والتشغيل التلقائي للتطبيق بملء الشاشة. سيقوم البرنامج النصي بإعادة تشغيل التطبيق في حالة فشل غير متوقع.


 set_resolution.sh xset -dmps s off /home/user/autostart.sh & 

أنت الآن بحاجة إلى تسريع عملية تمهيد النظام وإخفائها عن المستخدم. للقيام بذلك ، قم بتعيين GRUB_TIMEOUT = 0 في / etc / default / grub وقم بتعيين quiet_boot = "1" في /etc/grub.d/10_linux . لعرض الرسوم المتحركة عند التحميل في معلمات kernel GRUB_CMDLINE_LINUX ، تحتاج إلى إضافة خيار البداية ، وإذا تغير اتجاه الشاشة ، فإن fbcon = rotate: 1 أو fbcon = rotate: 3 يعتمد على الاتجاه. إذا لزم الأمر ، يمكنك تغيير الدقة والاتجاه على شاشة تسجيل الدخول. لهذا الغرض ، يجب تحديد display-setup-script = set_resolution.sh في /etc/lightdm/lightdm.conf . وإذا كنت بحاجة إلى إخفاء المؤشر ، فقم بإضافة xserver-command = X -core -nocursor .


سنختار أسلوب تحميل الرسوم المتحركة.


 sudo plymouth-set-default-theme -R text 

وأخيرا إصلاح جميع التغييرات.


 sudo update-grub2 

3. تثبيت البرامج


للحصول على واجهة العرض التوضيحي لـ KioskShell ، تحتاج إلى إنشاء إصدار Linux من المصدر. نصائح التجميع موجودة في المستودع.


نقوم بنسخ الملفات إلى اللوحة والحصول على بنية الملفات والدليل التالية:


 / ├── usr/ -      "KioskShell"    ├── local/ │ └── bin/ │ └── set_resolution.sh └── home/ ├── administrator/ │ └── relogin.sh -       └── user/ └── autostart.sh -     

4. الإعداد النهائي للنظام


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


قم بإعداد تسجيل الدخول التلقائي ضمن حساب المستخدم ، لهذا ، قم بتعيين autologin-user = user في /etc/lightdm/lightdm.conf .


الآن تعيين حماية الكتابة.


 sudo apt install bilibop 

عند التثبيت ، حدد خريطة الجهاز الديناميكي المزيف .


قم بتحرير ملف الإعدادات /etc/bilibop/bilibop.conf . نقوم بتنشيط الوحدة النمطية باستخدام المعلمة BILIBOP_LOCKFS = "صواب" وإضافة قسم بالسجلات إلى الاستثناءات BILIBOP_LOCKFS_WHITELIST = "/ var / log" . لنقم بتمكين القدرة على تعطيل الحماية مؤقتًا إذا لزم الأمر BILIBOP_LOCKFS_POLICY = "soft" . وبما أنه لا يوجد تشفير في النظام ، فأنت بحاجة إلى تعيين BILIBOP_LOCKFS_SWAP_POLICY = "soft" .


نقوم بإعادة تشغيل النظام ، وإذا تم القيام بكل شيء بشكل صحيح ، تظهر واجهة آمنة ، يتم إطلاقها نيابة عن حساب المستخدم.


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


لخدمة النظام في مكانه ، من الممكن الوصول إلى شاشة تسجيل الدخول وتسجيل الدخول إلى حساب المسؤول. على نظام Linux ، تحتاج أولاً إلى الوصول إلى وحدة التحكم من خلال Ctrl + Alt + F1. بعد تسجيل الدخول إلى حساب المسؤول ، أجبر المستخدم المستخدم على تسجيل الخروج من النظام.


 sudo skill -KILL -u user 

ثم ارجع إلى الوضع الرسومي عبر Ctrl + Alt + F7 وسجّل الدخول كمسؤول مرة أخرى.


الاستنتاجات


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


تطبيق شل المحمية

شكل 5. الواجهة في العملية.


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


مشكلة الاختيار


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


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


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

Source: https://habr.com/ru/post/ar434086/


All Articles