الخميس، 1 نوفمبر 2012

نظام التشغيل جنوGNU


جنو هو نظام تشغيل حر يتكون من نواة، ومكتبات، وأدوات النظام، ومترجمات وتطبيقات المستخدم النهائي. اللفظ GNU هو أكرونيم حشوي لعبارة "GNU's Not Unix" أي "جنو ليس يونكس" ، وقد أتت هذه التسمية من كونه صمم ليشبه يونكس لكن يختلف عنه في كونه حراً ولا يحتوي أياً من شفرات يونكس. أعلن ريتشارد ستالمن عن خطة النظام في سبتمبر من العام 1983 وبدأ العمل في برمجيات النظام في يناير 1984. ولا يزال العمل علي تطوير جنو يجري حتى الآن. يُسمى المشروع الذي يطور جنو مشروع جنو والبرامج التي تصدر تحت مظلة جنو تُسمى حزم جنو أو برامج جنو.

تشمل مكونات النظام الأساسية تجميعة مترجمات جنو (GCC)، وأدوات جنو للتعامل مع التثنائيات (binutils)، والغلاف أو الصدفة باش، ومكتبة سي من جنو (glibc)، والأدوات الأساسية (coreutils)، كما تستخدم جنو حزماً خارجية مثل إكس للواجهة الرسومية، ونظام تصفيف المحارف تخ. وليست كل برمجيات جنو تعمل مع نواةجنو (هيردلم يصدر نظام جنو كامل حتى الآن (2010)، فنواة جنو الرسمية -هيرد- لم تكتمل حتى اليوم، لذا فمعظم أنظمة جنو تستخدم نواة لينكس ولكنها رسمياً ليست جزءاً من جنو. يُطلق على إصدارات جنو التي تستخدم النواة لينكس أنظمة  لينكس تبعا لاسم النواة، لكن مشروع جنو يطالب الناس بأن يطلقوا على هذه الأنظمة جنو/لينكس.كما أن الكثير من برمجيات جنو تعمل على العديد من الأنظمة الأخرى مثل ويندوز وبي.إس.دي وسولاريس  وماك أو.إس.كتبت رخصة جنو العمومية ورخصة جنو العمومية الصغرى ورخصة جنو للوثائق الحرة خصيصا من أجل جنو لكنها تستعمل في الكثير من المشاريع الأخرى غير المتعلقة بجنوأعلن عن مشروع جنو في 27 سبتمبر من العام 1983 في مجموعات net.unix-wizards و net.usoft الإخبارية بينما بدأ تطوير البرمجيات في 5 يناير 1984، عندما استقال ستالمن من وظيفته في معهدMIT حتى لا يدّعوا ملكيتهم لجنو أو يعارضوا توزيعه كبرمجيات حرة وطبقا لستالمن، فقد استوحِي الاسم بعد العديد من التلاعبات اللفظية بالكلمات.كان الهدف هو عمل نظام تشغيل حر بالكامل، إذ أراد ستالمان أن يكون مستخدمو الحاسوب أحراراً، كما كان معظمهم في الستينيات والسبعينيات؛ أحراراً في دراسة الشفرة المصدرية للبرمجيات التي يستخدمونها، أحراراً في تعديل سلوك البرمجيات، وأحراراً في نشر النسخ المعدلة. نشرت هذه الفلسفة في مارس 1985 باسم بيان جنو GN Manifesto.
أغلب البرمجيات التي احتاجها المشروع كتبت من الصفر، فيما اُستخدمت البرمجيات الحرة المتطابقة مع المشروع التي كانت موجودة بالفعل. من الأمثلة على هذا نظام النوفذة إكس ونظام تصفيف المحارف تخ. أغلب العمل في جنو قام به متطوعون؛ بعضهم في وقت فراغه، بعضهم بمقابل من شركات تجارية، مؤسسات تعليمية، ومنظمات أخرى غير ربحية.في أكتوبر 1985 أسس ستالمن مؤسسة البرمجيات الحرة (FSF) في أواخر الثمينينيات وبدايات التسعينيات وظفت منظمة البرامج الحرة عددا من المطورين لكتابة البرامج التي يحتاجها جنو، وقد وصل عدد المطورين إلى 15 أو 16 في أقصى الحالات. 
كما تملك منظمة البرامج الحرة حقوق النسخ لبعض حزم جنو. تخضع أغلب برامج جنو لرخصة جنو العمومية  وعدد أقل لرخصة جنو العمومية الصغرى وعدد أقل ما زال يستخدم ترخيصات حرة أخرى.
ومن أجل تسهيل انتقال الناس لاستخدام جنو، تقرر جعل جنو متوافق مع يونكس، حيث كان يونكس نظام تشغيل احتكاري ذو شعبية كبيرة في ذلك الوقت. كما أن تصميم يونكس أثبت قوته بالإضافة لكونه مكون من أجزاءصغيرة يسهل التعامل  معها كل على حدة.
مع بروز جنو في الصورة، بدأت الشركات المهتمة بالمساهمة في تطوير جنو أو بيع برامج جنو وتوفير الدعم
 الفني لها. أشهر وأنجح هذه الشركات كانت Cygnus Solutions وقد اندمجت مع ريد هات الآن.
كان مخططاً لجنو في الأساس أن يكون متوافقا بشكل كبير مع يونكس مع إضافة التحسينات أينما دعت الحاجة إليها. وكان تصميم نواة جنو هو الاختلاف الأكبر عن يونكس التقليدي، فقد خطط لها أن تكون نوية متعددة الخوادم.
يعمل جنو هيرد فوق نوية (حالياً جنو ماخ GNU Mach (ويتكون من مجموعة من البرامج تسمى خوادم وتؤدي نفس الوظائف التي تؤديها أنوية يونكس التقليدية (أو لينكس).
بحلول 1990 أصبح لدى نظام جنو محرر نصوص قوي، ومترجم ناجح جدا وقوي (جي.سي.سي)، ومعظم الأدوات والمكتبات الرئيسية في أي توزيعة من نظام يونكس. كانت النواة هي المكون الرئيسي الذي ظل ناقصا حتى ذلك الوقت.
في بيان جنو، ذكر ستالمان "توجد نواة أولية لكن بحاجة لكثير من الميزات لتحاكي يونكس." حيث كان يشير إلى TRIX، نواة تم تطويرها في معهد MIT وقرر مؤلفيها توزيعها مجانا، كما أنها كانت متوافقة مع الإصدار الخامس من يونكس . بدأ العمل على تعديل هذه النواة في ديسيمبر عام 1986. لكن في النهاية قرر المطورين أنها لا تصلح كنقطة بداية،لانها تعمل فقط علي "جهاز 68000 غامض وباهظ الثمن"، ولهاذا بحاجة لنقلها إلى معماريات أخرى قبل أن يصبح في الإمكان استخدامها. في عام 1988 تقرر استخدام النواة ماخ (Mach المطورة في جامعة  Carnegie Mellon بديلاً بالرغم من أن إطلاقها كبرنامج حر تأخر حتى عام 1990 حيث كان مطوريها يعملون على إزالة الكود المملوك لشركة AT&T.لأن النوية ماخ - بسبب تصميها - لا توفر سوى وظائف النواة ذات المستوى الأدنى، كان على مطوري جنو توفير أجزاء النواة ذات المستوى الأعلى في صورة مجموعة من برامج المستخدم. أطلق على هذه المجموعة في البداية اسم Alix، لكن المطور Michael Bushnell فضل بعد ذلك استخدام الاسم هيرد (HURD) وعليه نقل  الاسم Alix لنظام فرعي ثم في النهاية أسقط تماماً. في النهاية توقف تطوير هيرد لأسباب تقنية وخلافات شخصية.في عام 1991 كتب لينوس تورفالدز نواة متوافقة مع يونكس، النواة لينكس. بالرغم من أن الترخيص الأولي للينكس كانت به قيود على التوزيع التجاري، وهو ما لا يجعلها برمجية حرة كحرية الكلام، فإن لينوس غير الرخصة بسرعة في عام 1992 إلي جي.بي.إل الشيء الذي وصفه هو بعد ذلك بأنه أفضل قرار اتخذه في حياته. تطور لينكس بعد ذلك بواسطة العديد من المبرمجين عبر الإنترنت في عام 1992 تم جمعه مع جنو ليتكون نظام تشغيل كامل الوظيفة.الآن (2006 فإن هيرد ما زال يخضع للتطوير وهو النواة الرسمية لنظام جنو. هناك أيضا مشاريع لاستخدام نظام جنو مع أنوية فري بي.إس.دي ونت بي.إس.دي

برمجيات جنو
المكونات الرئيسية من نظام جنو تشمل تجميعة مترجمات جنو (GCC مكتبة سي من جنو (glibc)، محرر النصوص جنو إيماكس وبيئة سطح المكتب جنوم.تم نقل العديد من برمجيات جنو لتعمل على أنظمة أخرى وكثيرا ما تستخدم على أنظمة يونكس المحتكرة لتستبدل الأدوات المحتكرة الأخرى. وقد أثبتت أدوات جنو هذه في دراسات عديدة تفوقها على الأدوات المحتكرةالأخرى  تحظى برامج جنو بسمعة جيدة وبخاصة في أوساط مستخدمي لينكس، بسبب أدوات التطوير الخاصة بها -والتي يطلع عليها أحيانا بشكل مجتمع عِدّة جنو GNU toolset. وهذه الأدوات تمثل جزءا صغيرا من نظام جنو كما أنها غير متوافقة مع POSIX مع ازدياد شعبية نظام جنو/لينكس، يقوم الكثير من المطورين بتثبيت عِدّة جنو من أجل التوافقية أو لمجرد الحصول على سلوك موحد عبر المنصات المختلفة. كما أن الكثير من برامج جنو قد نقلت لتعمل علي أنظمة مايكروسوفت ويندوز وماك أو.إس إكس والعديد من الأنظمة المحتكرة الأخرى، بالرغم من أنه موضوع ساخن بين المتحمسين حيث أن الدافع لتطوير هذه البرامج هو استبدال هذه الأنظمة وليس تحسينها.

ليست هناك تعليقات:

إرسال تعليق

اكتب تعليفك هنا