إنفيرنو (نظام تشغيل)
{{عن|نظام التشغيل «جحيم»||جحيم (توضيح)}}
{{توسيع|تاريخ=فبراير 2017}}
{{بطاقة برمجية}}

'''إنفيرنو''' {{إنج|Inferno}} وتعني «جحيم»، هو [[نظام تشغيل موزع]] بدأ في [[مختبرات بل]]، لكنّه يُطوَّر الآن من قِبَل [[فيتا نوفا القابضة]] كَـ[[برمجيات حرة|برمجيَّة حرَّة]].<ref>{{استشهاد بويب| مسار= https://code.google.com/archive/p/inferno-os | الفصل = Inferno Distributed Operating System | ناشر = Google | عنوان = Project Hosting  | تاريخ الوصول = 2012-06-04| مسار أرشيف = https://web.archive.org/web/20150224225244/http://code.google.com/p/inferno-os/ | تاريخ أرشيف = 24 فبراير 2015 }}</ref> وارتكز على تجارب ل[[بلان 9 من مختبرات بل]]، وَأبحاث مختبرات بل حول أنظمة التشغيل وَاللُّغات وَالمُجمّعات وَالرّسوميّات وَالحماية وَالشبكات وَقابليّة النقل. استُلهِم اسم نظام التشغيل وبرامجه المُرافقة من [[الكوميديا الإلهية]] لِـ[[دانتي أليغييري]].

إنَّ برامجه محمولة على أكثر من نوع من العَتاد وَالشبكات وَالبيئات. وَتُعَرِّف [[آلة افتراضية]] يُمكن تطبيقها على أي آلة حقيقيّة وَمعروفة باسم [[ليمبو (لغة برمجة)#آلة افتراضية|آلة ديس الافتراضيّة]]، ويوفّر [[ليمبو (لغة برمجة)|لغة ليمبو]] وهي لغة [[سلامة الأنماط|آمنة النمط]] تُجَمَّع إلى شِفرة بايت محمولة، وَأيضًا يتضمّن نظام تشغيل افتراضيّ يؤمّن نفس الواجهات عند تشغيله على عَتاده الرسميّ أو ضمن نظام تشغيل آخر.

يُطبَّق [[بروتوكول (اتصالات)|بروتوكول اتّصالات]] يُدعى [[ستيكس (بروتوكول)|ستيكس]](Styx) لتوحيد الوصول إلى المصادر المحليّة والتحكُّم بها، والّتي تستخدمه البرامج عند استدعاء مدير الملفّات القياسيّ للقيام بالعمليَّات: فتح، قراءة، كتابة، إغلاق. وفي الإصدار الرابع للنظام، أصبح ستيكس مُماثلًا لِلإصدار الأحدث من بروتوكول [[9 بي (بروتوكول)|9 بي]] الخاص بِـ[[بلان 9 من مختبرات بل|بلان 9]] وهو [[9 بي 2000]].

== مبادئ التصميم ==
أنُشِئ '''جحيم''' في 1995 من قِبَل أعضاء من [[مختبرات بل]] في قسم أبحاث علم الحاسوب عبر جلب أفكار [[بلان 9 من مختبرات بل]] إلى نطاق أوسع من الأجهزة وَالشبكات. وهو [[نظام تشغيل موزع]] مُرتكز على على ثلاثة مبادئ أساسيَّة مُشتَقَّة من بلان 9:
* '''الموارد كملفَّات:''' تُمَثَّل كل [[مورد نظام (علم الحاسوب)|المَوارد]] كملفَّات ضمن [[نظام الملفات|نظام ملفَّات]] [[سلسلة مراتب|شجريّ]].
* '''حيِّز الأسماء:''' نظرة البرنامج للشبكة هي أنَّها [[حيز اسم|حيِّز أسماء]] وحيد وَمُتماسِك يظهر كَنظام ملفَّات شجريّ لكن قد يعرض موارد منفصلة فيزيائيًّا.
* '''بروتوكول تواصل قياسيٌّ:''' يُستخدم بروتوكول قياسيّ يُدعى [[بي 9 (بروتوكول)|ستيكس]](Styx) للولوج إلى كلّ الموارد، محليَّةً كانت أم عن بُعدٍ.

بهدف استيعاب تنوُّع بيئات الشبكة المُراد استخدامها فيه، رَكَنَ المُصمِّمون إلى أنَّ [[آلة افتراضية|الآلة الافتراضيَّة]] هي مُكوِّن ضروريّ للنظام. وكانت هذه نفس خُلاصة مشروع أوك {{إنج|Oak project}} الَّذي أصبح [[جافا (منصة برمجية)|جافا]]. [[ليمبو (لغة برمجة)#آلة افتراضية|آلة ديس الافتراضيَّة]] هي [[آلة تسجيل]] {{إنج|Register machine}} مُعَدَّة لتطابق المِعماريّة الَّتي تُشَغَّل عليها، بعكس آلة التكديس {{إنج|stack machine}} الخاصّة بِـ[[آلة جافا الافتراضية]]. فائدة هذا المَسعى هو البساطة النسبيّة لإنشاء [[ترجمة في الوقت المناسب|مُترجم في الوقت المُناسِب]] للمِعماريَّات الجديدة.

تؤمِّن الآلة الافتراضيَّة إدارةً للذاكرة صُمِّمَت لتكون فَعَّالة على الأجهزة الَّتي لا تتعدّى ذاكرتها 1 ميبي بايت (ميبي بايت=1,048,576 بايت، رمزها: MiB) وَبدون عَتاد تخطيط-الذاكرة. إنَّ [[جمع القمامة (حاسوب)|جابي القُمامة]] هو تهجين حساب المرجع وَجابي تلوين بالوقت المُناسب يلمّ البيانات المُنسّقة.<ref name="gc">{{استشهاد بدورية محكمة | مسار = http://doc.cat-v.org/inferno/concurrent_gc/concurrent_gc.pdf | عنوان = Very Concurrent Mark and Sweep Garbage Collection without Fine-Grain Synchronization | مؤلف = Lorenz Huelsbergen and Phil Winterbottom| مسار أرشيف = https://web.archive.org/web/20190303163810/http://doc.cat-v.org/inferno/concurrent_gc/concurrent_gc.pdf | تاريخ أرشيف = 3 مارس 2019 }}</ref>

== كتب ==
* {{استشهاد بدورية محكمة | عنوان = Inferno Programming with Limbo &#124; ISBN 0-470-84352-7 | مكان = Chichester | ناشر = John Wiley & Sons | سنة = 2003 | مؤلف-وصلة = Phillip Stanley-Marbell | الأول = Phillip | الأخير = Stanley-Marbell}} describes the 3rd edition of the Inferno operating system, though it focuses more on the Limbo language and its interfaces to the Inferno system, than on the Inferno system itself. For example, it provides little information on Inferno's versatile [[واجهة أوامر (حوسبة)|قشرة]]، which is understandable since it is a programming language textbook.
* {{استشهاد بكتاب | عنوان = Principles of Operating Systems: Design and Applications | مسار = https://archive.org/details/principlesofoper0000stua | isbn = 1-4188-3769-5 | ناشر = Course Technology | سنة = 2008 | مؤلف-وصلة = Brian Stuart | الأول = Brian | الأخير = Stuart}}, uses Inferno for examples of operating system design.
* {{استشهاد بدورية محكمة | عنوان = The Inferno Programming Book: An Introduction to Programming for the Inferno Distributed System | مؤلف1-الأول = Martin | مؤلف1-الأخير = Atkins | مؤلف2-الأول = Charles | مؤلف2-الأخير = Forsyth | مؤلف3-وصلة = Rob Pike | مؤلف3-الأول = Rob | مؤلف3-الأخير = Pike | مؤلف4-الأول = Howard | مؤلف4-الأخير = Trickey}} was intended to provide an operating-system-centric point of view, but was never completed.

== المراجع ==
{{مراجع}}

== روابط خارجيّة ==
* [http://doc.cat-v.org/inferno/4th_edition/ Documentation papers] for the latest inferno release.
* [https://bitbucket.org/inferno-os/inferno-os/ Source code repo], at Bitbucket.
* [http://www.vitanuova.com/inferno/downloads.html Inferno Fourth Edition Download], including source code.
* [http://man.cat-v.org/inferno/ Inferno manual pages].
* [http://doc.cat-v.org/inferno/ Other Inferno documents of interest].
* [http://www.vitanuova.com/news/newsgroup.html Mailing list and other resources].
* [http://ninetimes.cat-v.org Ninetimes]: News and articles about Inferno, Plan 9 and related technologies.
* [http://ipn.caerwyn.com/ Inferno programmer's notebook] - A journal made by an Inferno developer.

'''Ports'''
* [https://web.archive.org/web/20181215073132/https://bitbucket.org/mjl/inferno-ds Inferno for the Nintendo DS]
* [https://web.archive.org/web/20140918032902/http://code.google.com/p/inferno-kirkwood/ Inferno for the Marvell Kirkwood/Sheevaplug]
* [http://wiki.laptop.org/go/inferno Inferno on OLPC]
* [https://code.google.com/p/inferno-openmoko/ Inferno port to the Openmoko neo freerunner]

'''تهتم بالتاريخ'''
* [http://doc.cat-v.org/inferno/historical_documents/website/ Copy of the original Lucent Inferno website]
* [http://doc.cat-v.org/inferno/historical_documents/mailing_lists/interstice/ Archives of the original Inferno mailing list]
{{شريط بوابات|الولايات المتحدة|برمجيات|برمجيات حرة|تقانة المعلومات|عقد 1990|علم الحاسوب}}

{{شريط روب بايك}}

[[تصنيف:إنفيرنو (نظام تشغيل)|*]]
[[تصنيف:نظم تشغيل تعمل على إكس86]]
[[تصنيف:نظم تشغيل تعمل على معمارية آرم]]
[[تصنيف:برمجيات 1996]]
[[تصنيف:نظم تشغيل تعمل على باور بي سي]]
[[تصنيف:نظم تشغيل في الزمن الحقيقي]]
[[تصنيف:نظم تشغيل مضمنة]]
إنفيرنو  وتعني «جحيم»، هو نظام تشغيل موزع بدأ في مختبرات بل، لكنّه يُطوَّر الآن من قِبَل فيتا نوفا القابضة كَـبرمجيَّة حرَّة. وارتكز على تجارب لبلان 9 من مختبرات بل، وَأبحاث مختبرات بل حول أنظمة التشغيل وَاللُّغات وَالمُجمّعات وَالرّسوميّات وَالحماية وَالشبكات وَقابليّة النقل. استُلهِم اسم نظام التشغيل وبرامجه المُرافقة من الكوميديا الإلهية لِـدانتي أليغييري.

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

يُطبَّق بروتوكول اتّصالات يُدعى ستيكس(Styx) لتوحيد الوصول إلى المصادر المحليّة والتحكُّم بها، والّتي تستخدمه البرامج عند استدعاء مدير الملفّات القياسيّ للقيام بالعمليَّات: فتح، قراءة، كتابة، إغلاق. وفي الإصدار الرابع للنظام، أصبح ستيكس مُماثلًا لِلإصدار الأحدث من بروتوكول 9 بي الخاص بِـبلان 9 وهو 9 بي 2000.

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

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

تؤمِّن الآلة الافتراضيَّة إدارةً للذاكرة صُمِّمَت لتكون فَعَّالة على الأجهزة الَّتي لا تتعدّى ذاكرتها 1 ميبي بايت (ميبي بايت=1,048,576 بايت، رمزها: MiB) وَبدون عَتاد تخطيط-الذاكرة. إنَّ جابي القُمامة هو تهجين حساب المرجع وَجابي تلوين بالوقت المُناسب يلمّ البيانات المُنسّقة.

 كتب 
  describes the 3rd edition of the Inferno operating system, though it focuses more on the Limbo language and its interfaces to the Inferno system, than on the Inferno system itself. For example, it provides little information on Inferno's versatile قشرة، which is understandable since it is a programming language textbook.
 , uses Inferno for examples of operating system design.
  was intended to provide an operating-system-centric point of view, but was never completed.

 المراجع 

 روابط خارجيّة 
 Documentation papers for the latest inferno release.
 Source code repo, at Bitbucket.
 Inferno Fourth Edition Download, including source code.
 Inferno manual pages.
 Other Inferno documents of interest.
 Mailing list and other resources.
 Ninetimes: News and articles about Inferno, Plan 9 and related technologies.
 Inferno programmer's notebook - A journal made by an Inferno developer.

Ports
 Inferno for the Nintendo DS
 Inferno for the Marvell Kirkwood/Sheevaplug
 Inferno on OLPC
 Inferno port to the Openmoko neo freerunner

تهتم بالتاريخ
 Copy of the original Lucent Inferno website
 Archives of the original Inferno mailing list

*
تصنيف:نظم تشغيل تعمل على إكس86
تصنيف:نظم تشغيل تعمل على معمارية آرم
تصنيف:برمجيات 1996
تصنيف:نظم تشغيل تعمل على باور بي سي
تصنيف:نظم تشغيل في الزمن الحقيقي
تصنيف:نظم تشغيل مضمنة