رفتن به مطلب
انجمن پی سی دی
aminomi

انقلاب در سیستم عامل، داستان ظهور گنو/لینوکس

پست های پیشنهاد شده

gnu-linux.jpg

 

 

گنو چیست؟ تعری?? نرم‌ا??زار آزاد چیست؟ گنو چه ت??اوتی با لینوکس دارد؟ گنو/لینوکس چه ??رقی با لینوکس دارد؟ اصلا چطور لینوکس شکل گر??ت؟ مجانی با آزاد چه ??رقی می‌کند؟ در این مقاله سعی می‌کنیم به زبانی ساده‌، مروری بر شکل گیری گنو/لینوکس و انقلابی که در دنیای سیستم‌عامل‌ها به راه انداخت، داشته باشیم. با ما همراه باشید تا در کنار پاسخ به پرسش‌های مطرح شده با ??لس??ه‌ی ارزشمند گنو که توسط استالمن ارائه شد نیز آشنا شویم.

 

گنو/لینوکس چیست؟

 

گنو/لینوکس سیستم عاملی است که توسط هزاران برنامه نویس از اقصی نقاط دنیا توسعه داده می‌شود، گنو/لینوکس اغلب به دلیل هسته‌ی خود یعنی لینوکس به شهرت رسیده است. این سیستم‌عامل از سال‌ها قبل به عنوان تهدیدی برای ویندوز مایکروسا??ت مطرح شد و با توجه به امکانات خاصی که در اختیار کاربران قرار می‌داد، توانست در برخی از زمینه‌ها سیستم عامل ویندوز مایکروسا??ت را بطور کامل از گردانه رقابت خارج کند. گنو/لینوکس به دلیل سرعت، امنیت، رایگان بودن و از همه مهم‌تر متن-باز و آزاد بودن به سرعت مورد توجه کاربران مختل?? قرار گر??ت. برای اینکه بدانید گنو/لینوکس چیست، ابتدا باید بدانید که سیستم عامل چیست، سیستم عامل در واقع نرم ا??زاری است که ارتباط بین سخت ا??زار و کاربر را برقرار می‌کند. در واقع بسیاری از کاربران حتی ارتباط زیادی با خود سیستم عامل‌ها ندارند و بیشتر است??اده آن‌ها با نرم ا??زارهایی است که بر روی سیستم عامل اجرا می‌شوند. پس سیستم عامل بستری را ??راهم می‌کند تا برنامه‌ها به راحتی اجرا شوند و سرویس‌ها مورد نظر خود را به کاربران ارائه کنند. لینوکس سیستم‌عاملی است که قادر است بر روی پردازنده‌های مختل?? مبتنی بر معماری ARM یا x86 اجرا شود. این بدین معناست که هسته‌ی لینوکس بعنوان زیرساخت سیستم‌عامل (اندروید، گنو/لینوکس و...) می‌تواند نه تنها روی کامپیوترهای مختل?? اجرا شود بلکه امکان نصب و است??اده از آن بر روی انواع مختل?? ابزارهای الکترونیکی از ساعت هوشمند گر??ته تا تل??ن، تبلت، دستگاه‌های غول پیکر صنعتی و... وجود دارد. در حقیقت «لینوکس» کرنل یا هسته‌ای است که سیستم‌عامل‌های مختل??ی نظیر گنو/لینوکس و اندروید را نیرو می‌بخشد. در هر حال برای سادگی بیشتر، معمولا در بسیاری از مجامع از گنو/لینوکس نیز با همان نام «لینوکس» یاد می‌شود.

 

 

اما لینوکس چطور شکل گر??ت؟

 

یونیکس توسط ۲ مهندس شرکت AT&T با نام‌های کن تامپسون و دنیس ریتچی تولید شد و در سال ۱۹۷۰ منتشر گردید. یونیکس در آغاز به زبان اسمبلی نوشته شد اما در سال ۱۹۷۳ به طور کلی به زبان سی بازنوشته شد. کمی بعد آن‌ها زبان برنامه نویسی C را نیز به آن اضا??ه کردند و به دلیل انطباق‌پذیری بسیار بالای آن به سرعت بین مراکز آموزشی و تجارت‌های مختل?? توزیع شد و مورد است??اده قرار گر??ت. AT&T کمی بعد گواهی خاصی را برای است??اده از سیستم عامل یونیکس تعری?? کرد که شرکت‌ها برای است??اده از آن مجبور به رعایت آن و پرداخت هزینه می‌شدند؛ از طر??ی کد سیستم عامل یونیکس نیز در اختیار دیگران قرار نمی‌گر??ت. ماجرا از همین جا شروع شد و شخصی به نام ریچارد استالمن، دانشجوی دکترای آن زمان در دانشگاه MIT با ت??کر و ??لس??ه خاص خود از این اقدام AT&T خوشش نیامد و گروهی به نام GNU (بخوانید «گنو») را با هد?? ساخت سیستم عامل آزاد شبیه به یونیکس تشکیل داد.

 

richardstallman-31.jpg

ریچارد استالمن در MIT

 

استالمن در سال ۱۹۷۱ وارد آزمایشگاه هوش مصنوعی MIT می‌شود. او این آزمایشگاه را اجتماع شکو??ای هکرها می‌نامد، ا??رادی که عاشق برنامه نویسی بودند و علاقه شدیدی به کش?? روش‌های جدید برای کار با کامپیوتر داشتند. آن‌ها یک سیستم عامل کامل به نام گنو را درست کرده بودند، که تمام آن در همان آزمایشگاه نوشته بود. استالمن عضو همان تیم شد تا به ارتقای سیستم عامل کمک نموده و قابلیت‌های تازه‌ای را به آن اضا??ه کند. آزمایشگاه MIT و آن تیم دقیقا همان جایی بود که استالمن عاشق کار کردن در آن بود. آن‌ها عنوان سیستم عامل خود را Incompatible Timesharing System یا سیستم اشتراک زمانی ناسازگار نامیدند.

 

 

اولین مشکلی که در آزمایشگاه MIT برای آن‌ها به وجود آمد ??شارهای خارجی برای است??اده از کلمه رمز عبور در دانشگاه بود. در آن زمان روی هیچ کدام از کامپیوترهای گروه رمز عبور وجود نداشت. استالمن می‌گوید که همگی آن‌ها هکرهای برجسته‌ای بودند که اعتقاد داشتند، رمز عبور (منظور حساب کاربری) راهی است که مدیران برای کنترل کاربران است??اده می‌کنند. به همین دلیل آن‌ها دوست نداشتند تا وارد این بازی شوند و توسط ادمین‌ها تحت کنترل قرار گیرند. ??لس??ه آن‌ها این بود که اگر کسی پشت هر کامپیوتری بنشیند باید بتواند هر کاری که دلش می‌خواهد را انجام بدهد و کسی که امروز پشت کامپیوتر نشسته نباید بتواند آمار کارهایی که شخص قبلی دیروز بر روی کامپیوتر انجام داده را کنترل کند.

 

Richard_Stallman_by_Anders_Brenna_01.jpg

 

 

وقتی مدیران شبکه بر روی یکی از کامپیوترهای MIT رمز عبور گذاشتند، استالمن و دوستانش از این موضوع اصلا خوششان نیامد و تصمیم گر??تند تا همه چیز را هک کنند. اینجا بود که آنها توانستند رمزگذاری پایگاه داده محل ذخیره رمزهای عبور را هک کنند. سپس آن‌ها به تمام ا??رادی که در کامپیوترهای خود رمز عبور وارد می‌کردند چنین پیغامی را ارسال کردند: «می‌بینم که شما ??لان رمز عبور را انتخاب کرده‌اید! نظرتون چیه اگر به جای وارد کردن رمز عبور ??قط Enter را ??شار دهید؟ این کار هم ساده‌تره و هم آسان‌تر!» در واقع استالمن و دوستانش تنها می‌خواستند تلویحا به این موضوع اشاره کنند که امنیت سیستمی که ادمین‌های MIT پیاده کردند در حد شوخی است. استالمن با این روش توانست یک پنجم کاربران آزمایشگاه را به گروه خود ملحق کند و همه آن‌ها به جای رمز عبور ??قط از کلید Enter است??اده می‌کردند.

 

 

در اواخر دهه ۷۰و اوایل دهه ۸۰ میلادی با ا??زایش تعداد کاربران کامپیوتر و است??اده آن در مکان‌های مختل??، تولیدکنندگان نرم ا??زار نیز تصمیم گر??تند تا نرم ا??زارهای خود را بصورت بسته ارائه کنند و اجازه مشاهده کد محصولات خود را به دیگران ندهند. دیگر نمی‌شد بر روی نرم ا??زار تغییرات دلخواه را اعمال کرد. مایکروسا??ت در این زمینه از همه شرکت‌ها هم بزرگ‌تر بود و هم بیشتر دست به این کار می‌زد.

 

 

gnulaptopدر اوایل دهه‌ی ۸۰ سیستم عامل‌ها خصوصی شدند و کاربر در زمان خرید متعهد می‌شدند تا سیستم عامل خریداری شده را در اختیار دیگران قرار ندهد. استالمن این موضوع را مانع پیشر??ت می‌دانست و بطور کامل با قوانین حقوق معنوی به آن شکل مخال?? بود و آن‌ها را مانع پیشر??ت و مشارکت در امور می‌دانست. اینجا بود که استالمن بنیاد نرم ا??زارهای آزاد (Free Software Foundation) را شکل داد که یکی از اهدا?? آن ساخت یک سیستم عامل جدید بود. ت??کر اون به این شکل بود که سیستم عاملی بسازد که بصورت آزاد در اختیار دیگران قرار بگیرد و ا??رادی که از آن است??اده می‌کنند را تشویق کند تا آن را در اختیار اطرا??یان خود قرار دهند. به این ترتیب کاربران می‌توانستند از سیستم عاملی است??اده کنند که آزاد است و توزیع آن به دیگران نیز آزادانه انجام می‌شود و در عین حال سطوح دیگری از آزادی را نیز بر این بستر ??راهم می‌کرد.

 

 

پروژه در ژانویه ۱۹۸۴ کلید می‌خورد، درست همان زمانی استالمن از شغل خود در دانشگاه MIT استع??ا می‌دهد و مقطع دکترا را رها می‌کند. او در همین زمان پروژه GNU (بخوانید گنو) را تعری?? می‌کند. استالمن حتی نام گنو را نیز نوعی هک یا نام برگشتی می‌داند. GNU مخ???? GNU's Not Unix است به معنی: گنو یونیکس نیست! در واقع حر?? G در این نام گذاری، خود GNU است که به شکل نامتعار??ی است??اده شده است. هد?? استالمن آن بود که سیستم عاملی را درست کند که شبیه به یونیکس باشد، اما خود یونیکس نباشد! برخی بر این باورند که GNU یا بعدها گنو/لینوکس در واقع برپایه یونیکس ساخته شده‌ و هسته آن یونیکس است. اما این موضوع به هیچ وجه درست نیست و تیم GNU از ص??ر یک سیستم عامل را نوشته‌اند. در واقع آن‌ها اصلا به کدهای یونیکس دسترسی نداشته‌اند. آن‌ها بدنبال ساخت یک سیستم عامل شبیه به یونیکس ولی کاملا آزاد بوده‌اند. در آن زمان یونیکس یک محصول خصوصی بود و اجازه است??اده از آن به صورت اشتراکی وجود نداشت، یعنی اگر آن را می‌خریدید اجازه اشتراک گذاشتن سیستم عامل با دیگران را نداشتید.

 

 

درست زمانی که استالمن در حال ساخت سیستم عامل گنو بود، دانشمندان دانشگاه کالی??رنیا در برکلی در حال ساخت یک سیستم عامل آزاد دیگر با نام Unix Berkely یا BSD بودند. این سیستم عامل بر خلا?? گنو بر پایه هسته‌ی یونیکس شرکت AT&T در حال توسعه بود. اما کمی بعد AT&T از دانشگاه برکلی شکایت کرد و آن‌ها برای ادامه کار BSD به مشکل بر خوردند. همین جا بود که گروهی از تیم توسعه دهنده BSD نسبت به ساخت سیستم عامل جدید و مستقل از یونیکس با نام Free BSD اقدام کردند که البته شبیه به یونیکس بود و حتی قادر به اجرای اپلیکیشن‌های یونیکس نیز بود. جالب اینجاست که دانشگاه برکلی در این زمان نمی‌دانست که گروه گنو نیز در حال توسعه و ساخت سیستم عامل مشابهی است. FreeBSD بصورت کاملا آزاد است و هر کسی می‌تواند از آن در نرم ا??زار خود است??اده کند. این سیستم توسط اپل در سیستم عامل OS X و iOS و بسیاری از کمپانی‌های دیگر مانند سیسکو، VMWare و غیره مورد است??اده قرار گر??ته است، اما چرا اسم BSD کمتر به گوش می‌خورد و در عوض لینوکس را تقریبا همه می‌شناسند یا حداقل نام آن را شنیده‌اند؟ این در حالی است که سیستم‌عامل‌های اپل و شرکت‌های نام‌برده‌ شده که بر پایه‌ی BSD ساخته‌اند بسیار معرو?? و مشهور هستند. پاسخ در ??لس??ه‌ی عمیق استالمن نه??ته است .

 

gnulaptop.jpg

 

 

یونیکس علاوه بر هسته اصلی، شامل چند برنامه مجزا بود که با یکدیگر به خوبی ارتباط داشتند. به این ترتیب تیم گنو نیز به دو دسته تقسیم شد: یک دسته بر روی هسته اصلی سیستم عامل کار کردند و گروه دیگر نیز تک تک برنامه‌های موجود در یونیکس را برای این سیستم‌عامل طراحی و از نو تولید نمودند. این کار تا سال ۱۹۹۱ طول کشید و در آن زمان تقریبا تمام برنامه‌های موجود برای یونیکس در گنو نیز ساخته شدند.

 

 

برای اینکه یک سیستم عامل به خوبی کار کند، ما نیاز به یک هسته (Kernel) اصلی داریم که ارتباط بین سخت ا??زار و نرم ا??زارها را برقرار می‌کند، سپس یک کامپایلر زبان C نیز برای اجرای کدها، نیاز است تا بستری ??راهم شود که دیگران نیز نرم ا??زارهای جدیدی برای سیستم عامل تولید کنند و در نهایت به یک مجموعه از نرم ا??زارهای حیاتی مانند دیباگر، ویراشگر متن، کلاینت ایمیل و غیره نیاز است تا نیازهای کاربران را پاسخ گو باشد. تمام این برنامه‌ها توسط گروه گنو به بهترین شکل ممکن طراحی و تولید شدند.

hitflip-gnu2-800x600.jpg

 

 

از آنجایی که تمام نرم ا??زارهای نوشته شده در پروژه گنو بصورت آزاد و متن-باز (متن‌باز بودن از شرایط آزاد بودن است اما برعکس این مدعا صادق نیست و نرم‌ا??زارهای متن باز می‌توانند آزاد نباشند) ارائه می‌شدند، حتی ا??رادی که از سیستم عامل گنو است??اده نمی‌کردند باز هم نرم‌ا??زارهای گنو را بر روی دستگاه خود نصب می‌کردند؛ چون این نرم‌ا??زارها نه تنها بسیار خوب طراحی و نوشته شده بودند بلکه کاملا آزاد بودند و هر کسی می‌توانست هر نوع تغییری را که بخواهد بر روی آن‌ها اعمال کند.

 

 

ولی بخشی از گروه گنو که بر روی هسته سیستم عامل کار می‌کردند روش پیچیده‌ای را (میکروکرنل) برای تولید سیستم عامل در نظر گر??تند که در نهایت پروژه آن‌ها انقدر خوب پیشر??ت نکرد و نتوانست مورد قبول توسعه دهندگان قرار گیرد. این روش توسعه که تصور می‌شد آینده‌ی سیستم‌عامل‌ها باشد چنان توسعه‌ی دشواری داشت که هنوز هم به نتیجه‌ی نهایی نرسیده است.

 

 

در همین حول و حوش شخص دیگری با نام لینوس توروالدس از هلسینکی، پایتخت ??لاند، بصورت مستقل و از همه مهمتر به تنهایی در حال توسعه یک هسته سیستم عامل بود که بعدها لینوکس نامیده شد. جالب است بدانید که او کد سیستم عامل را با کامپایلر C گروه گنو و در سیستم عامل MINIX توسعه داده بود. او هسته سیستم عامل خود را ترکیبی از نام خود بعلاوه x از یونیکس انتخاب کرد و LINUX نامید. او در کتاب خود با نام Just for Fun نوشته است که ناگهان متوجه شدم که هسته یک سیستم عامل را نوشته‌ام:

 

 

درود به هر کس که آن بیرون از مینیکس است??اده می‌کند. من هم‌اکنون روی سیستم‌عاملی (رایگان) برای رایانه‌های (AT ۳۸۶(۴۸۶ کار می‌کنم (??قط برای سرگرمی؛ مانند پروژهٔ گنو بزرگ و حر??ه‌ای نیست). از ماه آوریل کار را آغاز کرده‌ام و هم‌اکنون این سیستم‌عامل آماده‌است و کار می‌کند. دوست دارم از دیدگاه دیگران در مورد سیستم‌عاملم با خبر شوم. چه آنان که مینیکس را دوست دارند و چه آنان که دوست ندارند. چرا که سیستم‌عامل من تا حدی شبیه به مینیکس است.

در حال حاضر (۱٫۰۸)bash و(۱٫۴۰) gcc را بر روی آن دارم و چیزهای دیگری که به نظر می‌رسد همه درست کار می‌کنند. این بدان معناست که طی چند ماه آینده چیز به‌دردبخوری ??راهم خواهم کرد و دوست دارم بدانم مردم بیشتر چه امکاناتی لازم دارند. به هر پیشنهاد و نظری خوش‌آمد می‌گویم اما قول نمی‌دهم که آن را انجام دهم!

Linus-torvalds_1100x620.jpg

لینوس توروالدس

 

لینوس توروالدس ابتدا سیستم عامل خود را براساس گواهی اختصاصی خود عرضه کرد که طی آن امکان است??اده از لینوکس در هیچ ??عالیت تجاری داده نمی‌شد. اما توروالدس می‌دانست که سیستم عامل?? خالی، به درد کمتر کسی می‌خورد و از این رو بسته‌های نرم ا??زاری گروه گنو که دارای گواهی GPL بودند را به آن اضا??ه کرد و در قالب یک سیستم عامل عرضه نمود. او در سال ۱۹۹۲ تصمیم گر??ت که خود هسته سیستم عامل را نیز براساس گواهی GPL عرضه کند. نام‌های مختل??ی برای محصول نهایی ترکیبی گنو + لینوکس در نظر گر??ته شده است که در ویکی‌پدیا می‌توانید شرح آن را بخوانید، اما در نهایت نام انتخابی برای این مجموعه‌ی ارزشمند «گنو/لینوکس» بود.

 

 

توروالدس همواره به عنوان یکی از نخبه‌های دنیای کامپیوتر شناخته می‌شود، چرا که او به تنهایی هسته‌‌ی سیستم عاملی را نوشته و پشتیبانی می‌کند که کمتر گروه بزرگی از برنامه نویسان قادر به تولید آن هستند. حتی برخی از کمپانی‌هایی که از میانه راه تصمیم به توسعه مستقل لینوکس گر??تند کمی بعد متوجه شدند که نمی‌توانند به خوبی توروالدس این کار را انجام دهند و تا به امروز خود لینوس است که بهترین بروز رسانی و ارتقاء هسته لینوکس را انجام داده است. اما مهم‌ترین دلیل مو??قیت و محبوبیت و بقای لینوکس، گواهی GPL و ??لس??ه‌ای است که استالمن آن را بنا نهاد، پس بهتر است به تعری?? GPL بپردازیم:

 

 

GPL چیست و چگونه باعث بقای گنو/لینوکس شد ؟

 

استالمن برای اینکه آزاد بودن نرم ا??زارهای نوشته شده توسط گروه GNU را ح??ظ کند، یک اقدام حیاتی و بسیار مهم را انجام داد که به نوعی باعث دوام و قوت بخشیدن به این پروژه شد. اقدامی که دنیای نرم ا??زارهای آزاد و لینوکس را تحت شعال خود قرار داد. اگر بخواهیم تعری?? ساده‌ای برای GPL داشته باشیم می‌توانیم آن را اینگونه بیان کنیم: نرم‌ا??زاری که تحت گواهی GPL منتشر می‌شود باید شرایط زیر را داشته باشد:

 

 

آزادی برای اجرای برنامه برای هر منظوری (آزادی ۰)

آزادی برای مطالعه و بررسی چگونگی عملکرد برنامه و تغییر آن برای نیاز خود (آزادی ۱). دسترسی به کد منبع یک پیش‌شرط برای این آزادی است.

آزادی برای توزیع مجدد کپی‌هایی از آن، بنابراین شما می‌توانید به همسایگان خود کمک کنید (آزادی ۲)

آزادی برای بهبود برنامه و انتشار این تغییرات برای عموم (تحت همان مجوز GPL)، بنابراین تمام جامعه از آن بهره می‌برند (آزادی ۳). دسترسی به کد منبع یک پیش‌شرط برای این آزادی است.

آزاد بودن به معنی مجانی بودن نیست یعنی امکان این وجود دارد که نرم‌ا??زار آزاد باشد اما بابت خرید آن یا سرویس ارائه شده‌ برای آن، مبلغی دریا??ت شود. اما با این حال باز هم کد نرم‌ا??زار باید بصورت کاملا باز در اختیار مشتری قرار گیرد. بر اساس آزادی سه، هر شخصی می‌تواند ک??د?? نرم‌ا??زار تحت گواهی GPL را تغییر داده و حتی با نام جدیدی منتشر کند. اما نرم‌ا??زار جدید نیز باید حتما تحت گواهی GPL منتشر شود. یعنی دیگران نیز می‌توانند متن برنامه‌ی جدید را تغییر داده و با نام خود منتشر کنند.

GNU_Tux_Revolution_-_white_background_-1280x1024.jpg

 

 

قانون آزادی سوم در گواهی GPL همان راز ماندگاری تمام پروژه‌های متن باز تحت این گواهی است و عدم وجود آن در FreeBSD راز پنهان شدن این سیستم‌عامل ارزشمند است. هسته‌ی FreeBSD چیزی از لینوکس کم ندارد، اما به دلیل عدم وجود ??لس??ه‌ی مشابه‌ی GPL شرکت‌های مختل?? از جمله اپل، هسته‌ی FreeBSD را برای تولید سیستم‌عامل‌های Mac OS X و iOS مورد است??اده قرار داده و کمی آن را تغییر داده و با نامی جدید و در قالب محصولی نو، معر??ی کردند و هیچ نامی از FreeBSD به میان نیاوردند. از همه‌ی این‌ها بدتر آنکه، محصول ساخته‌‌شده‌ی بر پایه‌ی FreeBSD در قالب یک نرم‌ا??زار بسته‌ و انحصاری روانه‌ی بازار می‌شوند؛ نرم‌ا??زاری که نه‌تنها دیگران به کد آن دسترسی ندارند بلکه اجازه‌ی ویرایش و است??اده از آن برای مصار?? دیگر را نیز ندارند. در گواهی GNU شما می‌توانید کد شخص دیگری را تغییر دهید، اما حق ندارید نام توسعه‌دهندگان قبلی را مخ??ی کنید یا محصول را بدون ??راهم آوردن آزادی‌ها مجددا عرضه کنید.

 

 

با توجه به دیدگاه بنیاد نرم ا??زارهای آزاد (FSF)، هد?? GPL د??اع از آزادی‌های برنامه نویسان، توسعه دهندگان و کاربران است. نویسندگان پروانه بیش از اینکه به قطعیت استدلالشان در دادگاه ??کر کنند در پی انتقال م??هوم مورد نظرشان به کاربران این گواهی‌اند. وقتی نرم ا??زاری با پروانه GPL منتشر می‌شود ??ضایی چند وجهی در اطرا?? آن شکل می‌گیرد . از یک طر?? امکان بی پایان توزیع و ارتقاء آن پدید می‌آید، از طر?? دیگر همواره نرم ا??زار خصوصیات نرم‌ا??زار آزاد را با تعری?? FSF (بنیاد نرم‌ا??زارهای آزاد) ح??ظ خواهد کرد. علاوه بر این، روح حاکم بر GPL ا??راد را تشویق می‌کند تا بجای جستجو در کارهای غلط دیگران، کار خود را درست انجام دهند و در اختیار بقیه ا??راد جامعه بگذارند. تمام این‌ها و مهم‌تر از همه روح انسانی و اخلاق گرای پروانه GPL می‌تواند دلایل محبوبیتش درمیان برنامه نویسان باشد.

 

 

ریچارد استالمن به عنوان یک ??یلسو??، یا به اعتقاد برخی پدر جنبش نرم‌ا??زارهای آزاد شناخته می‌شود. او همزمان با مدیریت ??عالیت‌های ساخت سیستم عامل گنو یک کار اساسی و ??وق العاده ارزشمند را انجام داد که شاید تمام پیشر??ت و توسعه لینوکس و اغلب پروژه‌های متن باز را سبب شد. استالمن همزمان با ساخت سیستم عامل آزاد گنو، زیربنای قانونی، ??لس??ی و ??ناوری مرتبط با جنبش نرم‌ا??زارهای آزاد را نیز خلق کرد. اگر زیربنایی قانونی ایجاد شده توسط استالمن وجود نداشت، لینوکس و به طور کامل آزاد و متن‌باز نیز جایگاه ??علی را نداشتند.

 

 

متن باز یا Open Source چیست؟

 

متن-باز یا اپن-سورس راهی است تا همه مردم بتوانند برای ساخت یک پروژه همکاری کنند و هرگز نگران مسائل و مشکلات حقوق معنوی آن پروژه نباشند. در حقیقت متن باز یک مدل توسعه است که توسط نرم‌ا??زارهای آزاد به کار گر??ته می‌شود. کد کامل نرم ا??زارهای متن-باز در اختیار عموم قرار می‌گیرد تا از آن است??اده کنند یا در بهبود پروژه به دیگر ا??راد درگیر آن کمک کنند. نرم‌ا??زارهای آزاد بطور قطع متن‌باز نیز هستند اما نرم‌ا??زارهای متن‌باز می‌توانند آزاد نباشند. ا??رادی که شاخه‌ی متن-باز را بصورت مستقل از م??هوم آزاد در دنیای نرم ا??زار ایجاد کردند، تنها به کارایی نرم ا??زار ??کر می‌کردند و تمایل نداشتند تا درگیر کش مکش‌های قانونی خرید یا نقض قوانین کپی رایت شوند. این مساله بدان دلیل بود که کارایی ??وق‌العاده‌ی مدل توسعه‌ی متن باز به اثبات رسیده بود اما درک ??لس??ه‌ی آزادی استالمن دشوار می‌نمود. هد?? آن‌ها از شکل گیری متن-باز آن بود که همه مردم بتوانند آزادانه و بدون هیج محدودیتی از نرم ا??زار ساخته شده است??اده نمایند.

 

 

تعری?? دیگری به نام Freeware در دنیای نرم‌ا??زار وجود دارد که بعضا با Free Software یا حتی Open Source اشتباه گر??ته می‌شود. Freeware به نرم‌ا??زار مجانی گ??ته می‌شود که هیچ‌کس جز تولید کننده‌ی آن حق ویرایش یا تغییر در نرم‌ا??زار را ندارد. هرچند نرم‌ا??زار مجانی است، اما نمی‌توان در آن تغییری ایجاد کرد. اما در نرم‌ا??زار آزاد یا متن‌-بازی که تحت گواهی GPL باشد، شما نه تنها می‌توانید در نرم‌ا??زار تغییر ایجاد کنید بلکه قادر خواهید بود تا بطور کامل به کد آن دسترسی داشته و بدانید درون نرم‌ا??زار چه می‌گذرد.

 

 

توزیع‌های لینوکس

 

از آنجایی که گنو/لینوکس برپایه‌ی گواهی GPL عرضه شده است. هر شخص یا مجموعه‌ای می‌تواند در این مجموعه تغییراتی ایجاد کرده و آن را در قالب یک محصول جدید اما مبتنی بر گواهی GPL عرضه کند. به این ترتیب صدها توزیع از لینوکس ایجاد شده که هر کدام توسط شخص یا گروه‌ خاصی از ا??راد توسعه داده می‌شوند. تمام این توزیع‌ها نیز آزاد و متن‌باز هستند و در توسعه‌ی آن‌ها ا??راد بسیاری مشارکت دارند. این توزیع‌ها شامل تعدادی نرم‌ا??زار سیستم و برنامه‌های کاربردی به همراه روالی مشخص برای نصب آن‌ها در رایانه هستند. توزیع‌ها معمولا برای منظورهای مختل??ی از جمله محلی‌سازی، پشتیبانی از یک معماری خاص، کاربردهای بی‌درنگ (real-time applications) و سامانه‌های توکار (embedded systems) به وجود می‌آیند. یک توزیع همه-منظوره معمولی شامل هسته‌ی لینوکس، کتاب‌خانه‌ها و ابزارهای گنو، پوسته‌های خط ??رمان، میزکار رابط گرا??یکی و انبوه بی‌شماری از نرم‌ا??زارهای کاربردی از مجموعه‌های اداری و سیستم پنجره‌ای ا??کس گر??ته تا م??سرها، ویرایشگرهای متن و ابزارهای علمی است. از جمله بزرگ‌ترین توزیع‌های لینوکس که خود مشتقات بسیاری دارند می‌توان به Debian، RedHat، OpenSuse و Arch اشاره کرد. جالب است بدانید که اندروید، محبوب‌ترین سیستم‌عامل موبایل دنیا نیز بر پایه‌ی لینوکس (کرنل) ساخته شده است.

 

 

لینوکس و گسترش عجیب آن در همه‌جا

 

رد‌هت که یکی از توزیع‌های گنو/لینوکس به شمار می‌رود از بیش ۳۰ میلیون خط کد تشکیل شده‌ است. براساس یک تحقیق برآورد شده‌ است که بر روی این توزیع نزدیک به ۸ هزار ن??ر-سال / کار گسترش انجام گر??ته‌ است. چنانکه این نرم‌ا??زار با روش‌های متعار?? خصوصی گسترش می‌یا??ت، هزینه گسترش‌اش در ایالات متحده با روش‌های گسترش متعار?? خصوصی بالغ بر ۱/۰۸ میلیارد دلار (با قیمت دلار سال ۲۰۰۰) می‌شد. بخش بزرگی از کد (۷۱٪) با زبان برنامه‌نویسی C نوشته شده‌ است؛ اما از بسیاری از زبان‌های دیگر همچون ++C، لیسپ، اسمبلی، پرل، ??رترن، پایتون و زبان‌های اسکریپت‌نویسی گوناگون است??اده شده‌ است. اندکی بیش از نیمی از خطوط کد، تحت مجوز عمومی گنو (جی‌پی‌ا??ل) هستند. هسته لینوکس ۲٫۴ میلیون خط کد دارد و ۸٪ کل کد رد‌هت را تشکیل می‌دهد.در پژوهشی جدید که بر روی توزیع گنو/لینوکس دبیان نسخه ۴٫۰ که در سال ۲۰۰۷ عرضه شده صورت گر??ت، مشخص شد این توزیع دارای نزدیک به ۲۸۳ میلیون خط کد بوده که تخمین زده می‌شود هزینه گسترش‌اش با روش‌های گسترش متعار?? خصوصی بالغ بر ۸٫۰۷ میلیارد دلار (با قیمت دلار سال ۲۰۱۳) و زمان مورد نیاز حدود ۷۳٫۰۰۰ ن??ر-سال می‌شود.

 

 

اگر لینوکس نبود

 

بدلیل پایداری و انعطا?? گنو/لینوکس، این سیستم‌عامل حضور پررنگی به عنوان سیستم‌عاملی برای کامپیوترهای سرور دارد. بر اساس آمار در سال ۲۰۰۸، از میان ۱۰ مورد از معتبرترین شرکت‌های هاستینگ دنیا، ۵ شرکت سیستم‌عامل گنو/لینوکس را در سرورهای وب خود بکار می‌گیرند. توزیع‌های لینوکس به طور گسترده‌ای به عنوان سیستم عامل در ابر رایانه‌ها و دیتاسنترها است??اده می‌شود: از نوامبر سال ۲۰۱۰، از ۵۰۰ سیستم برتر، ۴۵۹ مورد (۹۱٫۸ ٪) تحت اجرای توزیع‌های لینوکس هستند. از لینوکس همچنین بیشتر در سیستم‌های کارگذاشته است??اده می‌شود. رایگان، متن باز و آزاد بودن آن باعث می‌شود انتخابی ایده‌آل برای ابزارهایی مانند سیمپیوتر، رایانه‌ای که برای جمعیت کم درآمد کشورهای در حال گسترش طراحی شده، باشد. لینوکس با داشتن محیط‌های رومیزی مانند گنوم و KDE، رابط کاربری همچون اپل مکینتاش و مایکروسا??ت ویندوز را در کنار دیگر محیط‌های گرا??یکی و رابط خط ??رمان یونیکس-مانند سنتی‌اش، عرضه کرد تا کاربران معمولی نیز بتوانند از آن به عنوان جایگزین آزاد و رایگان ویندوز و OS X است??اده کنند. لینوکس به شکل خارق‌العاده‌ای طراحی شده است تا بر روی هر ابزاری از تل??ن هوشمند گر??ته تا سوپرکامپیوترها ??ارغ از نوع پردازنده‌ی آن به خوبی کار کند.

Linux_kernel_ubiquity.png

 

 

اکثر کش‌سرورهای دنیا مانند SQUID بر روی لینوکس کار می‌کنند. تقریبا تمام DNS سرورهای دنیا بر روی لینوکس راه‌اندازی شده‌اند که معرو??‌ترین آن‌ها BIND است. حدود ۸۰ درصد از وب‌سرورهای دنیا بر روی وب‌سرورهایی تحت لینوکس کار می‌کنند، وب‌سرورهایی همچون Apache یا Nginix. اکثر وب‌سایت‌های دنیا از دیتابیس‌های مبتنی بر لینوکس مانند MySQL بهره می‌برند. نرم‌ا??زارهای مدیریت دیتاسنترها نیز بر پایه‌ی لینوکس کار می‌کنند. اگر لینوکس نبود هزینه سرویس دهی سرورهای زومیت به شما عزیزان تا ۳ برابر ا??زایش می‌یا??ت.

 

 

دلیل همه این‌ها، هزینه‌ی بسیار پایین، سرویس‌های پایدار و ایمن، نیاز به منابع بسیار کم سخت‌ا??زاری، توسعه‌ سریع توسط میلیون‌ها برنامه‌نویس و از همه مهمتر پایداری، آزاد و متن باز بودن لینوکس است.

 

....

Zoomit

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال دیدگاه یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید دیدگاهی ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

×
×
  • جدید...