تعريف سريع لنظام جنو/لينكس واهم المزايا والعيوب
السلام عليكم احبائى زوار موقعنا
الكرام فى هذا الدرس سنتطرق الى واحد من اهم الموضوعات التقنية وايضا واحد
من اهم انظمة التشغيل وهو جنو /لينكس
تعريف سريع لنظام التشغيل جنو/لينكس واهم المصطلحات والمزايا والعيوب
ما هو لينكس ” Linux” ؟
لينكس هو – بأبسط تعبير –
نظام تشغيل . ونُظم التشغيل هي برامج الحاسوب التي تسمح للتطبيقات و
المستخدمين بالوصول إلى أجهزة الحاسوب لتنفيذ العملية المطلوبة . يقوم نظام
التشغيل بنقل أمر ما من أحد التطبيقات على سبيل المثال إلى معالج الحاسوب.
يقوم بعد ذلك المعالج بتنفيذ المهمّة المطلوبة ، ثم يرسل النتائج إلى
التطبيق عن طريق نظام التشغيل . وهكذا يلعب نظام التشغيل دور حلقة الوصل
بين أجزاء الحاسوب المختلفة.
ومن التعريف السابق يظهر لنا
أن لينكس مشابه تماما لأي نظام تشغيل آخر مثل : ويندوز “ windows” وOS X .
ولكن في الواقع هناك فارق يميز نظام التشغيل لينكس عن باقي أنظمة التشغيل
الأخرى. ففي عام 2008 شكل نظام التشغيل لينكس منظومة بحجم 25 مليار دولار.
منذ بدايته في عام 1991 م ،
توسع لينكس ليصبح قوة جبارة في عالم الحوسبة ، مشغّلا كل شيء ابتداء من
بورصة نيويورك مرورا بأجهزة الهواتف النقالة و انتهاء بالحواسيب العملاقة
لأجهزة المستهلكين.
ولأن لينكس يعد نظام تشغيل
مفتوح ، فإن تطويره يتم بشكل تعاوني، بمعنى أنه لا يوجد شركة واحدة مسؤولة
بشكل منفرد عن تطوير أو دعم نظام لينكس. تتقاسم الشركات المساهمة في الحصة
الاقتصادية للينكس تكاليف البحث والتطوير مع شركائها و منافسيها. وهكذا فإن
توزيع عبء التطوير لنظام لينكس بين الشركات والأفراد أسهم بشكل إيجابي في
خلق بيئة تطويرية كبيرة وفعّالة والكثير من الابتكارات البرمجية الغير
معلنة.
يشارك في كل إصدار جديد
لنواة لينكس ما يزيد عن 1,000 مطور في أكثر من 100 شركة مختلفة، في العامين
الماضيين فقط شارك ما يزيد عن 3200 مطور من 200 شركة في تطوير نواة لينكس ،
وهي – أي النواة- التي تشكل جزء صغير فقط من منظومة لينكس.
هذا المقال سيستعرض المكونات
المتنوعة لنظام لينكس ، كيف يتم تصنيعها و كيف يتم ربطها ببعضها البعض ،
كما سيغطي المقال أيضا مجتمع لينكس و تأثير لينكس على النظام التقني بشكل
عام.
أين يستخدم لينكس ؟
أحد الخواص المميزة لنظام
لينكس هي ” أين يمكننا استخدام لينكس ” . حيث نجد أن ونيدوز windows و OS X
تستخدم غالبا في الحواسيب الشخصية مثل الحاسوب المكتبي و الحاسوب المحمول
في حين أن أنظمة تشغيل أخرى، مثل سيمبيان Symbian ، يتم استخدامها في
الأجهزة الصغيرة مثل الهواتف النقالة وأجهزة المساعد الرقمي الشخصي، أما
أجهزة الحاسوب العملاقة الموجودة في المختبرات الأكاديمية والشركات الكبرى
فتستخدم أنظمة تشغيل متخصصة مثل AS/400 وكراي OS.
لينكس من الناحية الأخرى ،
بدأ كنظام تشغيل خادم ثم أثبت جودته كنظام تشغيل مكتبي ، و اليوم يمكن
استخدام لينكس في الكثير من الأجهزة التي تتراوح من الساعات وحتى الحواسيب
العملاقة.
نشأة لينكس :
في 25 أغسطس عام 1991م قام
طالب علوم الحاسب الفنلندي لينوس تورفالدس بتقديم الإعلان التالي لمجموعة
يوزنيت Usenet group comp.os.minux :
إنني أقوم بتطوير نظام تشغيل
مجاني ( مجرد هواية ، لن يكون كبيرا أو احترافيا مثل جنو ) شرعت العمل على
هذا المشروع منذ شهر إبريل و اليوم يبدو مشروعي شبه جاهز ، بما أن نظام
التشغيل الذي أعمل على تطويره يشبه مينيكس إلى حد ما (نفس التخطيط الفعلي
لنظام الملفات – وذلك لأسباب عمليه –) فإنني أرغب في الحصول على مرئياتكم
فيما يتعلق بالأمور التي تعجب الناس و تلك التي لا يحبونها في نظام تشغيل
مينيكس.
الشفرة :
يتميز كذلك لينكس عن أي نظام
تشغيل آخر بأن ليس له مالك واحد فقط. ما زال تورفالدس يدير عملية تطوير
نواة لينكس ولكن مطورين تجاريين و خاصين يساهمون في بناء النظام ككل.
في هذا الجزء من المقال سنتفحص الأجزاء التي تكون نظام لينكس :
النواة :
تمتلك كل أنظمة التشغيل نواة
تمثل مركز العمليات في نظام التشغيل ، جاءت الفكرة كاستعارة معمارية ، يجب
أن يكون هناك مجموعة مركزيه من الأوامر التي من شأنها أن ترشد و توجه
الأجهزة للقيام بعملها ، يحيط بهذه الأوامر المركزية العديد من الطبقات كل
طبقة تتكون من مجموعة من الوحدات الوظيفية .
نواة لينكس متفردة و مرنة
لأنها بدورها مقسمة إلى وحدات وظيفية ، تقسيم النواة إلى وحدات وظيفية
يعتبر ميزة مرغوبة لأنه يسمح للمطورين بإزالة الوحدات الوظيفية التي لا
يحتاجون إليها ، و بشكل عام فإنه كلما صغر حجم النواة كلما كانت أسرع لأنها
لا تقوم بتشغيل عمليات لا تحتاج إليها .
على سبيل المثال : إذا كان
أحد مطوري الأجهزة يرغب بالحصول على نسخة من لينكس لتشغيلها على هاتف نقال ،
فإنه – أي المطور – لا يحتاج وظائف النواة التي تتعامل مع محركات الأقراص،
أو أجهزة إيثرنت، أو الشاشات الكبيرة بالتالي فإنه يستطيع إزالة هذه
الأجزاء وغيرها من النواة وبالتالي يحصل على النواة الأمثل لاستخدامها على
هاتف نقال.
نواة نظام تشغيل ويندوز (
التي يُسمح لعديد قليل من الناس خارج مايكروسوفت بالنظر إليها بدون دفع ثمن
للحصول على هذا الامتياز ) هي عبارة عن شفرة مترابطه بشكل قوي و من غير
السهل تقسيمها إلى أجزاء صغيره . إنه من الصعب إن لم يكن مستحيلا أن يتم
تقسيم نواة ويندوز حتى تستخدم في هاتف نقال .
ومن ذلك نرى أن تقسيم نواة
لينكس إلى وحدات وظيفية صغيره يمثل العامل الأهم في نجاح لينكس . إن
المقدرة على توسيع أو تصغير النواة وفقا للحاجة وحتى تتناسب مع أي جهاز
تشكل ميزة كبيرة للينكس مقارنة بباقي أنظمة التشغيل الأخرى التي يتم
تطويرها بشكل خاص لجهاز معين .
كما يؤثر تقسيم لينكس إلى
وحدات وظيفية على جانبي الأمان و الاستقرارية للنظام ، فلو أن قطعة واحده
من شفرة لينكس تعطلت فإن النظام لن ينهار بشكل كامل لأن باقي القطع ما زالت
تعمل.
وبالمثل، فإن الهجوم على جزء
واحد من النواة (أو ما تبقى من نظام التشغيل) قد تعوق ذلك الجزء من النظام
، ولكن لا ينبغي أن يمس ذلك أمن الجهاز بأكمله.
نظام التشغيل :
يحتاج المطورون إلى أدوات
خاصة (مثل سطور الأوامر و المُجمّع الموجودة في جنو) لكتابة التطبيقات التي
يمكنها التخاطب مع النواة. كما أنهم يحتاجون أيضا إلى أدوات تسمح
للتطبيقات الخارجية بالوصول إلى النواة بعد كتابتها وتثبيتها على الجهاز.
عند وضع هذه الأدوات جنبا
إلى جنب مع النواة نحصل على نظام التشغيل . وبشكل عام يعرف نظام التشغيل
على أنه أدنى طبقة من برمجيات الحاسب التي يمكن للمستخدم العادي الوصول
إليها ، يستطيع المستخدم العادي الوصول إلى نظام التشغيل باستخدام أسطر
الأوامر . command line.
يوفر لينكس أدوات قوية
للمطورين يستطيعون من خلالها كتابة تطبيقاتهم الخاصة ، منها : البيئات
التطويرية ، المحرر ، المُجمّعات التي تم تصمميها حتى تأخذ الأوامر
البرمجية الخاصة بالمطور وتحولها إلى صورة تستطيع النواة فهمها وتنفيذها .
مثل النواة، فإن نظام تشغيل لينكس مقسم بدوره إلى وحدات . يمكن للمطورين
انتقاء واختيار الأدوات التي يحتاجونها وإزالة تلك التي لا يحتاجون إليها،
يهدف ذلك إلى تزويد المستخدمين والمطورين بنكهة جديدة من لينكس صممت خصيصا
لتلبية احتياجاتهم المحددة.
البيئات :
إن النوافذ والقوائم و
مربعات الحوار التي يظن الكثير من الناس أنها جزء من نظام التشغيل هي في
الواقع عبارة عن طبقة مستقلة تعرف بـ ” نظام النوافذ و بيئة سطح المكتب ” .
توفر هذه الطبقة واجهات
رسومية سهلة الفهم للمستخدمين ، حتى تمكنهم من العمل و التواصل مع
التطبيقات الموجودة في نظام التشغيل أو تثبيت التطبيقات الخارجية على نظام
التشغيل.
في لينكس، هناك الكثير من
الخيارات التي يمكن استخدامها لنظام النوافذ وبيئة سطح المكتب ، وهو الأمر
الذي يسمح للمستخدمين باتخاذ القرار بأنفسهم . لا يمكن القيام بذلك في نظام
التشغيل Windows ومن الصعب القيام به في OS X.
كما أنه يوجد أدوات ومكتبات
برمجية لنظام التشغيل والنواة، فإن هناك أدوات ومكتبات البرمجية متاحة تسمح
لمطوري التطبيقات بالعمل بسهولة أكبر مع هذه البيئات (على سبيل المثال :
gtk+ for GNOME, Qt for KDE ).
التطبيقات :
لأنظمة التشغيل نوعين من
التطبيقات : تلك التي تمثل المكونات الأساسية لنظام التشغيل نفسه، وتلك
التي يقوم المستخدم بتثبيتها في وقت لاحق. أنظمة التشغيل المغلقة، مثل
ويندوز و OS X، لن تسمح للمستخدمين (أو المطورين) بانتقاء واختيار
التطبيقات التي تشكل عنصرا أساسيا لنظام التشغيل بأنفسهم. فعلى سبيل المثال
يتحتم على مطوري ويندوز استخدام مترجم مايكروسوفت، ونظام النوافذ، وهلم
جرا.
أما بالنسبة لمطوري التطبيقات على لينكس فإن لديهم مجموعة أكبر من الخيارات لتطوير تطبيقاتهم. هذا يسمح بمزيد من المرونة لبناء التطبيق، لكنه يعني أن على المطور أن يقرر أي مكونات لينكس سيستخدم.
أما بالنسبة لمطوري التطبيقات على لينكس فإن لديهم مجموعة أكبر من الخيارات لتطوير تطبيقاتهم. هذا يسمح بمزيد من المرونة لبناء التطبيق، لكنه يعني أن على المطور أن يقرر أي مكونات لينكس سيستخدم.
التوزيعات:
وهذه هي أعلى طبقة من نظام التشغيل لينكس: الحاوية لجميع
الطبقات المذكورة آنفا. يقرر صانع التوزيعات أي نواة ، أي أدوات نظام
التشغيل ، أي البيئات ، أي التطبيقات ، سيتم جمعها في حزمة و شحنها إلى
المستخدم .
تتم المحافظة على التوزيعات من قبل الأفراد والكيانات
التجارية. يمكن تثبيت التوزيع باستخدام القرص المضغوط الذي يحتوي على
برنامج خاص لتثبيت النظام الأولي.
إن أكثر التوزيعات شعبية بين المستخدمين هي تلك التي توفر
إدارة ناضجة للتطبيقات تسمح للمستخدمين بالبحث وتثبيت التطبيقات الجديدة و
إجراء كافة العمليات ببضع ضغطات على الفأرة.
يوجد على الأقل ما يفوق 350 توزيعة مختلفة للينكس .
صور من بعض توزيعات جنو / لينكس
وفى ختام الموضوع نرجو ان تكونو استفدتم والى اللقاء مع موضوع اخر ان شاء الله