بسم الله الرحمن الرحيم.
في هذة التدوينة المتواضعة سأحاول تبسيط بعض مفاهيم و أساسيّات الأنظمة المفتوحة المصدر ولماذا نحن كمستخدمين/مطورين نهتم بهذة الفكرة أو المبدئ.
أنظمة مفتوحة المصدر الآن معروفة بإنها الأنظمة التي تقوم بنشر الكود المصدري لها بشكل مجاني ومتاح للجميع للمراجعة، الإستخدام، التعديل و من ثم النشر مرة أخرى.
لكن يجب أن نعلم أن هذا ﻻ يعني في أي حال من الأحوال تلقي دعم أو نظام مجاني. فكما نعلم أن هناك العديد من الأنظمة المفتوحة المصدر التي تقوم بالسماح بتنزيلها مجاناً و أخرى تقوم بوضع مدّة معينة قبل أن تلزم المستخدم بشراء النسخة أو المفتاح التسلسلي لتفعيل النظام.
أنظمة مفتوحة المصدر بداياتها كانت في الستينات حين همّت ثلاث جهات بإنشاء نظام خاص يلبى طلباتهم وهي Bell Labs أو At&T و معهد ماساتشوتس للتقنية و أيضاً شركة GE.
ملاحظة: Bell Labs لها العديد من المساهمات الرائعة في العديد من المجالات مثل: علوم الفلك،أجهزة مزدوجة الشحنة، لغة البرمجة سي، لغة البرمجة سي++ و آخرا وليس أخيراً الليزر. و يذكر أيضاً أن هناك أكثر من 6 جوائز نوبل منحت لأعمال من هذة الجهة.
أنتجت هذة الشراكة النظام المعروف بـ MULTICS في سنة 1965 لكن كان هذا النظام معقد و لم يؤدي أو يقدم الأهداف المتوقعه منه ولهذا قامت Bell Labs بالإنسحاب من هذا المشروع ولكن المفارقة أن باحث يدعي (كين ثومبسن) من Bell Labs كان أحد العاملين في هذا المشروع بالمشاركة مع زميله في العمل (دينس ريتشي) قاما بتطوير نظام Unics الذي أعتقدا أنه أسهل و أقل تعقيداً من نظام MULTICS.
![]() |
دينس ريتشي و كين ثومبسن. |
-ريتشارد ستالمن و لينوس ترافلدس:
عندما إنتشر يونكس بين الجامعات و العلماء، كانت جامعة بركلي، كالفورنيا أكبر المساهمين و المطورين لهذا النظام، ومايعرف اليوم بنظام Berkeley Software Distribution هو في الحقيقة نتاج طالبين من طلاب درجة البكالوريس في تلك الجامعة. لكن ضجر و ملل العلماء من تعقيدات Bell Labs في إصدار الرخص لهذا النظام (Unix) قام الطلاب بتطوير نظام BSD أكثر و أكثر أيضاً ليكون بديل من نسخة Unix III المستخدم في ذاك الوقت.
وبسبب تلك التعقيدات أعلن ريتشارد ستالمن من معهد ماساتشوتس في عام 1983 إستقالته و نيته بتطوير نظام يهدف إلى تعزيز فكرة البرمجيات الحرّة. وأيضاً أحد أسباب إستقالته من معهد ماساتشوتس هو خوفه من أن يقوم المعهد بالتشويش على عمله و يدّعي بإمتلاك العمل لاحقا. فبدأ مشروعه و أطلق عليه إسم GNU. ولكن خوفه لم يكن في محله إذ أن المعهد قد سمح لريتشارد أن يستخدم مختبرات المعهد إن أراد.
ملاحظة: يتميّز ريتشارد ستالمن بحس الفكاهة، إذ أن GNU هي إختصار لـ
Gnu Not Unix. =D
Gnu Not Unix. =D
لمدّة أكثر من خمس سنوات كان رتشارد ستالمن يطور أدوات و برامج للشل حينها ظهر عارض النصوص المعروف cat. في بداية التسعينات كانت جميع أجزاء مشروع ريتشارد مكتملة ماعدا الكرنل وهو الجزء الأول لتطوير نظام ما. كان الكرنل الرسمي لهذا النظام يسمى بGNU/HURD لكن للأسف لم يكتمل هذا المنتج.
![]() |
توضيح مبسط لمعمارية يونكس. |
ولحسن الحظ في 1991، طالب فنلندي في قسم علوم الكمبيوتر يدعى ليونس ترافلدس قرر كتابة كرنل لنظام مجاني مشابه لـ يونكس ويكون مناسب للإستخدام اليومي. وهكذا بدأ لينس رحلته في التطوير بإستخدام كود نظام مشابه لـ يونكس يدعى مينيكس. بدأ لينس ترافلدس بتكوين الكود الجديد "سطر بسطر" حتى حصل على كود جديد خالي من النظام الذي بدأ فيه وهو مينيكس.
لينوس قرر تسمية الكرنل لينكس و من ثم نشره تحت رخصة ريتشارد ستالمن GPL. وهكذا اتم ريتشارد ستالمن هدفه بمساعدة من كيرنل لينوس. ولهذا يقال أنه غير صحيح إطلاق على هذة الأنظمة لينكس فقط وليس غنو/لينكس مع ان لينوس يدّعي بأن لينكس هو لينكس فقط وليس غنو/لينكس. بينما رتشارد يعتقد أنه من المنطق أن يطلق عليه غنو/لنكس بسبب أن النظام هو غنو لكن الكرنل هو لنكس ــ عدل ولا؟ :) .
-البرمجيات الحرّة.
هناك عدّة رخص منتشرة حول العالم و مستخدمة في برمجيات الويب و الكمبيوتر، منها المشهور و منها غير ذلك مثل:
- بعض إستخدمات علميّة،حكوميّة و قطاعات الأعمال للبرامج الحرّة:
حكومية:
أحد أكبر إسهامات توزيعات المصادر المفتوحة هي في الشرطة الفرنسي الوطنيّة، إذ إنها إستطاعات توفير 50 مليون يورو من خلال تبني أنظمة و برامج لينكس.
بإمكانكم التزوّد بهذا الموضوع من هذه المصادر:
Linux Kernel
Linux Kernel Archive
Practical Unix & Internet Security
Free Software Foundation
GNU Project
جلسة أسئلة&أجوبة مع لينوس ترافلدس مع جامعة من فنلندا فيها العديد من المناقشات الرائعه و الجميلة عن هذا الموضوع، هُنا.
مقابلة مع ريتشارد ستالمن يوضع العديد من أمور منظمة جنو، هُنا.
محاضرة لريتشارد ستالمن يذكر فيها تاريخه و بدايته، هُنا.
من أرشيف At&T، كيف بدأ لينكس. ممتاز جداً و المقدم يذكرني كثيرا بالراحل كارل سيغن، هُنا.
شكراً.
(:
ملحق -أ-
الأنظمة المبنيّة على يونكس أو المعروفة بUnix-Like:
لينوس قرر تسمية الكرنل لينكس و من ثم نشره تحت رخصة ريتشارد ستالمن GPL. وهكذا اتم ريتشارد ستالمن هدفه بمساعدة من كيرنل لينوس. ولهذا يقال أنه غير صحيح إطلاق على هذة الأنظمة لينكس فقط وليس غنو/لينكس مع ان لينوس يدّعي بأن لينكس هو لينكس فقط وليس غنو/لينكس. بينما رتشارد يعتقد أنه من المنطق أن يطلق عليه غنو/لنكس بسبب أن النظام هو غنو لكن الكرنل هو لنكس ــ عدل ولا؟ :) .
-البرمجيات الحرّة.
هناك عدّة رخص منتشرة حول العالم و مستخدمة في برمجيات الويب و الكمبيوتر، منها المشهور و منها غير ذلك مثل:
• MIT • BSD • Apache, Versions 1.0 and 2.0
• Academic Free License (AFL) • GNU General Public License (GPL)
• GNU Lesser General Public License (LGPL) • Mozilla Public License (MPL)
• Qt License • Artistic License • Creative Commons Licenses
• Sun Community Source License and Commercial Use Supplement
• Microsoft Shared Source Initiative
ولكل من هذة الرخص طريقة في تجميع عدد من الأشخاص في مكان واحد (Virtually) تحت عدّة قوانين لتسهيل المهام بينهم. بعض هذة التراخيص تكون تجارية و أيضاً غير تجارية.
هذة التراخيص و حقوق النشر تحفظ حقوقنا كبشر في كثير من الأحيان ــ وتنتهك حقوق آخرين في أحيان كثيرة أيضاًــ. مثلاً نفرض أن هناك في مقهى شخص يرسم قطّة على منديل، هذة الرسمة تعود ملكيّتها لهذا الشخص وﻻ يجوز بأي حال من الأحوال نسخ، تعديل و إعادة نشر هذة الرسمة إلا بإذن الرسام نفسه.
بينما في المصادر المفتوحة الأمر مختلف قليلاً، تخيل أن هناك وصفة لفطيرة ما، هذة الوصفة بدأت من عند آنسة كبيرة في السن إسمها (مريم). مريم قامت بإرسال هذة الوصفة لصديقتها (إيمان). إيمان إكتشفت أن الفطيرة ينقصها بعض الزبدة. فتقوم (إيمان) بالتعديل على الوصفة و من ثم إعطائها لأبنتها (مروة). (مروة) تأخذ هذة الوصفة ولكن إكتشفت أن الفطيرة يجب أن تقدم مع العصير. (مروة) تأخذ الوصفة و تعيدها إلى الآنسة (مريم) و التي لديها الآن وصفة معدلة و منقحة مقارنة بالتي عليها لو لم تنشرها.
فرسمة القطة ستظل ماهي مادام مالك الرسمة لا يريد أن يعدل على الرسمة أو على الأقل أن ينشر الصورة للآخرين ليطوروها.
فرسمة القطة ستظل ماهي مادام مالك الرسمة لا يريد أن يعدل على الرسمة أو على الأقل أن ينشر الصورة للآخرين ليطوروها.
أعجبتني فقرة من مقال جميل من فوربس:
"The open-source movement has blossomed into a robust philosophy of transparency and collaboration with the potential to transform all industries. In a recent TED talk, Don Tapscott summarized the central components of the philosophy: collaboration, transparency, sharing and empowerment. When hundreds or thousands of “developers” contribute toward a shared purpose, everyone benefits."
وأيضا قبل فترة شركة أدوبي قامت بنشر الكود المصدري لفوتوشوب 1.0 و الذي يتكون من أكثر من 120000 سطر و كُتب بلغتي باسكال و آسمبلي.
- لماذا نهتم في المصادر المفتوحة؟
1- إصلاح الأخطاْء: فمهما كانت مهاراتك البرمجية، إحتمالية وجود الأخطاء في طريقة برمجتك للكود هي كبيرة. فحين تقوم بنشر الكود يطلع زملائك على هذا الكود و يقومون بالتعديل عليه إن أحتاج الأمر لذلك. لكن إن كان الكود مملوك فلا يمكن ﻷحد التعديل عليه و إصلاحه إلا من قبل مطوري الكود أنفسهم.
2- الآمان: تمكين المستخدمين من الإطلاع على الكود المصدري يعطي راحة و شعور بالإمان من إن كان هناك أي محاولة لزرع أي من الملفات الخبيثة مثل باكدور وغيره. فالبرمجيات المملوكة لا يمكن التحقق من مستوى الآمان لديها بسهولة كما هو الحال مع مفتوحة المصدر. (بإمكان التحقق إن كان هناك مثلاً إستقبال و إرسال لملفات لا تعلم عنها من خلال طرق كثيره، أشهرها إستخدام برنامج إلتقاط الحزم الشهير Wireshark).
3- التخصيص: عندما ينشر الكود المصدري للنكس (في منتصف شهر فبراير-2013 تم نشر آخر تطوير لكود Mineline هنا) تقوم الشركات مثل ردهات، دبيان و غيرهم بأخذ هذا الكود و تعديله و من ثم إستخدامه مرة أخرى في توزيعاتهم الخاصة وأيضا هناك جهود فردية من المستخدمين لإنشاء كود خاص بهم يقوم بعمل واحد فقط لتسهيل نقله و تثبيته و إصلاحه مثل إنتشار العديد من أنظمة لينكس التي تقوم بإستظافة مواقع فقط :)
4- ترجمة البرمجيات: هناك العديد من اللغات حول العالم الغير مدعومة بسبب أن مطوري الأنظمة المغلقة يعتقدون أن وقتهم أثممن من أن يترجموا إلى هذة اللغات. وهذا ظلم و إجحاف لعدد كبير من المستخدمين وخسارتهم مطوري الأنظمة نفسهم. مثلاً اللغة العربية للأسف غير مدعومة بدرجة اللغة الإنجليزية أو الإسبانية. مع أن العربية هي الرابعة عالمياً و يتم دعم لغات أقل منها بكثير (من ناحية عدد المتحدثين) قبل العربية.
2- الآمان: تمكين المستخدمين من الإطلاع على الكود المصدري يعطي راحة و شعور بالإمان من إن كان هناك أي محاولة لزرع أي من الملفات الخبيثة مثل باكدور وغيره. فالبرمجيات المملوكة لا يمكن التحقق من مستوى الآمان لديها بسهولة كما هو الحال مع مفتوحة المصدر. (بإمكان التحقق إن كان هناك مثلاً إستقبال و إرسال لملفات لا تعلم عنها من خلال طرق كثيره، أشهرها إستخدام برنامج إلتقاط الحزم الشهير Wireshark).
3- التخصيص: عندما ينشر الكود المصدري للنكس (في منتصف شهر فبراير-2013 تم نشر آخر تطوير لكود Mineline هنا) تقوم الشركات مثل ردهات، دبيان و غيرهم بأخذ هذا الكود و تعديله و من ثم إستخدامه مرة أخرى في توزيعاتهم الخاصة وأيضا هناك جهود فردية من المستخدمين لإنشاء كود خاص بهم يقوم بعمل واحد فقط لتسهيل نقله و تثبيته و إصلاحه مثل إنتشار العديد من أنظمة لينكس التي تقوم بإستظافة مواقع فقط :)
4- ترجمة البرمجيات: هناك العديد من اللغات حول العالم الغير مدعومة بسبب أن مطوري الأنظمة المغلقة يعتقدون أن وقتهم أثممن من أن يترجموا إلى هذة اللغات. وهذا ظلم و إجحاف لعدد كبير من المستخدمين وخسارتهم مطوري الأنظمة نفسهم. مثلاً اللغة العربية للأسف غير مدعومة بدرجة اللغة الإنجليزية أو الإسبانية. مع أن العربية هي الرابعة عالمياً و يتم دعم لغات أقل منها بكثير (من ناحية عدد المتحدثين) قبل العربية.
حكومية:
أحد أكبر إسهامات توزيعات المصادر المفتوحة هي في الشرطة الفرنسي الوطنيّة، إذ إنها إستطاعات توفير 50 مليون يورو من خلال تبني أنظمة و برامج لينكس.
الحكومة التركية طورت نظام لينكس الخاص بها و أسمتها باردس، و أيضا في الفلبين خلال فترة الإنتخابات أنظمة إبنتو كانت هي المستخدمة.
تعليميّة:
أجهّزة OLPC XO-1 أو المعروفة في أجهزة MIT الرخيصة. كان هذا مشروع لتوزيع جهاز لكل طفل في الدول الفقيرة.
أيضاً اجهزة سوني أصدرت حزمة أسمتها (لينكس لـبليستيشن2) وقد إنتشرت عدّة إستخدامات لها خاصة في مجال الحوسبة العنقوديّة (Computer Clustering).
قطاع الأعمال:
كما هو معروف إمتلاك غوغل لأندرويد، أيضاً موظفي غوغل لديهم نسخة أبنتو المعدلة الخاصة بهم. أطلق عليها أسم Goobuntu. و قد ظهرت في مؤتمر LinuxCon في 2012.
علميّة:
سيرن: أكبر مسرع جزيئات في التاريخ الموجود في الحدود الفرنسيّة السويسريّة. و الذي كلف الحكومات الأوربيّة عشرات المليارت يستخدم أجهزة مدعومة بأنظمة لينكس العلمية المعروفة ب(Scientific Linux) لتحريك و التحكم بالمحرك.
سيرن: أكبر مسرع جزيئات في التاريخ الموجود في الحدود الفرنسيّة السويسريّة. و الذي كلف الحكومات الأوربيّة عشرات المليارت يستخدم أجهزة مدعومة بأنظمة لينكس العلمية المعروفة ب(Scientific Linux) لتحريك و التحكم بالمحرك.
بإمكانكم التزوّد بهذا الموضوع من هذه المصادر:
Linux Kernel Archive
Practical Unix & Internet Security
Free Software Foundation
GNU Project
جلسة أسئلة&أجوبة مع لينوس ترافلدس مع جامعة من فنلندا فيها العديد من المناقشات الرائعه و الجميلة عن هذا الموضوع، هُنا.
مقابلة مع ريتشارد ستالمن يوضع العديد من أمور منظمة جنو، هُنا.
محاضرة لريتشارد ستالمن يذكر فيها تاريخه و بدايته، هُنا.
من أرشيف At&T، كيف بدأ لينكس. ممتاز جداً و المقدم يذكرني كثيرا بالراحل كارل سيغن، هُنا.
-أتمنى أكون وفقت طرحي المتواضع، وأي إصلاح أو تعديل الرجاء محادثتي- على @_Ysaif
شكراً.
(:
ملحق -أ-
الأنظمة المبنيّة على يونكس أو المعروفة بUnix-Like:
مصدر الصورة. |