پروژه گنو
پروژه گنو (به انگلیسی: GNU Project) یک پروژه نرمافزار آزاد و همکاری جمعی است که در سال ۱۹۸۴ میلادی در اِمآیتی آغاز شد. این پروژه با هدف تولید نرمافزار آزاد برای سیستمعامل گنو ایجاد شد که توسعهٔ آن در سپتامبر سال ۱۹۸۳ میلادی آغاز شده بود. گنو امکان آزاد بودن و محدود نبودن توسط تولیدکنندگان نرمافزار را فراهم میکند. هر برنامهنویسی اجازهٔ دسترسی به کدهای منبع توسط پروژهٔ گنو را دارد.
در حال حاضر کار اصلی پروژهٔ گنو توسعهٔ نرمافزار، ایجاد کمپهای سیاسی و آگاهی دادن مردم دربارهٔ خطر نرمافزارهای انحصاری است.
آغاز پروژه
در هنگام آغاز پروژه آنها ایمکس یک ویرایشگر متن نوشتهشده با لیسپ، یک اشکالیاب، یک تولیدکننده تجزیهکنندهٔ سازگار با yacc و یک پیونددهنده را در اختیار داشتند.[1] آنها یک هستهٔ اولیه داشتند که به بروزرسانی بیشتری نیاز داشت. وقتی که هسته و کامپایلر تمام شد، گنو قابلیت استفاده برای توسعهٔ نرمافزار را داشت. هدف اصلی ساخت نرمافزارهای دیگر که شبیه به یونیکس شود، بود. گنو قابلیت اجرای نرمافزارهای یونیکس را داشت اما دقیقاً مثل آن نبود. استفاده از نامهای طولانیتر برای فایلها، شمارهٔ نسخه برای فایلها و سیستم فایل پایدارتر از ویژگیهای گنو نسبت به یونیکس بود. بیانیه گنو برای جذب بیشتر حمایتکنندگان و شرکت در نوشتن نرمافزارها توسط دیگران، نوشتهشد. برنامهنویسان تشویق میشدند که هر قسمتی که آنها به آن علاقه دارند را انتخاب کنند. مردم میتوانستند کمک مالی، قطعات رایانه یا حتی کمک در نوشتن کد در پروژه را انجام دهند.
بیانیه گنو
بیانیهٔ گنو توسط ریچارد استالمن برای بدست آودن حمایت افراد بیشتر از پروژهٔ گنو نوشتهشد. او بیان کرد که چرا پروژهٔ گنو را آغاز کردهاست و در مورد سؤالهایی که امکان داشت حمایتکنندگان در ذهنشان دربارهٔ پروژه ایجاد شود، پاسخ داد. بیانیه با جواب به این سؤال که چرا و چگونه پروژه گنو در دسترس خواهد بود آغاز میشود و در ادامه به ایرادات و مخالفتهایی که به این پروژه ممکن است ایجاد شود پاسخ میدهد.[1]
فلسفه و مبارزه عملی
اگرچه اکثر پروژهٔ گنو دربارهٔ مسائل فنی و نرمافزار است اما دارای بُعدهای اجتماعی، اخلاقی و سیاسی نیز هست. این پروژه به غیر از تولید نرمافزار و اجازهنامه، دارای تعداد بسیار زیادی نوشتهٔ فلسفی است،[2] که اکثر آنها توسط ریچارد استالمن نوشته شدهاست.
مشارکت
پروژهٔ گنو به برنامهنویسان اجازهٔ ساخت و مشارکت در نرمافزار آزاد را میدهد.
نرمافزار آزاد
پروژهٔ گنو یک نرمافزار آزاد است و از نرمافزارهای آزاد استفاده میکند. نرمافزار آزاد (بر اساس تعریف بنیاد برنامههای آزاد) برنامهای است که چهار آزادی زیر را برای کاربر فراهم میکند:
- آزادی استفاده از برنامه برای هر هدفی (آزادی شماره ۰)
- آزادی یادگیری چگونگی کار کردن برنامه و استفاده از آن برای برنامهٔ دیگری (آزادی شماره ۱) توجه کنید که برای این آزادی در دسترس بودن کد منبع برنامه نیاز است.
- آزادی انتشار برنامه به صورت دوباره (آزادی شماره ۲)
- آزادی تغییر دادن برنامه و امکان انتشار دادن آن با همگان (آزادی شماره۳) برای این آزادی دسترسی به کد منبع برنامه نیاز است.
کپیلفت
کپیلفت تعریفی است که از نرمافزارهای آزاد در میان برنامهنویسان حمایت میکند و اجازه نمیدهد که نرمافزاری آزاد تبدیل به نرمافزار غیرآزاد شود.
توسعه سیستمعامل
اولین هدف پروژهٔ گنو ساخت یک سیستمعامل آزاد بود. در سال ۱۹۹۲ تمام قسمتهای سیستمعامل گنو به غیر از هسته هرد کامل شدهبود. هسته لینوکس، که پروژهای مستقل توسط لینوس توروالدز در سال ۱۹۹۱ بود، آخرین قسمت سیستمعامل گنو را کامل کرد و در سال ۱۹۹۲ نسخهٔ ۰٫۱۲ آن تحت اجازهنامه جیپیال منتشر شد. هسته لینوکس و گنو با یکدیگر نخستین سیستمعامل آزاد را ساختند. اگرچه هستهٔ لینوکس قسمتی از پروژهٔ گنو نبود، اما آن توسط جیسیسی و ابزارهای برنامهنویسی گنو گسترش یافت.[3]
پروژههای مهم
از اواسط دههٔ ۱۹۹۰ به بعد، شرکتهای زیادی بر روی نرمافزارهای آزاد سرمایهگذاری کردند، بنیاد نرمافزار آزاد تمام سرمایهٔ خود را برای حمایت سیاسی و قانونی برای توسعهٔ نرمافزار آزاد گذاشت. توسعه نرمافزار از آن موقع به بعد بیشتر به نگهداری از پروژههای موجود شد و پروژههای جدید موقعی شروع میشدند که جامعه نرمافزار آزاد احساس خطر میکرد. یکی از پروژههای مشهور و معروف گنو، کامپایلر گنو سی است، که در اکثر سیستمهای یونیکس و شبه-یونیکس و همچنین آیفون و آیپد به عنوان کامپایلر استاندارد انتخاب شدهاست.
گنوم
یکی از پروژههای معروف میزکار گنوم است. توسعهٔ این میزکار توسط پروژهٔ گنو، به دلیل وجود میزکار کیدیئی که در حال معروف شدن بود، آغاز شد. برای استفاده از میزکار کیدیئی کاربران مجبور بودند نرمافزار انحصاری بر روی سیستم خود نصب کنند. برای جلوگیری از اینکه کاربران نرمافزار انحصاری بر روی سیستم خود نصب نکنند، گنو دو پروژه را به صورت همزمان آغاز کرد. یکی از آنها هارمونی بود. این پروژه سعی بر جایگزینی قسمتهای غیرآزاد کیدیای که به آن وابسته بود، با نرمافزارهای آزاد داشت. آن پروژهٔ دیگر گنوم بود که از دید دیگری به این موضوع نگاه میکرد. هدف این پروژه جایگزینی میزکار کیدیای با میزکار دیگری بود که به نرمافزارهای انحصاری وابسته نباشد. پروژهٔ هارمونی پیشرفت آنچنانی نداشت اما توسعهٔ گنوم خیلی خوب انجام میشد. در نهایت قسمت انحصاریای که پروژهٔ کیدیای به آن وابسته بود (کیوت)، به عنوان نرمافزار آزاد منتشر شد.[4]
گینش
یکی دیگر از پروژهها گینش بود، نرمافزاری که قابلیت اجرای محتویات قالب ادوبی فلش را داشت. این پروژه اولویت بالایی نزد گنو داشت، زیرا دیده میشد افرادی که سیستمعامل آزاد نصب میکنند، از یک مرورگر آزاد نیز استفاده میکنند اما مجبور بودند برای استفاده از قالب انحصاری شرکت ادوبی از نرمافزار انحصاری استفاده کنند.
جستارهای وابسته
منابع
- Wardrip-Fruin, Noah, and Nick Montfort. "The GNU Manifesto." The NewMediaReader. Cambridge, Mass. : MIT, 2003. 545-550. Print.
- فلسفه پروژهٔ گنو
- What would you like to see most in minix? Linus Benedict Torvalds (Aug 26 1991, 2:12 am) - comp.os.minix | Google Groups
- ریچارد استالمن (۹ می ۲۰۰۰). «Stallman on Qt, the GPL, KDE, and GNOME». دریافتشده در ۱۸ ژوئیه ۲۰۱۰.
مشارکتکنندگان ویکیپدیا. «GNU Project». در دانشنامهٔ ویکیپدیای انگلیسی، بازبینیشده در ۱۰ ژوئیه ۲۰۱۰.