» امروز : » دیروز : » این ماه : » ماه قبل : » کل :
مطالب و نویسندگان
» تعداد مطالب : » تعداد نویسندگان : » تعداد صفحات : » رتبه گوگل : دو
تبلیغات
لینوکس -
تعداد بازدیدهای این مطلب :
بازدید
در سال 1991 در حالی كه جنگ سرد رو به پایان میرفت و صلح در افقها هویدا میشد، در دنیای كامپیوتر، آینده بسیار روشنی دیده میشد. با وجود قدرت سخت افزارهای جدید، محدودیت های كامپیوترها رو به پایان میرفت. ولی هنوز چیزی كم بود... و این چیزی نبود جز فقدانی عمیق در حیطه سیستم های عامل. داس، امپراطوری كامپیوترهای شخصی را در دست داشت. سیستم عامل بی استخوانی كه با قیمت 50000 دالر از یك هكر سیاتلی توسط بیل گیتز (Bill Gates) خریداری شده بود و با یك استراتژی تجاری هوشمند، به تمام گوشه های جهان رخنه كرده بود. كاربران PC انتخاب دیگری نداشتند. كامپیوترهای اپل مكینتاش بهتر بودند. ولی قیمتهای نجومی، آنها را از دسترس اكثر افراد خارج می ساخت.
خیمه گاه دیگر دنیای كامپیوترها، دنیای یونیكس بود. ولی یونیكس به خودی خود بسیار گرانقیمت بود. آنقدر گرانقیمت كه كاربران كامپیوترهای شخصی جرات نزدیك شدن به آنرا نداشتند. كد منبع یونیكس كه توسط آزمایشگاههای بل بین دانشگاهها توزیع شده بود، محتاطانه محافظت میشد تا برای عموم فاش نشود. برای حل شدن این مسئله، هیچیك از تولید كنندگان نرم افزار راه حلی ارائه ندادند. بنظر میرسید این راه حل به صورت سیستم عامل MINIX ارائه شد. این سیستم عامل، كه از ابتدا توسط اندرو اس. تاننباوم (Andrew S. Tanenbaum) پروفسور هلندی، نوشته شده بود به منظور تدریس عملیات داخلی یك سیستم عامل واقعی بود. این سیستم عامل برای اجرا روی پردازنده های 8086 اینتل طراحی شده بود و بزودی بازار را اشباع كرد. بعنوان یك سیستم عامل، MINIX خیلی خوب نبود. ولی مزیت اصلی آن، در دسترس بودن كد منبع آن بود. هركس كه كتاب سیستم عامل تاننباوم را تهیه میكرد، به 12000 خط كد نوشته شده به زبان C و اسمبلی نیز دسترسی پیدا میكرد. برای نخستین بار، یك برنامه نویس یا هكر مشتاق میتوانست كد منبع سیستم عامل را مطالعه كند. چیزی كه سازندگان نرم افزارها آنرا محدود كرده بودند. یك نویسنده بسیار خوب، یعنی تاننباوم، باعث فعالیت مغزهای متفكر علوم كامپیوتری در زمینه بحث و گفتگو برای ایجاد سیستم عامل شد. دانشجویان كامپیوتر در سرتاسر دنیا با خواندن كتاب و كدهای منبع، سیستمی را كه در كامپیوترشان در حال اجرا بود، درك كردند. و یكی از آنها لینوس توروالدز (Linus Torvalds) نام داشت. كودك جدید در افق در سال 1991، لینوس بندیكت توروالدز (Linus Benedict Torvalds) دانشجوی سال دوم علوم كامپیوتر دانشگاه هلسینكی فنلاند و یك هكر خود آموخته بود. این فنلاندی 21 ساله، عاشق وصله پینه كردن محدودیت هایی بود كه سیستم را تحت فشار قرار میدادند. ولی مهمترین چیزی كه وجود نداشت یك سیستم عامل بود كه بتواند نیازهای حرفه ای ها را براورده نماید. MINIX خوب بود ولی فقط یك سیستم عامل مخصوص دانش آموزان بود و بیشتر به عنوان یك ابزار آموزشی بود تا ابزاری قدرتمند برای بكار گیری در امور جدی. در این زمان برنامه نویسان سرتاسر دنیا توسط پروژه گنو (GNU) كه توسط ریچارد استالمن (Richard Stallman) آغاز شده بود، تحریك شده بودند. هدف این پروزه ایجاد حركتی برای فراهم نمودن نرم افزارهای رایگان و در عین حال با كیفیت بود. استالمن خط مشی خود را از آزمایشگاه معروف هوش مصنوعی دانشگاه MIT با ایجاد برنامه ویرایشگر emacs در اواسط و اواخر دهه 70 آغاز نمود. تا اوایل دهه 80، بیشتر برنامه نویسان نخبه آزمایشگاههای هوش مصنوعی MIT جذب شركتهای نرم افزاری تجاری شده بودند و با آنها قرارداد های حفظ اسرار امضا شده بود. ولی استالمن دیدگاه متفاوتی داشت. وی عقیده داشت برخلاف سایر تولیدات، نرم افزار باید از محدودیت های كپی و ایجاد تغییرات در آن آزاد باشد تا بتوان روز به روز نرم افزارهای بهتر و كارآمد تری تولید نمود. با اعلامیه معروف خود در سال 1983، پروژه GNU را آغاز كرد. وی حركتی را آغاز كرد تا با فلسفه خودش به تولید و ارائه نرم افزار بپردازد. نام GNU مخفف GNU is Not Unix است. ولی برای رسیدن به رویای خود برای ایجاد یك سیستم عامل رایگان، وی ابتدا نیاز داشت تا ابزارهای لازم برای این كار را ایجاد نماید. بنابراین در سال 1984 وی شروع به نوشتن و ایجاد كامپایلر زبان C گنو موسوم به GCC نمود. ابزاری مبهوت كننده برای برنامه نویسان مستقل. وی با جادوگری افسانه ای خود به تنهایی ابزاری را ایجاد نمود كه برتر از تمام ابزارهایی كه تمام گروههای برنامه نویسان تجاری ایجاد كرده بودند قرار گرفت. GCC یكی از كارآمد ترین و قویترین كامپایلرهایی است كه تا كنون ایجاد شده اند. تا سال 1991 پروزه GNU تعداد زیادی ابزار ایجاد كرده بود ولی هنوز سیستم عامل رایگانی وجود نداشت. حتی MINIX هم لایسنس شده بود. كار بر روی هسته سیستم عامل گنو موسوم به HURD ادامه داشت ولی به نظر نمی رسید كه تا چند سال آینده قابل استفاده باشد. این زمان برای توروالدز بیش از حد طولانی بود... در 25 آگوست 1991، این نامه تاریخی به گروه خبری MINIX از طرف توروالدز ارسال شد: از : لینوس بندیكت توروالدزبه: گروه خبری MINIXموضوع: بیشتر چه چیزی را میخواهید در MINIX ببینید؟خلاصه: نظرخواهی كوچك در مورد سیستم عامل جدید منبا سلام به تمام استفاده كنندگان از MINIXمن در حال تهیه یك سیستم عامل رایگان فقط به عنوان سرگرمی و نه به بزرگی و حرفه ای GNU برای دستگاههای 386 و 486 هستم. این كار از آوریل شروع شده و درحال آماده شدن است. من مایلم تا نظرات كاربران را در مورد چیزهایی كه در MINIX دوست دارند یا ندارند، جمع آوری كنم. زیرا سیستم عامل من حدودا شبیه آن است. مانند ساختار سیستم فایل مشابه و چیزهای دیگر... من اكنون bash نسخه 1.08 و GCC نسخه 1.40 را به آن منتقل كرده ام و به نظر میرسد كه كار میكند. من در عرض چند ماه چیزی آزمایشی درست كرده ام و مایلم بدانم كه كاربران بیشتر به چه قابلیتهایی نیاز دارند؟ من از هر پیشنهادی استقبال میكنم. ولی قول نمی دهم همه آنها را اجرا كنم. لینوس همانطور كه در این نامه پیداست، خود توروالدز هم باور نمی كرد كه مخلوقش آنقدر بزرگ شود كه چنین تحولی در دنیا ایجاد كند. لینوكس نسخه 0.01 در اواسط سپتامبر 1991 منتشر شد و روی اینترنت قرار گرفت. شور و اشتیاقی فراوان حول مخلوق توروالدز شكل گرفت. كدها دانلود شده، آزمایش شدند و پس از بهینه سازی به توروالدز بازگردانده شدند. لینوكس نسخه 0.02 در پنجم اكتبر به همراه اعلامیه معروف توروالدز آماده شد: از : لینوس بندیكت توروالدزبه: گروه خبری MINIXموضوع: كدهای منبع رایگان هسته مشابه MINIX آیا شما از روزهای زیبای MINIX 1.1 محروم شده اید؟ هنگامی كه مردها مرد بودند و راه اندازهای دستگاه خود را خودشان مینوشتند؟ آیا شما فاقد یك پروزه زیبا هستید و می میرید تا سیستم عاملی داشته باشید تا بتوانید آنرا مطابق با نیازهای خود در آورید؟ اگر اینگونه است، این نامه برای شما نوشته شده است.همانطور كه ماه پیش گفتم من در حال كار بر بروی یك سیستم عامل رایگان مشابه MINIX برای كامپیوترهای 386 هستم. این سیستم عامل اكنون بجایی رسیده است كه قابل استفاده است و مایل هستم كه كدهای منبع را در سطح گسترده تر پخش نمایم. این نسخه 0.02 است ولی من موفق شده ام كه نرم افزارهای Bash، GCC، GNU-Make، GNU-sed، Compress و غیره را تحت آن اجرا كنم. كدهای منبع این پروژه را میتوانید از آدرس nic.funet.fi با آدرس 128.214.6.100 در دایركتوری pub/OS/Linux پیدا كنید. این دایركتوری همچنین دارای چند فایل README و تعدادی باینری قابل اجرا تحت لینوكس است. تمام كدهای منبع ارائه شده است زیرا هیچ یك از كدهای MINIX در آن استفاده نشده است. سیستم را میتوانید همانطور كه هست كامپایل و استفاده كنید. كدهای منبع باینری ها را هم میتوانید در مسیر pub/GNU پیدا كنید. لینوكس نسخه 0.03 پس از چند هفته آماده شد و تا دسامبر، لینوكس به نسخه 0.10 رسید. هنوز لینوكس فقط چیزی كمی بیشتر از یك فرم اسكلت بود. این سیستم عامل فقط دیسكهای سخت AT را پشتیبانی میكرد و ورود به سیستم نداشت و مستقیما به خط فرمان بوت میشد. نسخه 0.11 خیلی بهتر شد. این نسخه از صفحه كلیدهای چند زبانه پشتیبانی میكرد، دیسكهای فلاپی و كارتهای گرافیكی VGA، EGA، هركولس و... نیز پشتیبانی میشدند. شماره نسخه ها از 0.12 به 0.95 و 0.96 افزایش پیدا كرد و ادامه یافت. بزودی كد آن بوسیله سرویس دهنده های FTP در فنلاند و مناطق دیگر، در سرتاسر جهان منتشر شد.