برنامج تشغيل الجهاز

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

يتواصل برنامج التشغيل مع الجهاز عبر ناقل البيانات أو نظام الاتصالات الفرعي الذي يتصل به الجهاز. عندما يستدعي برنامجٌ ما روتينًا في برنامج التشغيل ، يُصدر برنامج التشغيل أوامر إلى الجهاز (يُشغّله). بمجرد أن يُرسل الجهاز البيانات إلى برنامج التشغيل، قد يستدعي برنامج التشغيل روتينات في البرنامج الأصلي الذي استدعاه.

تعتمد برامج التشغيل على مكونات الجهاز ونظام التشغيل. وهي عادةً ما توفر معالجة المقاطعات اللازمة لأي واجهة أجهزة غير متزامنة تعتمد على الوقت. [ 2 ]

غاية

يتمثل الغرض الرئيسي من برامج تشغيل الأجهزة في توفير تجريد للأجهزة من خلال العمل كوسيط بين جهاز مادي والتطبيقات أو أنظمة التشغيل التي تستخدمه. [ 1 ] يمكن للمبرمجين كتابة تعليمات برمجية عالية المستوى للتطبيقات بشكل مستقل عن نوع الأجهزة التي يستخدمها المستخدم النهائي.

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

تطوير

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

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

يستخدم نظام التشغيل ويندوز مزيجًا من برامج التشغيل وبرامج التشغيل المصغرة، حيث يتم توفير برنامج تشغيل الفئة/المنفذ الكامل مع نظام التشغيل، بينما يتم تطوير برامج تشغيل الفئة/المنفذ المصغرة من قبل الموردين، وتُنفذ مجموعة فرعية خاصة بالأجهزة أو الوظائف من حزمة برامج التشغيل الكاملة. [ 4 ] يُستخدم نموذج المنفذ المصغر في برامج تشغيل NDIS و WDM و WDDM و WaveRT و StorPort و WIA و HID ؛ حيث يستخدم كل منها واجهات برمجة تطبيقات خاصة بالجهاز، ومع ذلك يتطلب من المطور التعامل مع مهام إدارة الجهاز.

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

لدى شركة آبل إطار عمل مفتوح المصدر لتطوير برامج التشغيل على نظام macOS ، ويسمى I/O Kit.

في بيئات لينكس، يستطيع المبرمجون بناء برامج تشغيل الأجهزة كجزء من النواة ، أو بشكل منفصل كوحدات قابلة للتحميل ، أو كبرامج تشغيل في وضع المستخدم لأنواع معينة من الأجهزة التي تتوفر لها واجهات نواة، مثل أجهزة USB. تتضمن أداة Makedev قائمة بالأجهزة في لينكس، بما في ذلك ttyS (طرفية)، وlp ( منفذ متوازي )، وhd (قرص)، وloop، وsound (تشمل هذه الأجهزة الخلاط ، والمُسلسل ، ومعالج الإشارات الرقمية ، والصوت). [ 5 ]

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

مستويات الامتياز

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

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

تشمل مستويات التجريد الشائعة لبرامج تشغيل الأجهزة ما يلي:

  • بالنسبة للأجهزة:
    • التفاعل المباشر
    • الكتابة إلى سجل التحكم بالجهاز أو القراءة منه
    • باستخدام واجهة ذات مستوى أعلى (مثل واجهة BIOS للفيديو )
    • استخدام برنامج تشغيل جهاز آخر منخفض المستوى (مثل برامج تشغيل نظام الملفات التي تستخدم برامج تشغيل الأقراص)
    • محاكاة العمل باستخدام الأجهزة، أثناء القيام بشيء مختلف تمامًا [ 9 ]
  • بالنسبة للبرامج:
    • السماح لنظام التشغيل بالوصول المباشر إلى موارد الأجهزة
    • تنفيذ العناصر الأساسية فقط
    • تنفيذ واجهة لبرامج غير برامج التشغيل (مثل TWAIN )
    • تنفيذ لغة برمجة، وأحيانًا تكون لغة عالية المستوى (مثل PostScript )

التطبيقات

بسبب تنوع العصر الحديثتعمل برامج التشغيل، التي تشمل الأجهزة وأنظمة التشغيل، في بيئات مختلفة. [ 10 ] قد تتفاعل برامج التشغيل مع:

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

برامج تشغيل الأجهزة الافتراضية

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

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

توجد عدة أنواع من برامج تشغيل الأجهزة الافتراضية، مثل VxDs و VLMs و VDDs.

برامج تشغيل مفتوحة المصدر

وصف برامج تشغيل الأجهزة الشائعة الاستخدام في نظام سولاريس :

  • fas: وحدة تحكم SCSI سريعة/واسعة
  • hme:  إيثرنت سريع (10/100 ميجابت/ثانية)
  • مزود خدمة الإنترنت: وحدات تحكم SCSI التفاضلية وبطاقة SunSwift
  • glm: (وحدة ربط جيجابود [ 15 ] ) وحدات تحكم UltraSCSI
  • SCSI: أجهزة واجهة الاتصال التسلسلي للحاسوب الصغير (SCSI)
  • sf: soc+ أو حلقة تحكيم قناة الألياف الاجتماعية (FCAL)
  • soc: وحدات تحكم مصفوفة تخزين SPARC (SSA) وجهاز التحكم
  • اجتماعي: وحدات تحكم بصرية تسلسلية لـ FCAL (soc+)

واجهات برمجة التطبيقات

المعرفات

يُعرَّف الجهاز على ناقل PCI أو USB بواسطة مُعرِّفين، كلٌّ منهما يتألف من بايتين . يُحدِّد مُعرِّف المُورِّد الشركة المُصنِّعة للجهاز، بينما يُحدِّد مُعرِّف الجهاز جهازًا مُحدَّدًا من تلك الشركة المُصنِّعة/المُورِّدة.

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

حماية

غالباً ما تحتوي أجهزة الكمبيوتر على العديد من برامج تشغيل الأجهزة المتنوعة والمخصصة التي تعمل في نواة نظام التشغيل الخاص بها، والتي غالباً ما تحتوي على العديد من الأخطاء والثغرات الأمنية ، مما يجعلها هدفاً للاستغلال . [ 19 ]يقوم مهاجم " إحضار برنامج تشغيل خاص به قابل للاختراق " (BYOVD) بتثبيت أي برنامج تشغيل قديم موقّع من طرف ثالث يحتوي على ثغرات أمنية معروفة تسمح بإدخال برمجيات خبيثة في نواة النظام. [ 20 ] تشمل برامج التشغيل التي قد تكون عرضة للاختراق برامج تشغيل الواي فاي والبلوتوث، [ 21 ] [ 22 ] وبرامج تشغيل الألعاب/الرسومات، [ 23 ] وبرامج تشغيل الطابعات. [ 24 ]

يوجد نقص في أدوات الكشف الفعّالة عن ثغرات نواة النظام، لا سيما لأنظمة التشغيل مغلقة المصدر مثل مايكروسوفت ويندوز [ 25 حيث يكون رمز المصدر لبرامج تشغيل الأجهزة في الغالب ملكية خاصة وغير متاح للفحص [ 26 ] ، وغالبًا ما تتمتع برامج التشغيل بصلاحيات واسعة [ 27 ] [ 28 ] [ 29 ] [ 30 ] .

تعتبر مجموعة من باحثي الأمن أن غياب العزل أحد العوامل الرئيسية التي تقوض أمن النواة ، [ 31 ] وقد نشروا إطار عمل للعزل لحماية نواة أنظمة التشغيل، ولا سيما نواة لينكس المتجانسة التي يقولون إن برامج تشغيلها تتلقى حوالي 80,000 تحديث سنويًا. [ 32 ] [ 33 ]

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

يمكن تصنيف الآليات أو السياسات التي توفرها النواة وفقًا لعدة معايير، بما في ذلك:

  • سواء كانت ثابتة (يتم فرضها في وقت الترجمة ) أو ديناميكية (يتم فرضها في وقت التشغيل
  • سواء كانت وقائية أو لاحقة للكشف؛
  • سواء كانت مدعومة بالأجهزة أو تعتمد على اللغة؛
  • سواء كانت آلية مفتوحة أم سياسة ملزمة؛
  • وفقًا لمبادئ الحماية التي تستوفيها (على سبيل المثال، دينينج [ 35 ] [ 36 ]
  • وغيرها الكثير.

انظر أيضاً

مراجع

  1. 1 2 "ما هو برنامج تشغيل الجهاز؟" . WhatIs.com . TechTarget. مؤرشف من الأصل في 13 فبراير 2021. تم الاطلاع عليه في 19 مارس 2018 .
  2. خدمات التعليم EMC (2010). تخزين المعلومات وإدارتها: تخزين المعلومات الرقمية وإدارتها وحمايتها . جون وايلي وأولاده. ISBN 9780470618332أُرشف من المصدر الأصلي بتاريخ 13 فبراير 2021. تم الاطلاع عليه بتاريخ 10 نوفمبر 2020 .
  3. بيرك، تيموثي (1995). كتابة برامج تشغيل الأجهزة: دليل مرجعي . دار النشر الرقمية. رقم ISBN 9781555581411أُرشف من المصدر الأصلي بتاريخ 26 يناير 2021. تم الاطلاع عليه بتاريخ 5 أغسطس 2016 .
  4. "اختيار طراز برنامج التشغيل" . مايكروسوفت . تم الاسترجاع في 30 مارس 2021 .
  5. "MAKEDEV — أمر لينكس — أمر يونكس" . Linux.about.com. 11-09-2009. مؤرشف من الأصل في 30-04-2009 . تم الاطلاع عليه في 17-09-2009 .  
  6. تانينباوم، أندرو؛ وودهول، ألبرت (2006). أنظمة التشغيل، التصميم والتنفيذ (الطبعة الثالثة ). أبر سادل ريفر، نيوجيرسي: بيرسون بريتنس هول. ص 256. ISBN   0-13-142938-8.
  7. يوسيفوفيتش، بافيل؛ إيونيسكو، أليكس؛ روسينوفيتش، مارك؛ سولومون، ديفيد (2017). أساسيات نظام ويندوز، الجزء الأول ( الطبعة السابعة). ريدموند، واشنطن: مطبعة مايكروسوفت. ISBN  978-0-7356-8418-8.
  8. "مقدمة إلى إطار عمل برنامج تشغيل وضع المستخدم (UMDF)" . مايكروسوفت . 10-10-2006. مؤرشف من الأصل في 7-1-2010 . تم الاطلاع عليه في 4-3-2008 .
  9. ملحقات الحاسوب وواجهاته . منشورات تقنية، بونا. يناير 2008. الصفحات 5-8 . ISBN  978-8184314748تم الاطلاع عليه بتاريخ 2016-05-03 .
  10. ديبورا مورلي (2009). فهم الحواسيب 2009: اليوم والغد . سينجايج ليرنينج. ISBN 9780324830132أُرشف من المصدر الأصلي بتاريخ 9 يونيو 2021. تم الاطلاع عليه بتاريخ 10 نوفمبر 2020 .
  11. "ما هي برامج تشغيل الأجهزة ولماذا نحتاجها؟" . drivers.com . ١٧ أبريل ٢٠١٥. مؤرشف من الأصل في ٢٠ نوفمبر ٢٠١٦. تم الاطلاع عليه في ١٩ مارس ٢٠١٨ .
  12. تشيسنال، ديفيد (2007). الدليل الشامل لبرنامج زين هايبرفايزر ( الطبعة الأولى). الولايات المتحدة الأمريكية: دار برنتيس هول للنشر. رقم ISBN  978-0-13-234971-0.
  13. "CCISS" . سورس فورج . 2010. مؤرشف من الأصل بتاريخ 21-08-2010 . تم الاسترجاع بتاريخ 11-08-2010 . برامج تشغيل لوحدات تحكم HP (كومباك سابقًا) Smart Array التي توفر إمكانية RAID للأجهزة.
  14. راسل، ستيف؛ وآخرون . (21-10-2003). الاختصارات والمختصرات . منظمة الدعم الفني الدولية لشركة آي بي إم. ص 207. ISBN   0-7384-2684-9تم الاطلاع عليه بتاريخ 14 أغسطس 2011 .{{cite book}}تم |work=تجاهله ( مساعدة )
  15. "براءة اختراع أمريكية رقم 5969841 - وحدة وصلة جيجابود مع إشارة كشف الطاقة المستلمة" . شركة PatentStorm LLC. مؤرشفة من الأصل بتاريخ 12 يونيو 2011. تم الاطلاع عليها بتاريخ 8 سبتمبر 2009. تُقدم وحدة وصلة جيجابود (GLM) مُحسّنة لإجراء عمليات نقل بيانات ثنائية الاتجاه بين جهاز مضيف ووسيط نقل تسلسلي.
  16. "نموذج الصوت الموحد (ويندوز سي إي 5.0)" . شبكة مطوري مايكروسوفت . 14 سبتمبر 2012. مؤرشف من الأصل في 22 يونيو 2017. تم الاطلاع عليه في 19 سبتمبر 2016 .
  17. ديل الولايات المتحدة. "ما هي برامج تشغيل DCH ولماذا تحتاج إلى معرفة المزيد عنها؟ | ديل الولايات المتحدة" . www.dell.com . تاريخ الاسترجاع: 29 أكتوبر 2020 .
  18. "dxd - إطار عمل برنامج تشغيل Dynax: الصفحة الرئيسية" . dxd.dynax.at . مؤرشف من الأصل بتاريخ 29-05-2016 . تم الاطلاع عليه بتاريخ 19-09-2016 .
  19. طالبي، سيد محمد جواد سيد؛ توكلي، حامد؛ تشانغ، هانغ؛ تشانغ، تشنغ؛ ساني، أردلان أميري؛ تشيان، تشيون (2018). سحر: تسهيل التحليل الديناميكي لبرامج تشغيل الأجهزة في الأنظمة المتنقلة . الصفحات 291-307 . ISBN  9781939133045أُرشف من المصدر الأصلي في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  20. غودين، دان (14 أكتوبر 2022). "كيف أدى خطأ من مايكروسوفت إلى تعريض ملايين أجهزة الكمبيوتر لهجمات برمجيات خبيثة قوية" . آرس تكنيكا . مؤرشف من الأصل في 8 نوفمبر 2022. تم الاطلاع عليه في 8 نوفمبر 2022 .
  21. ريدلي، جاكوب (9 فبراير 2022). "ستحتاج إلى تحديث برامج تشغيل الواي فاي والبلوتوث اليوم" . بي سي غيمر . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  22. «هجمات "بلو بورن" اللاسلكية تستهدف مليارات أجهزة البلوتوث» . threatpost.com . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  23. سبادافورا، أنتوني (12 يناير 2022). "تثبيت برامج تشغيل الألعاب قد يجعل جهاز الكمبيوتر الخاص بك عرضة للهجمات الإلكترونية" . TechRadar . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  24. "شركة HP تُصلح ثغرة أمنية في برنامج تشغيل الطابعات ظلت موجودة لمدة 16 عامًا" . ZDNET . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  25. بان، جيان فنغ؛ يان، جوانجلو؛ فان ، شياوكاو (2017). Digtool: إطار عمل {يعتمد على المحاكاة الافتراضية} لاكتشاف ثغرات Kernel . جمعية يوزينيكس. ص 149 – 165. ISBN  9781931971409تم الاطلاع عليه بتاريخ 5 نوفمبر 2022 .
  26. كينغ، بيرتل (18 يونيو 2022). "برامج تشغيل الأجهزة مغلقة المصدر مقابل مفتوحة المصدر: لماذا يهم ذلك؟" . MUO . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاسترجاع في 5 نوفمبر 2022 .
  27. برانسكومب، ماري (7 أبريل 2022). "كيف تحظر مايكروسوفت برامج التشغيل الضعيفة والخبيثة في برنامج Windows Defender، وأدوات الأمان الخارجية، وفي نظام التشغيل Windows 11" . TechRepublic . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  28. غودين، دان (5 أكتوبر 2022). "لا يوجد حل في الأفق لثغرة أمنية واسعة النطاق تُعيق أحد أهم أنظمة حماية ويندوز منذ سنوات" . آرس تكنيكا . مؤرشف من الأصل في 5 نوفمبر 2022. تم الاطلاع عليه في 5 نوفمبر 2022 .
  29. دافنبورت، كوربين. "هجمات "أحضر برنامج التشغيل الخاص بك المعرض للثغرات" تُعطّل نظام ويندوز . موقع How-To Geek . مؤرشف من الأصل بتاريخ 5 نوفمبر 2022. تم الاطلاع عليه بتاريخ 5 نوفمبر 2022 .
  30. "تنبيه أمني لنظام ويندوز 10: اكتشاف ثغرات أمنية في أكثر من 40 برنامج تشغيل" . BleepingComputer . مؤرشف من الأصل بتاريخ 5 نوفمبر 2022. تم الاطلاع عليه بتاريخ 5 نوفمبر 2022 .
  31. "عزل النواة الدقيق" . mars-research.github.io . مؤرشف من الأصل في 15 سبتمبر 2022. تم الاطلاع عليه في 15 سبتمبر 2022 .
  32. فيتزر، ماري. "العزل التلقائي لبرامج تشغيل الأجهزة يحمي من الأخطاء في أنظمة التشغيل" . جامعة ولاية بنسلفانيا عبر techxplore.com . مؤرشف من الأصل في 15 سبتمبر 2022. تم الاطلاع عليه في 15 سبتمبر 2022 .
  33. هوانغ، يونغتشي؛ نارايانان، فيكرام؛ ديتويلر، ديفيد؛ هوانغ، كايمينغ؛ تان، غانغ؛ ياغر، ترينت؛ بورتسيف، أنطون (2022). "KSplit: أتمتة عزل برامج تشغيل الأجهزة" (ملف PDF) . مؤرشف (PDF) من الأصل في 15 سبتمبر 2022. تم الاطلاع عليه في 15 سبتمبر 2022 .
  34. وولف 1974، الصفحات 337-345
  35. دينينغ 1976
  36. اقتباس من Swift 2005، ص 29: "العزل، والتحكم في الموارد، والتحقق من القرار (الفحص)، واستعادة الأخطاء".