تاريخ لينكس

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

الأحداث التي أدت إلى البدء

بعد أن اهملت شركة إيه تي آند تي مشروع مولتكس، كان مشروع يونكس قد صمم ونفذ في عام 1969 من قبل كين تومسن ودينيس ريتشي وكلاهما يعملان في شركة AT&T ومختبرات بل، وأطلق الإصدار الأول منه في عام 1970. وفي وقت لاحق قاما بكتابة لغة برمجة جديدة وهي سي وجعلوها قابلة للنقل، ولقد تسبب توافر وقابلية يونكس باعتمادها وانتشارها على نطاق واسع، ونسخت وعدلت من قبل المؤسسات الأكاديمية والشركات.
في عام 1983، بدأ ريتشارد ستالمان في مشروع غنو الذي يهدف إلى إنشاء نظام تشغيل حر شبيه يونكس. وكجزء من هذا المشروع كتب رخصة غنو العمومية (GPL). في وقت مبكر من عقد التسعينات كان هناك تقريبًا ما يكفي من البرامج المتاحة لصنع نظام تشغيل متكامل، لكن كانت نواة غنو والمسماة هيرد غير كاملة وفشلت في جذب اهتمام المطورين بما يكفي، مما جعل نظام تشغيل جنو غير كامل.
وكان هناك مشروع نظام تشغيل حر آخر هو BSD، أطلق الإصدار الأولي منهُ في عام 1977، وهو نظام تشغيل مطور من قبل جامعة كاليفورنيا، بركلي المبني على يونكس الإصدار السادس. وعليهِ رفعت شركة AT&T دعوى ضد جامعة كاليفورنيا لإحتواء نظام تشغيل BSD على الكود المملوك لها. لأنها المطور والداعم والمتبني لهذا النظام.
في عام 1985 أصدرت شركة إنتل معالج 80386 وهو أول معالج من فئة إكس 86 يعمل بتقنية 32 بت ووحدة إدارة الذاكرة بالصفحات.
في عام 1986 نشر موريس باخ من مختبرات بل تصميم نظام التشغيل يونكس. وشمل هذا الوصف أساسا نهائياً لنواة SVR2 مع بعض الميزات من SVR3 وتوزيعة برمجيات بيركلي.
مينيكس هو نظام تشغيل شبيه بنظام يونكس موجه للاستخدام الأكاديمي، أنشئه أندرو تانينباوم في عام 1987 وكان كوده المصدري متوفر ولكن عليهِ قيود في تعديلهِ وإعادة توزيعه. بالإضافة إلى أن تصميم مينكس كان 16-بت وغير مكيف للتعامل مع ميزات بناء 32-بت المعتمدة في معالجات إنتل 386 الرخيصة والموجودة في الحواسيب الشخصية.
كان الإصدار التجاري من يونكس في بداية عقد التسعينات والمخصص للحواسيب الشخصية باهظ التكلفة بالنسبة للمستخدمين الأفراد.
جميع هذه العوامل السابقة دفعت لينوس لبدء مشروعه، وقال أنه لو كانت نواة هيرد أو 386BSD متوفرة حينها فإنه ما بدأ بكتابة نواة لينكس.

إنشاء لينكس

في عام 1991 في مدينة هلسنكي بدأ لينوس مشروعه والذي أصبح يعرف فيما بعد باسم نواة لينكس. كتب لينوس برنامجه خصيصاً لحاسوبهِ الشخصي الذي يملكه والذي يحوي معالج 80386 ليستفيد من كامل ميزات عتاد الحاسوب، طور البرنامج على نظام مينيكس باستخدام تجميعة مصرفات غنو والذي لا يزال الخيار الرئيسي لتجميع لينكس حتى اليوم. وعلى أية حال يمكن تجميع الكود المصدري باستخدام مصرفات أخرى مثل مصرف سي إنتل.
كما كتب لينوس في كتابه للمرح فقط، أنه انتهى من كتابة نواة نظام التشغيل لينكس في 25 أغسطس 1991، وأعلن عن هذا النظام في اليوزنت في المجموعة الإخبارية "comp.os.minix.":
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix, as my OS resembles it somewhat (same physical layout of the file-system (due to practical reasons) among other things).
I've currently ported bash(1.08) and تجميعة مصرفات جنو، and things seem to work. This implies that I'll get something practical within a few months, and I'd like to know what features most people would want. Any suggestions are welcome, but I won't promise I'll implement them :-)
Linus (torvalds@kruuna.helsinki.fi)

PS. Yes – it's free of any minix code, and it has a multi-threaded fs. It is NOT portable (uses 386 task switching etc), and it probably never will support anything other than AT-harddisks, as that's all I have :-(.
— Linus Torvalds
وترجمتها:
أنا أعمل حاليا على نظام تشغيل حر (إنه مجرد هواية فقط، لن يكون عظيم واحترافي كجنو) لأنظمة تشغيل 32 و64 بت. لقد عملت عليه منذ شهر أبريل وها قد قارب على أن يصبح جاهزا. أريد أي أراء بخصوص الأمور التي يكرهها المستخدمون في مينيكس أو التي يحبونها، لأن نظام التشغيل الذي أعمل عليه يحاكي مينيكس (لهما نفس التصميم المادي لنظام الملفات (نظرا لأسباب تطبيقية بحتة) إلى جانب أمور أخرى).
حالياً قمت بنقل صدفة يونكس وتجميعة مصرفات جنو ومن الواضح أن الأمور تسير جيدا. هذا يلمح إلى امكانية أن أحصل على شئ قابل للعمل خلال بضعة شهور، لذلك أنا أريد أن أعرف المزايا التي يحبها أغلب مستخدمي مينيكس. أي أقتراحات مرحب بها، لكني لا أعد مطلقا انني يمكن أن أطبقها.
لينوس (torvalds@kruuna.helsinki.fi)

متعلق بالموضوع. نعم - انه حُر من أي شيفرة خاصة بـ مينكس، ولديه نظام ملفات متعدد الخيوط. النظام ليس قابل للنقل، وعلى الأغلب لن يدعم أي شيء غير الأقراص الصلبة من نوع AT، هذا كل ما لدي:-(.
— لينوس تورفالدز

التسمية

أراد لينوس تسميته فريكس (Freax) وهو لفظ منحوت من "free", "freak"، و"x" (كإشارة إلى يونكس). خلال بداية عمله على النظام، خزن ملفات المشروع تحت اسم فريكس لحوالي نصف سنة تقريباً. في البداية رفض لينوس اسم لينكس واعتبر ذلك من الغرور.
من أجل تسهيل التطوير، رفعت الملفات على سيرفر إف تي بي (ftp.funet.fi) في سبتمبر 1991. اعتقد أري ليمك زميل لينوس بالعمل في جامعة هلسنكي للتكنولوجيا، والذي كان أحد مدراء سيرفر الإف تي بي المتطوعين في ذلك الوقت، أن اسم فريكس غير مناسب، لذلك أعاد تسمية المشروع إلى لينكس وبدون استشارة لينوس. ثم وافق لينوس على اسم لينكس لاحقاً.
لمعرفة كيف ينطق اسم لينكس (‎[ˈli:nɵks]‏) قام لينوس بإعداد ملف صوتي ( استمع) وضمنه في الكود المصدري للنواة.

لينكس تحت رخصة غنو العمومية

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