ویرگول
ورودثبت نام
MMETehrani
MMETehrani
MMETehrani
MMETehrani
خواندن ۴ دقیقه·۵ ماه پیش

ماجرای شکل گیری لینوکس و گنو

استالمن، برنامه‌نویسی بود که در محیط دانشگاه MIT، از نزدیک دیده بود چطور نرم‌افزارها کم‌کم از دسترس عموم خارج می‌شن.نرم‌افزارهایی که قبلاً بین برنامه‌نویسان به‌راحتی به اشتراک گذاشته می‌شدن، حالا توسط شرکت‌ها قفل می‌شدن، کد منبعشون بسته می‌شد و کاربران دیگه اجازهٔ تغییر، بررسی یا حتی اشتراک‌گذاری‌شون رو نداشتن.

برای استالمن، این فقط یه مشکل فنی نبود؛ این یه مشکل اخلاقی بود.

Richard Stallman
Richard Stallman

پس تصمیم گرفت سیستم‌عاملی طراحی کنه که کاملاً آزاد باشه — به این معنی که هر کاربر:

  • بتونه نرم‌افزار رو اجرا کنه،

  • کد منبعش رو بررسی و تغییر بده،

  • و اون رو با دیگران به اشتراک بذاره.

این شد شروع پروژه‌ای به نام GNU (که خودش یه جور شوخی بود:

GNU = GNU's Not Unix
یعنی: گنو، یونیکس نیست!
که البته از یونیکس الهام گرفته شده بود.)


🏗 ابزارهای گنو؛ همه‌چیز به جز هسته

استالمن و داوطلبان پروژه گنو با تلاش زیاد، در طول سال‌های دهه ۸۰ موفق شدن:

  • شل (مثل Bash)،

  • کامپایلر (GCC)،

  • ابزارهای خط فرمان (coreutils)،

  • ادیتورها (مثل Emacs)،

  • و کلی ابزار سیستمی دیگه

رو تولید کنن — همه آزاد و متن‌باز.

اما یک چیز هنوز آماده نبود:

❗️ هستهٔ سیستم‌عامل (Kernel)

اون‌ها مشغول توسعهٔ هسته‌ای به نام Hurd بودن، اما Hurd پروژه‌ای بسیار پیچیده بود و توسعه‌اش به کندی پیش می‌رفت.
در عمل، پروژه گنو یه سیستم‌عامل کامل بود... اما بدون قلب!

🧑‍💻 از تفریح تا انقلاب

لینوس توروالدز، دانشجوی فنلاندی، مثل خیلی از ماها عاشق دستکاری سیستم‌ها بود. اون موقع‌ها از مینیکس (Minix) استفاده می‌کرد، اما محدودیت‌های این سیستم‌عامل، مخصوصاً انحصاری بودنش، حسابی اعصابشو خورد کرده بود.

پس تصمیم گرفت خودش دست‌به‌کار بشه. نه برای فتح جهان. نه برای رقابت با شرکت‌های بزرگ. فقط برای تفریح!
در ۲۵ اوت ۱۹۹۱، لینوس پیامی تاریخی در گروه خبری comp.os.minix منتشر کرد:

لینک این پیام

"درود به هرکس که از مینیکس استفاده می‌کند
من در حال ساخت یک سیستم‌عامل آزاد برای رایانه‌های AT ۳۸۶ (۴۸۶) هستم (فقط برای تفریح، نه چیزی بزرگ و حرفه‌ای مانند گنو).
سیستم‌عامل آماده است و کار می‌کند. دوست دارم دیدگاه دیگران را بشنوم.
هم‌اکنون bash نسخه ۱٫۰۸ و gcc نسخه ۱٫۴۰ روی آن نصب هستند.
طی ماه‌های آینده چیز مفیدی خواهم ساخت.
خوشحال می‌شوم بدانم کاربران چه امکاناتی را لازم دارند.

— لینوس

پ.ن: این نرم‌افزار آزاد است، ولی فعلاً فقط روی رایانه‌های AT اجرا می‌شود."


با همین جمله ساده، یکی از تأثیرگذارترین پروژه‌های نرم‌افزاری جهان متولد شد.

ولی اون پروژه هنوز اسم رسمی نداشت ...
روی سیستم خودش توی دایرکتوری linux/ نگهش می‌داشت (به‌خاطر اسم خودش)، اما خودش در ابتدا می‌خواست اسمش رو بذاره "Freax" — ترکیبی از:

  • Free (آزاد)

  • Freak (عجیب و خاص)

  • و حرف x از Unix

ولی این اسم به مذاق مدیر سرور FTP که قراره کد لینوس رو میزبانی کنه نمی‌رسه...

وقتی لینوس خواست پروژه‌اش رو منتشر کنه، اون رو روی سرور FTP دانشگاه Helsinki آپلود کرد.
مدیر این سرور، کسی بود به نام Ari Lemmke که خودش هم علاقه‌مند به نرم‌افزارهای آزاد بود.

آره بدون هماهنگی با لینوس، پروژه رو توی یه دایرکتوری به اسم linux/ قرار داد — چون فکر می‌کرد "Freax" اسم جالبی نیست و این پروژه هم "ساخته‌ی لینوس" بود.

Linux = Linus + Unix

جالبه بدونید که توروالدز خودش اول خیلی با اسم "Linux" حال نمی‌کرد! چون فکر می‌کرد خیلی خودخواهانه به نظر می‌رسه. ولی خب، جامعه گفت: نه!.


❤️ لینوکس: قلبی که گنو بهش نیاز داشت

اینجا بود که هستهٔ نوشته‌شده توسط لینوس توروالدز، در زمان دقیق و مکان مناسب، وارد بازی شد.

هستهٔ لینوکس، که او در سال ۱۹۹۱ منتشر کرده بود، آزاد و قابل استفاده بود. پس خیلی زود، جامعهٔ گنو و دیگر توسعه‌دهنده‌ها شروع کردن به ترکیب ابزارهای گنو با هستهٔ لینوکس.

نتیجه چی شد؟

🎉 یک سیستم‌عامل کامل، آزاد، مدرن و قابل استفاده توسط همه:
GNU/Linux

🗣 چرا بعضی‌ها می‌گن «گنو/لینوکس» و نه فقط «لینوکس»؟

بخشی از جامعهٔ نرم‌افزار آزاد (و مخصوصاً خود استالمن) تأکید دارن که فقط گفتن "لینوکس" باعث می‌شه تلاش عظیم پشت پروژه گنو نادیده گرفته بشه.

گنو رو فراموش نکنید!
گنو رو فراموش نکنید!

با ترکیب ابزارهای گنو + هسته لینوکس، یه سیستم‌عامل واقعی، آزاد و قابل استفاده شکل گرفت.

به همین دلیله که خیلی‌ها به جای "لینوکس"، اسمش رو GNU/Linux می‌ذارن، تا نقش پروژه گنو فراموش نشه.


🧭 گنو فقط نرم‌افزار نبود؛ یک جنبش بود

پروژه گنو پایه‌گذار جنبشی به نام نرم‌افزار آزاد (Free Software Movement) شد.

ریچارد استالمن برای تعریف دقیق آزادی نرم‌افزار، مجوز GPL (General Public License) رو طراحی کرد؛ مجوزی که اجازه می‌ده نرم‌افزارها آزاد باشن، اما تضمین می‌کنه همیشه آزاد بمونن. به‌عبارتی:

«تو آزادی که از این نرم‌افزار استفاده کنی، تغییرش بدی و به اشتراک بذاری، اما اگه تغییرش دادی، اون نسخه هم باید آزاد بمونه.»

GPL (General Public License)
GPL (General Public License)

این مجوز تأثیر عظیمی در شکل‌گیری پروژه‌هایی مثل لینوکس، گنوم، وردپرس ، VLC، Blender، GIMPو هزاران پروژه دیگه گذاشت.

🧱 تولد اکوسیستم لینوکس

از اون به بعد، توسعه‌ی لینوکس فقط دست لینوس نبود. صدها و هزاران نفر از سراسر جهان بهش پیوستن.
ابزارها، اپلیکیشن‌ها، محیط‌های دسکتاپ (مثل GNOME و KDE)، بسته‌بندی نرم‌افزار، و توزیع‌های مختلف شکل گرفتن.

همه این‌ها با یک ایده‌ی ساده شروع شد:

"فقط برای تفریح."

پروژه‌ای که با یک ایمیل ساده از یک دانشجوی فنلاندی شروع شد، امروز به ستون فقرات بسیاری از تکنولوژی‌های جهان تبدیل شده.
از سرورهای بزرگ گرفته تا گوشی‌های اندرویدی، از سوپرکامپیوترها تا اینترنت اشیاء (IoT) — لینوکس همه‌جا هست.

اما مسیر رسیدن به این نقطه، فقط در کدنویسی هسته و ابزارهای خط فرمان خلاصه نمی‌شه.

کاربران، به چیزی فراتر نیاز داشتن.
آن‌ها می‌خواستند با رایانه‌هایشان ارتباطی دیداری، ساده و لذت‌بخش داشته باشند.

و همین شد آغاز یکی از مهم‌ترین بخش‌های تاریخ لینوکس:

محیط‌های دسکتاپ گرافیکی — و در رأس آن‌ها، پروژه‌ای به نام GNOME

در پست بعدی، وارد دنیای گنوم میشم
از فلسفه طراحی اون تا اپلیکیشن‌ها و افزونه‌هایی که دسکتاپ لینوکس رو زنده، شخصی‌سازی‌پذیر و امروزی می‌کنن.

گنو لینوکسلینوکسگنونرم افزار آزادماجراجویی
۲
۰
MMETehrani
MMETehrani
شاید از این پست‌ها خوشتان بیاید