فى مجتمعنا -مجتمع تكنولوجيا المعلومات- تدور الكثير من المناقشات حول نقطة نظم التشغيل،
وقد تختلف المناقشه حسب وجهات النظر، فقد يفضل أصحاب مبادئ البرمجيات الحره نظام التشغيل جنو|لينوكس، وعكسهم يفضل اصحاب ثقافه البرمجيات المغلقه نظام التشغيل ويندوز
ومن منظور اخر قد يفضل بعض الاشخاص نظام التشغيل ويندوز لكونه بيئه جيده للمستخدم والذي تبتعد عنها توزيعات لينوكس الى حد ما. ومن منظور ثالث قد يفضل البعض انظمة اليونكس لكونها اكثر احترافيه (مع اختلاف مفهوم الاحترافيه من منظور لاخر)، لذا قد تتعدد الاراء حول اي نظم التشغيل افضل.
اما انا فسأتحدث عنهم من منظور التطوير والشكل والتسهيلات الموجوده بداخل كل نظام تشغيل.
اللينوكس
بداية لتصحيح المفاهيم اللينوكس عبارة نواه او كيرنل فقط ونصف نظام التشغيل الاخر هو جنو وهو عبارة عن برمجيات تستعمل لسد مطالب معينه مثل:
GCC – GNU Compiler Collection
GDB – GNU Debugger
LD – GNU Linker…etc
حصل اللينوكس على شهره خياليه وذلك فضلا عن كونه بيئه جيده جدا للمطورين ، انه حرفيا أول نظام تشغيل مفتوح المصدر يطلق على الاطلاق وتبنته الكثير من الشركات مثل Redhat وهى من أوائل الشركات التى تبنت نظام التشغيل جنو لينوكس..
يسمي اللينوكس ب Unix-like وذلك لانه يشابة نظام التشغيل يونكس فى مظهره وبرمجياته وما يسمي باستدعاءات النظام System calls. وذلك وفر لبرمجيات اليونكس العمل على اللينوكس. مما جعل تغيير نظام التشغيل امر سهلا. وتعتبر اللينوكس كيرنل معتمده فى جزء كبير منها او مشابها ل Minix والذي صاحبها هو Andrew Tanenbaum وهو مدرس جامعي وباحث مشهور و ايضا مولف لعديد من الكتب الرائعه فى مجال علوم الحاسب مثل Modern Operating systems , Computer Networks..etc
من نظرة مطور، تنتمي اللينوكس كيرنل الى عائلة ال Monolithic kernel وهى عبارة عن كيرنل تدريجيه متالفه وتوضح الصوره شكل النواه المتالفه
كما ان الكود الخاص بالكيرنل -من رأيي- ليس فى افضل حال، وقد يلاحظ ذلك كل من طورو فى الكيرنل نفسها وفى كيرنل مختلفه. هناك فرق شاسع بين ديناميكيه النواه لينوكس والانويه الاخري التى سأذكرها لاحقا. فاللينوكس كيرنل تضع قيود كبيره على مطوري الكيرنل. اما الكيرنل نفسها اكوادها الاوليه الخاصه بالاجهزه ودعم تسهيلات الماكينات تكاد تكون جيده ولكن ليست جيده بما فيه الكفايه بالنسبه لل BSD على سبيل المثال.
اما اللينوكس كانظمه تشغيل مختلفه فتم تعديله بشكل كبير ليناسب الانظمه والسيرفرات المتقدمه ويتقدمها شركه redhat. وبرغم اعتقادي ان اللينوكس ليس من افضل الانظمه التى قد يمكن استخدامها للسيرفرات الا انى اخترت ان اسأل بعض مهندسي ومديري الانظمه وغيرهم من المهتمين بالمجال. وقال البعض ان السبب وراء تفضيل الناس اللينوكس على الانظمه الاخري هو كونه بلا مقابل (وبالطبع ذلك ليس فى جميع الاحيان). وقال اخرون ان السبب هو سهوله الاستخدام وكونه صديق للمستخدم (الذي هو مهندس النظام فى تلك الحاله).
اما بالنسبه للاستقرار او نسبه الخطأ. فاللينوكس من الصعب ان يحدث به اي خطا بسبب برنامج او الكيرنل نفسها وتلك ميزه ضخمه لا تتواجد فى انظمه اخري فى مقدمتها الويندوز.
ويندوز
اما الويندوز فهو بيئه متكامله وممتازه للمستخدمين العاديين وهو مايمنحه الاولويه فى السوق. الجميع يعلم ان الويندوز يحتل المرتبه الاولي فى نظم التشغيل المستخدمه وذلك لان كثير من البرمجيات تدعمه مثل برمجيات الجرافيكس والالعاب. وايضا لانه اكثر صداقه للمستخدم العادي. وعلى المستوي الشخصي اعتبره النظام الافضل للمستخدم العادي ولكن ايضا على مستوي الامن استبعده تماما.
قد تتلخص مميزات الويندوز فى التالي
أ- يعتمد الويندوز فى برمجته على ثقافه التوازي فهناك مقوله فى الويندوز تقول – Everything is a thread – فهو Multi-threaded وهو ما لا اعتقد ان اللينوكس يوفره.
ب- يعتبر الويندوز هو الاختيار الافضل لل(بزنس) او بشكل اخر الكسب السهل فهو لايكلفك الكثير لادارته والتحكم فيه كما قد يكلفك اللينوكس.
جـ – كثيرا من البرمجيات التجاريه تدعم الويندوز وذلك ايضا بسبب (البزنس) وهذا يجعل الويندوز بيئه (اسهل) فى التعامل.
اما عيوب الويندوز فانا اراها كثيره من وجهه نظري
أ- اولها واخطرها هو عدم الامن. فكثيرا من البرمجيات والخدمات التى يوفرها الويندوز سهله الاختراق. كما ينطبق ذلك على الويندوز ذاته!
ب- نظام الويندوز نظام سريع وسهل الانهيار -Crashy- وقد يفهم وجهه نظري من استخدم او طور دريفرات للويندوز او استخدم ال DDK/WDK.
جـ- الويندوز نظام مليئ بالاخطاء والتى تساعد على زيادتها ثقافه البرمجيات المغلقه التى يتبناها ويندوز واخرها كان ال ms-12020 والذي احدث ضجه كبيره وقد ينهي وجود كثير من سرفرات الويندوز.
د- وهناك العديد من العيوب الاخري والتى لا اريد ان اخوض فيها حتي لاننحرف عن مسار الموضوع.
Unix
حتي لا تختلط المفاهيم. اختفي اليونكس من ساحه تكنولوجيا المعلومات منذ سنين او يكاد يكون.. فيما عدا ماتبقي منه ومازال يحتفظ بمواصفاته، مثل ال BSD بتوزيعاتها المختلفه و AIX و Solaris. ويعتبر اليونكس أب لجميع انظمه تسمي بال *Nix وتوضع الصوره التاليه مفهومي.
وأنا شخصيا واعتقد ان الجميع يوافقني فى ذلك الرأي اعتقد ان اليونكس هو نظام التشغيل الاكثر قياسيه وقوه وأمانا وحرفيه وانسيابيه وديناميكيه على الاطلاق. فبرغم تواجد لينوكس كبديل للينوكس الا انه لم يستطيع ان يوفر جميع ما كان يوفره الينوكس. وللعلم ال Unix عباره عن monolithic kernel ايضا.
فإذا وضعنا نظام freeBSD فى مقارنه مع Linux.
نجد ان ال BSD كما ذكرت ديناميكي جدا على عكس اللينوكس الى حد ما.. وايضا البي اس دي يتهم بشكل كبير بالامن الخاص بنظام التشغيل نفسه.
كما يوفر ال BSD العديد من التسهيلات التى وجدت حديثا فى اللينوكس بل وبشكل افضل مثل BSD jails و SeLinux. وعديد من المزايا المتقدمه.
وايضا يتشابه الاثنان فى كثير من المميزات ولكن مايميز اللينوكس هو سهوله الاستخدام الى حد ما عن ال BSD او AIX.
وايضا انا اعلم ان كثيرا ممن كتب (موديولز) لنظامي التشغيل لينوكس ويونكس يعلم الفرق فى الديناميكيه و الحدود التى توضع على المطور.
وشخصيا انا انتظر بل وسأجرب فى اقرب وقت نظام التشغيل جنو ذو النواه هرد. لانه كما يعلم الجميع هي اول Microkernel متكامله على الاطلاق. واعتقد انها ستسبب فى ثوره فى عالم تكنولوجيا المعلومات. ولكن فى النهايه.. ليس هناك نظام تشغيل له الافضليه المطلقة. فهناك نظام تشغيل جيد فى شيئ وسيئ فى شيئ.
وبالطبع انا ارحب بأي مناقشه او اعتراض.