سولاريس  سولاريس هو نظام تشغيل بني اعتمادا على عدة أنظمة تشغيل متفرعة من يونكس.  بدأت القصة في الولايات المتحدة الأمريكية، عندما شرعت شركة معامل بيل Bell Labs التابعة وقتها لشركة AT&T في العمل مع هيئة MITعلى إنشاء نظام التشغيل MULTICS(Multiplexed Information and Computing System) معناه تقريبا نظام المعلومات والحسابات معاً. وكان ذلك لصالح شركة General Electrics من أجل تشغيل محطة عمل مركزية Mainframe معينة.  إن محطة العمل المركزية Mainframe Minicomputer هي عبارة عن جهاز حاسب آلي مركزي وحيد ويتصل به المستخدمون عن طريق نقاط طرفية terminals عبارة عن شاشة وأداة إدخال بيانات، وعادة ما كانت المحطة تأخذ حيزا وثمنا كبيرين ولذلك كانت توجد فقط في الشركات الكبيرة وفي الجامعات. ولهذا فإن التفكير في إضافة القدرة لنظام التشغيل على السماح لأكثر من مستخدم بالعمل في نفس الوقت Multi-User والقدرة على إدارة وتنفيذ أكثر من عملية معاً فيما يعرف باسم Multi-tasking أو Time-Sharing، هاتين الفكرتين كانتا داخلتين في تصميم النظام منذ البداية وقد تم تحسينهما وتطويرهما مع الوقت. وأيضا دخلت في النظام مبكراً فكرة تأمين المعلومات والتحكم في دخول أي مستخدم فلا يمكن الدخول إلى بيئة المستخدم نصية كانت أو تصويرية بدون كتابة اسم حساب المستخدم المسجل في قاعدة معلومات النظام مع كلمة السر الخاصة به، فيما يعرف باسم Login Authentication (توثيق عملية الدخول).  ظهر بعد ذلك بفترة محطات العمل المعروفة باسم Microcomputers أو Workstations وهي أصغر حجما من سابقتها وأرخص ثمنا نظرا للتطور التقني وتزامن ظهورها مع انتشار تقنيات شبكات الحاسب الآلي تلك التي توصل محطات العمل معا بواسطة وسيلة اتصال إلكترونية. ولكنها تختلف عن الحواسب الشخصية Personal Computers التي تجهز بتجميع القطع من على الرف من مراكز البيع ولذلك رَخُصَ ثمن الحواسب الشخصية عن محطات العمل.  انفصلت Bell Labs من مشروع MULTICS سنة 1969 لتوجه نشاطها نحو هدف جديد. وجدير بالذكر شروع شركة هانيويل HoneyWell في عام 1970 بشراء قطاع أعمال الحاسب من شركة General Electric ومن ضمن ذلك نظام تشغيل MULTICS وقد استمرت Honeywell في دعمه حتى 1985.  و في سنة 1971 م قام أحد مهندسي Bell Labs كين طومسون Ken Thompson بعد عدة تجارب مثل تصميم لعبة على نظام MULTICS بإعادة كتابة النظام بواسطة لغة البرمجة Assembly، وأدخل على النظام عدة تعديلات جعلته أبسط في التصميم وأكثر فاعلية، وأطلق عليه اســم UNIX System وذلك ليعمل على محطة عمل مركزية PDP-7 mainframe. يظن البعض أن الاسم UNIX أخذ من MULTICS بتغيير كلمة Multiplexed إلى Uniplexed في مزاح من أحد زملاء طومسون. ثم تحورت الكلمة من UNICS إلى UNIX.  كان المهندس دينيس ريتشي قد قام بتطوير مترجم للبرمجة بلغة سي للمعالج PDP-11، وتعاون دينيس ريتشي وكين تومسن في إعادة كتابة نظام تشغيل يونكس بلغة سي للعمل على ذلك المعالج، ثم نشرا بحثاً عن نظام تشغيل يونكس سنة 1974.  بعد نشر البحث انهالت الطلبات على AT&T للحصول على نسخة من النظام وكانت الجامعات والشركات تحصل معه على المادة المكتوبة Source Code لبرنامج نظام التشغيل يونكس، وكان السبب الرئيسي في توزيع رخص النظام مجانا تعقيدات إدارية بين AT&T والحكومة لم تمكن الشركة من الدخول بصفة رسمية في مجال سوق الحاسب في ذلك الوقت، وقد كان ذلك سببا مباشرا في التطور الهائل الذي حدث في النظام بواسطة أساتذة وطلبة الجامعات والمستخدمين بالشركات المختلفة. وأخذت نسخ معتمدة تظهر مثل UNIX Version 6 مصحوبة بدليل الاستخدام ومادة البرنامج المكتوبة.  إن نظام BSD له تأثير كبير في نظام SunOS وUNIX SVR4 وبالتالي في نظام سولاريس. كانت جامعة بريكلي Berkeley بولاية كاليفورنيا الأمريكية قد حصلت على رخصة UNIX Version 6 ولأن مادة البرنامج المكتوبة UNIX Source Code كانت موجودة فقد استطاعت الجامعة تطوير النظام إلى حد كبير وأصدرت نسخة (1BSD) Berkeley Software Distribution version 1.xعام 1977 وبعدها إصدارات 2BSD و3BSD بنسخها المتتالية.  وفي سنة 1981 ظهرت 4BSD وبها عدة أفكار وبرامج متميزة منها:  هذه الأفكار والابتكارات الجديدة جعلت نظام 4BSD الأفضل وقتها مما جعل صن ميكروسيستمز تنتج SunOS متوافقا معه. النسخ الموجودة الآن حتى سنة 2007 هي: OpenBSD وNetBSD.  تكمن أهمية خاصية النقل في أنها كانت أحد العوامل الهامة في إنشاء شبكة الحاسب بعد ذلك لأنها جعلت عملية إعداد نظام التشغيل على أكثر من جهاز أكثر سهولة. و هي عبارة عن إمكانية تحميل النظام ونقله من جهاز إلى آخر بحيث لا يكون هناك داعي لكتابة البرنامج بأكمله من جديد، بشرط توافق النظام مع مكونات الجهاز الذي سيعمل عليه ومن أهمها المعالج الدقيق Microprocessor وتكون محتاجاً فقط إلى الآتي:  ولأن مترجم لغة السي الذي كتبه دينيس ريتشي كان مخصصا لمحطة العمل PDP-11 فلم يكن مناسب لتحميل النظام على محطة عمل مختلفة مثل Interdata 8/32. فقام زميل لهم يدعى ستيف جونسون Steve Johnson بتصميم مترجم آخر مناسب لعملية النقل على أي جهاز أطلق عليه Portable C Compiler، وظل لعدة سنوات الأساس لكل برامج المترجمات لإصدارات نظام يونكس المتعددة.  نعود لشركة AT&T، منذ عام 1982 وعند إصدارها نسخة نظام يونكس III بدأت تطلب مقابل مالي لرخصة النظام ولم تعد مادة البرنامج توزع معه. ثم اعقبها نسخة UNIX System V باصداراته المتعاقبة 1، 2 و3.  و بـالتـعـاون مع شـركة Sun قامـت AT&T بإصـدار UNIX System V Release 4 والمشهورة باسم SVR4 سنة 1989 وذلك لدمج كل التغيرات بأنظمة BSD و SunOS ونسخة Xenix من Microsoft. تضمنت النسخة SVR4 عدة أدوات مهمة منهاTCP/IP و C shell وKorn shell ونظامي الملفات UFS وNFS ونظام جديد للتعامل مع الذاكرة الخيالية virtual memory وبيئة Open Windows التصويرية وأيضا تعريف الأدوات على الأجهزة التي تعمل بالمعالج x86، مع إضافة دعم للمعايير القياسية POSIX وX/Open.  استمرت AT&T بإنتاج الإصدارات حتى SVR4.2 بعد تكوين شركة USL سنة 1991. في عام 1992 تم بيع شركة USL ومعها حق ملكية نظام تشغيل UNIX System V إلى شركة نوفل التي بدأت في إصدار إنتاجها الخاص UNIXWare إلى أن اضطرت لبيع بعض المواد الخاصة بها فانتقلت العلامة التجارية وحق منح الشهادات لنظام UNIX إلى شركة X/Open في سنة 1994 وباعت UNIX system ومادة البرنامج المكتوبة إلى شركة SCO Group في سنة 1995. وهناك خلاف بين نوفل وSCO حول نصيب كل منهما في الحقوق الفنية.  بحلول عام 1993 كانت معظم النسخ الموجودة في العالم قد قام منتجيها بجعلها معتمدة بشكل أساسي علي SVR4.  في الثمانينات من القرن الماضي كانت قد انتشرت نسختين من يونكس انتشاراً كبيراً وهما 4.3BSD و SVR3 وكانتا غير متوافقتين، أي مختلفتين اختلافاً كبيراً وكان ذلك شيئاً مزعجاً لكل المبرمجين. فبدأت الهيئات العلمية في محاولة إصدار مواصفات موحدة تنشر على شكل دليل علمي أو معيار قياسي.  من هذه المعايير القياسية: 1- POSIX) IEEE 1003.1 Standard)  2- X/Open Portability Guide  3- Single UNIX Specifications  4 - Open Group Base Specifications  5- File system Hierarchy Standard  أول محاولة جدية لتوحيد النسختين في نسخة واحدة متفق عليها كانت من مؤسسة IEEE وكان اسم المشروع POSIX أو Portable Operating System Interface for UNIX وهو يعني بالعربية "واجهة نظام تشغيل قابل للنقل ليونكس"  أصدرت لجنة POSIX معيارها القياسي Standard سنة 1988 وسمي IEEE 1003.1 وكانت الفكرة من الإصدار أن أي برنامج مصمم للعمل على يونكس باستخدام الخطوات المحددة في هذا الإصدار القياسي يكون صالحة للعمل على أي نسخة يونيكس موجودة. وآخر إصدار لهم حتى سنة 2006 كان IEEE Std 1003.1, 2004 Edition  تكونت X/Open Company شركة متحدة سنة 1984 هدفها الأساسي تعريف وتقديم منتجات قياسية لتنشر للجمهور لزيادة التوافق بين الأدوات والبرامج التكنولوجية. في البداية بدون اتفاق مع منظمة IEEE قامت X/Open بنشر توصيفها القياسي X/Open Portability Guide أو XPG الذي كان أعم من POSIX وكان يشرح المتطلبات اللازمة لعمل نظام مشابه لنظام UNIX تم نشر XPG3 سنة 1989 وكان XPG4 آخر إصدار لهذا التوصيف القياسي سنة 1992 والذي اعتمد عليه Single UNIX Specification بشكل أساسي  وكان من نتائج تلك المواصفات مع الدليل IEEE 1003.1 أو POSIX تكوين ما عرف باسم OSF  OSF/1  في عام 1988 قامت بعض الشركات فعقدت تحالفاً اقتصادياً سمي مؤسسة البرامج المفتوحة Open Software Foundation أو OSF وذلك كرد فعل لتحالف AT&T مع Sun في إنتاج SVR4 في محاولة لكسر احتكار AT&T لنظام تشغيل UNIX. شركات مثل:  وأنتجت هذه المؤسسة نظام تشغيل OSF/1 سنة 1990 الذي اعتمد على معيار POSIX بشكل أساسي وغير هذا النظام كانت لهم العديد من المنتجات القياسية مثل Motif وهو منتج قياسي عبارة عن GUI Widget Toolkit وهي مجموعة أدوات أساسية في بناء بيئة المستخدم التصويرية  Common Open Software Environment أو (COSE)  في سنة 1988 قامت AT&T و Sun مع بعض الشركات الأخرى بعقد تحالف اسمه UNIX International أو UI لتقديم معايير مفتوحة. وكان ذلك رد فعل لظهور مؤسسة OSF الذي ظهرت ضدهما بعد تعاونهما في عمل SVR4.  بعد فترة تحديدا في عام 1993 وفي سبيل حماية نصيب يونيكس في سوق محطات العمل من الخطر المتزايد من جهة ميكروسوفت ونظامها Windows 3.11 for workgroups وما تلاه، تلاقى الفريقان في مبادرة لتوحيد الجهود في مجال توحيد مواصفات نظام يونيكس فيما عرف باسم COSE أو Common Open Software Environment. من أعضاء هذا الفريق المتحد عدة شركات من الجانبين منها :  كان هؤلاء الأعضاء يمثلون الشركات الكبيرة في سوق النظم المماثلة لنظام يونكس وأيضا الشركات المالكة للحق الفني في نظام يونيكس وما نتج عنه من إصدارات. كانت هناك عدة مجالات حددوا فيها الاهتمام بتحديد مواصفات مشتركة لها ومنها:  · بيئة سطح مكتب مشتركة · أدوات الشبكات · الأدوات التصويرية graphics · برامج عرض ملفات الصوت والفيديو · إدارة النظام و تم اعـلان جديـة الفريـق في عمل مواصـفات موحـدة لنظام تشغيل UNIX أو ما يسمى Single UNIX Specifications.  أحد نتائج هذه الجهود تصـميم وتنفيذ بيئة سـطح المكتب التصويرية المشـتركة Common Desktop Environment أو (CDE) بواسطة HP و Sun وآي‌ بي‌ إم ونوفل.و هي بيئة سطح مكتب تصويرية GUI Environment بنيت باستخدام بروتوكول X11 الذي أصدرته MIT سنة 1984 ومجموعة أدوات MOTIF التي أصدرتها OSF سابقاً. استخدم CDE بعد ذلك بواسطة HP وصن ميكروسيستمز.  في عام 1994 اتحد الفريقان UI وOSF في مؤسسة واحدة احتفظت باسم OSF وللتفريق بينها وبين فريق OSF القديم يطلق عليها البعض The new OSF.  حدث أن اشترت الشركة X/Open حق العلامة التجارية Trademark لنظام UNIX وأحقية منح شهادات Certification من شركة نوفل في سنة 1994.  نشرت X/Open الدليل القياسي UNIX 95 Brand لتوضيح المواصفات القياسية لنظام يونيكس أو Single UNIX specification version 1 سنة 1995  في سنة 1996 تحالفت مؤسسة OSF مع X/Open لتكوين ما يسمى Open Group و قاموا بإصدار UNIX 98 Brand النسخة الثانية من دليل المواصفات القياسية لنظام يونيكس أو Single UNIX Specification version 2 (1998 Edition) في سنة 1998  و في نسخة Single UNIX Specification v3 لسنة 2001 تم توحيد المواصفات مع مواصفات POSIX أو IEEE 1003.1 بواسطة مجموعة مشكلة من الطرفين اسمها Austin Group.  وفي سنة 2004 تم نشر دليل المواصفات القياسية لنظام UNIX لتصحيح عدة مشاكل في النسخة السابقة وهو بعنوان The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition  توجد ملاحظة هامة أنك باستخدام هذا الدليل القياسي لا تكون بحاجة إلى مادة البرنامج المكتوبة UNIX Source Code بواسطة AT&T لتصميم نظام UNIX خاص بك.  Filesystem Hierarchy Standard: هو المعيـار القياسـي لنظام الملفات الخاص بنظـم التشـغيل التي أطلق عليـها (UNIX System – Like operating systems) أي التي تشبه يونكس.  في البداية كان يختص بنظام GNU/Linux وذلك منذ عام 1993 إلي 1996 ثم في إصداراته التالية تم تعميمه للأنظمة الأخرى بالتعاون مع مجموعة تطوير نظام BSD. والإصدار الحالي (منذ 2004 إلى 2007) هو FHS 2.3 و يمكنك الحصول على الدليل الخاص به من موقع http://www.pathname.com/fhs  خلال سنوات الثمانينات اصدرت شركة Sun Microsystems نظام تشغيل خاص يسمى SunOS المتوافق مع BSD كما ذكرنا من قبل. ثم تـعاونت مع شـركة USL التـابعة لشـركة AT&T لإصـدار نسـخة UNIX System V Release 4 أو (SVR4) سنة 1989. وأصدرت Sun بعدها نسخة نظام تشغيل باسم تجاري يدعى Solaris.  و يرى الدارسون أن Sun اعتمدت على SunOS و SVR4 معاً لإنتاج وتطوير هذا النظام الجديد مع تحويل الوجهة في التصميم نحو SVR4 الذي أصبح الأفضل والأكثر تطورا وقتها. وظهرت نسخة Solaris version 2.0 سنة 1992 والتي تتضمن نسخة SunOS 5.0 لتعمل على محطات العمل SparcStations و SparcServers التي تعمل بالمعالج Sparc.  و لقد انتهت العلاقة بين AT&T و Sun بانتهاء العمل في مشروع SVR4، بمعنى أن كل ما تلى نسخة Solaris 2.0 التي أنتجتها Sun من إصدارات لم تنقل أي تعديلات من التي حدثت في إصدارات SVR4.x التالية.  بعد نسخة Solaris 2.6 تغير رقم النسخة التالية ليصبح Solaris 7 وبعد ذلك 8 و 9 و 10 تهتم Sun Microsystems في كل نسخة جديدة بالتوافق مع النسخ السابقة من Solaris مع إضافة خصائص جديدة للنظام في نفس الوقت أحيانا تكون بالإفادة من البرامج الحرة من GNU أو من Open Group وأحيانا تكون من ابتكار Sun نفسها.  كـانت Sun تسـتعمل بيئة مسـتخدم تصويرية تدعى Open Windows بالاعتماد على بروتـوكولات SunView و NeWS و X windowing system. كانـت بيـئـةOpen Windows تستعمل منذ SunOS 4.0 وحتى Solaris 8، وأضيفت إلى نظام SVR4 أيضاً، ثم اسـتبدلتها Sun في Solaris 9 بالبيئـتين CDE و GNOME. بعد ذلك طورت Sun بيئة GNOME Desktop Environment في نظام Solaris 10 إلى البيئة التصويرية الجديدة JAVA Desktop Environment  تقوم Sun Microsystems بإنتاج عدة أنواع من النسخ في كل إصدار لنظام Solaris منها: 1- نسخة Sparc للعمل على محطات SparcStation وهي المعروفة باستخدام المعالج مركزي Sparc processor الذي أنشئ باستخدام تكنولوجيا RISC 2- نسخة (x86) للعمل على الحاسبات الخاصة PCs التي تستخدم سلسلة المعالج المركزي Intel x86 ومنه (386 processors و 486 و 586(Pentium) و 686) 3- نسخة (AMD64) للعمل على وحدات المعالجة المركزية ذات 64 bit  أهم ما في الأمر أن نسخة نظام تشغيل Solaris نسخة مجانية يمكنك تحميلها من موقع Sun على الإنترنت (حتى هذه اللحظة سنة 2007)  1-6 GNU / Linux أو Linux فحسب (في ذلك خلاف بين ريتشارد ستالمان ولينوس تورفالدز)  منذ نشر POSIX وبعد ذلك XPG ثم SUS أصبح من السهل على كل المبرمجين القيام بعمل برامج لتعمل علي بيئة نظام UNIX حسب المواصفات الموحدة، وحتى إنشاء نظام تشغيل بأكمله كما رأينا محاولات OSF منذ قليل. ومن المحاولات المبكرة التي بدأت بفكرة بسيطة ثم تطورت ببطء مع الوقت حتى آتت ثمارها ما عرف باسم مشروع GNU ونظام تشغيل لينوكس Linux.  GNU Project  في سنة 1983 أنشـأ ريتشارد ستالمان Richard Stallman المهندس السابق في MIT مشـروع GNU أو (GNU Not UNIX) و[ G على أغلب الظن اختصار Generic وتعني عام، ولم يصرح بذلك أحد ] تحت مظلة مؤسسة أنشأها اسمها مؤسسة البرمجيات الحرة أو Free Software Foundation. وكان الهدف الأساسي هو إنشاء برامج حرة بحيث يسمح للمبرمج والمستخدم في إضافة إي تعديلات تكون متفقة مع شروط المشروع. و قد قسم المشروع إلى عدة مراحل: أولا: القيام بتصميم وتوزيع برامج مفيدة للمستخدم ثانيا: القيام بإنشاء نظام تشغيل تعمل عليه كل البرامج التابعة لرخصة المشروع GPL  و لأن عدد مستخدمي UNIX المنتشرين على نطاق واسع كان كبيرا ولمميزات هذا النظام المتعددة، فقد استقر الرأي على أن يكون نظام التشغيل شبيه بنظام UNIX.  حتى سنة 1990 كان أعضاء مشروع GNU قد انتهوا من تصميم الكثير من البرامج والأدوات القابلة للعمل على نظام كهذا، ولكن لم يكونوا قد فرغوا بعد من تصميم نواة النظام وكانوا بصدد العمل في نواة للنظام تدعى HURD ولم يكملوها بعد لأنها تطلبت منهم الكثير من الوقت والجهد بسبب فكرة تصميمها المعقدة. يمكنك تجربة نظام يعمل بتلك النواة اسمه Debian GNU/HURD بعد تنزيله من موقع Debian على الإنترنت.  بعض منتجات GNU تستعمل الآن في العديد من الأنظمة وفي نظام Solaris خاصة. من تلك المنتجات على قبيل المثـال Bash Shell و GNOME Desktop Environment.  في عام 1991 كان طالب جامعي يدعى لينوس تورفالدز Linus Torvalds قد فرغ من تصميم نواة نظام تشغيل والتي سميت Linux بعد ذلك. وسبب ذلك أن لينوس كان يستخدم نظام MINIX الذي قـام بتصـميمه الأسـتاذ الجـامعي Andrew Tanenbaum صـاحب كتـاب Modern Operating systems الشهير. وكان نظام Minix خالي تماما من مادة برمجة UNIX System.و كان Tanenbaum يرفض أن يقوم أحد الطلبة بإدخال أي تعديلات على نظامه مما دفع لينوس تورفالدز الذي كان يريد تجربة بعض أفكاره لتصميم نواة نظام تشغيل جديدة. صمم لينوس هذه النواة بحيث تكون متوافقة بقدر المستطاع مع الدليل القياسي POSIX وكان قد اشترى نسخة من هذا الدليل بعد شروعه في التصميم. في البداية كان لينوس يقوم بتحميل Linux kernel من خلال نظام MINIX يعمل على الحاسب.  كانت نواة نظام التشغيل Linux kernel مصممة للعمل على حاسب شخصي يعمل بمعالج Intel 386 ولكنها الآن قادرة على أن تعمل على معظم أنواع تصميمات المعالج المركزي CPU Architecturesالأخرى مثل SPARC و PowerPC و PA - RISC (يمكنك الدخول على موقع http://www.debian.org/ports للتأكد من ذلك أو www.opensuse.org)  GNU/Linux Distribution  طوع لينوس Linux Kernel ليسمح بأدوات وبرامج مشروع GNU بالعمل فوقه، وبالاتفاق مع أعضاء المشروع تم ترخيص نواة Linux kernel برخصة مشروع GNU General Public Licence أو (GPL) التي تحمي حرية البرنامج وتوحيد قياساته. إن نسخة نظام تشغيل Linux التقليدية تشمل:  هناك إصدارات كثيرة من نظام تشغيل Linux لعدة هيئات وشركات مختلفة مثل: Redhat Linux و Fedora Project و SUSE Linux و Mandrake Linux و Debian GNU/Linux. وقد استخدم Linux في تشغيل أجهزة الحاسب الآلي وفي بعض الهواتف الخلوية المحمولة Mobile Cellular Phone وكنظام تشـغيل خاص بالبرمجـة في الزمن الحقيقي Real time OS.  GNU/ *BSD  بعد تطويع GCC ومكتبة لغة C الخاصة بGNU والمعروفة باسم GNU C Library أو glibc بالعمل مع نواة نظام تشغيل NetBSD و FreeBSD، أصبح سهلا استبدال نواة linux kernel بالنواة BSD kernel وهو ما يعرف باسم GNU/BSD Distribution.  و هذا مختلف عن استخدام نظام BSD لبعض برامج GNU، فهذا النظام الجديد الذي ما زال في طور التصميم كل مكوناته عدا النواة من تصميم GNU. وأعضاء مشروع Debian من رواد هذا المشروع التجريبي الجديد فلو دخلت على موقعهم ستجد نظام تشـغيل باسم Debian GNU/BSD في طور التصميم.