چند ماه پس از انتشار اولین نسخه لینوکس توسط لینوس توروالدس، او بهطور علنی با شخصی که کارش به شکلگیری اولیه این پروژه کمک کرده بود، جدال کرد. اگر با اصطلاحات آشنایی ندارید، عملکرد هسته لینوکس محور اصلی بحث بعدی بود؛ چون توروالدس و اندرو تاننبام بهطور بنیادین در مورد چگونگی طراحی این بخش هستهٔ سیستمعامل اختلاف نظر داشتند.
تاننبام استاد معتبر علوم رایانه، خالق مینیکس، و نویسندهٔ کتاب درسی پرکاربرد در طراحی سیستمعامل بود. توروالدس خود مینیکس را استفاده کرده بود و داستان خلق لینوکس و تبدیل آن به نرمافزار آزاد، بهطرز نزدیکی با سیستمهای شبیه یونیکس و ابزارهای توسعهٔ آن زمان مرتبط است. گروه خبرخوانی مینیکس نیز یکی از مکانهایی بود که توسعهٔ اولیه لینوکس در آن شکل میگرفت.
سپس، در ۲۹ ژانویهٔ ۱۹۹۲، تاننبام پیامی به comp.os.minix با موضوعی که نظر او را به وضوح نشان میداد، ارسال کرد.
پیامی که لینوکس را منسوخ خواند
«نوشتن هستهٔ یکپارچه در ۱۹۹۱ گامی عظیم به عقب به دههٔ هفتاد بود»

این پیام با عنوانی صریح و بیدروغ، «LINUX منسوخ است» منتشر شد.
استدلال تاننبام عمدتاً بر ساختار لینوکس متمرکز بود. لینوکس هستهٔ یکپارچهای داشت که بخشهای اصلی چون مدیریت حافظه، سیستمفایلها، شبکه و درایورهای دستگاه تقریباً همه درون هسته اجرا میشدند. مینیکس پیرو تفکر میکروهستهای بود و هستهٔ خود را بسیار کوچک نگه داشته و بیشتر سرویسها را به پردازشهای جداگانه میسپرد که با یکدیگر ارتباط برقرار میکردند.
تاننبام ترجیح واضحی برای این طراحی داشت. او میکروهستهها را پایهای پاکتر و قابلاعتمادتر برای سیستمعاملهایی میدید که باید در برابر سختافزار متغیر و پیچیدگی رو به رشد بقا یابند و بهحدی اطمینان داشت که «مباحثه اساساً تمام شده» و «میکروهستهها پیروز شدند».

نگرانی او فقط به معماری هسته محدود نبود. لینوکس ویژهٔ پردازندهٔ اینتل ۳۸۶ نوشته شده بود و توروالدس خوشحال بود هر ویژگی سختافزاری خاصی که مفید باشد را به کار ببرد. تاننبام این را شرطبندی پرخطری میدانست چون پردازندههای RISC در حال گسترش بودند و سیستمعاملی که کاملاً به یک خانواده پردازنده وابسته باشد، ممکن است وقتی دنیای سختافزار پیش میرود، دردسرساز شود.
در سال ۱۹۹۲، این مسأله بهراحتی جدی گرفته میشد. لینوکس هنوز نو بود، از برد سختافزاری محدودی پشتیبانی میکرد و هنوز قابلیت پرتابپذیریای که بعدها به یکی از نقاط قوتش تبدیل شد، نداشت. تاننبام استدلال میکرد هر کسی که به دنبال سیستمعامل آزاد شبیه یونیکس مدرن است، بهتر است به پروژهٔ میکروهستهٔ قابلپرتاب، که در آن زمان جینوی یکی از مسیرهای امیدبخش بود، ایمان داشته باشد.
توروالدس یک برتری داشت که تاننبام نمیتوانست رد کند
لینوکس از پیش کار میکرد

توروالدس حدود یازده ساعت بعد پاسخ داد و سعی نکرد لینوکس را بهعنوان پیروزی بزرگ نظریهٔ سیستمعامل جلوه دهد.
خب، با چنین موضوعی، مجبورم پاسخ دهم. عذرخواهی از کاربران مینیکس که بهاندازه کافی درباره لینوکس شنیدهاند. دلخوش میشدم که «طعمه را نادیده بگیرم»، اما … زمان برای شعلهور کردن جدی فرا رسیده!
پروژهٔ سیستمعامل جینوی هنوز هستهٔ قابلاستفادهای نداشت، در حالی که لینوکس میتوانست پیش از هر کس دانلود، کامپایل، تغییر، خراب، اصلاح و بهبود یابد. تاریخچهٔ ابزارهای جینوی که دور هستهٔ توروالدس شکل گرفت، همین دلیل است که گاهی لینوکس را جینوی/لینوکس مینامند، اگرچه امروزه اکثر مردم به سادگی آن را لینوکس میگویند.
توروالدس این برتری را در جملهای خلاصه کرد که زمانهاش به طرز شگفتآوری خوب بوده: لینوکس «به شدت در دسترس بودن کنونی برنده است». این در دسترس بودن به لینوکس اجازه داد تا کاربران و مشارکتکنندگان را جذب کند در حالی که بحثهای معماری هنوز داغ بود. مردم آن را روی سختافزار واقعی اجرا میکردند، باگها را گزارش میدادند، وصله میفرستادند، نرمافزارها را منتقل میکردند و بهتدریج دامنهٔ توانهای هسته گسترش مییافت.
اگر هستهٔ جینوی در بهار گذشته آماده بود، حتی پروژهام را آغاز نمیکردم: حقیقت این است که نه آماده بود و نه امروز هم نیست. لینوکس به شدت در دسترس بودن کنونی برنده است.
بحث در comp.os.minix روزها ادامه یافت؛ برنامهنویسان درباره کارایی، قابلیت انتقال، قابلیت اطمینان و بدهبستان میان هستههای یکپارچه و میکروکرنلها بحث میکردند. تاننباوم چند نسل سختافزاری جلوتر را در نظر داشت و میپرسید یک سیستمعامل چگونه باید در برابر تغییر ماشینها و افزایش انتظارات قابلیت اطمینان دوام بیاورد. در همان حال، توروالدز هستهای داشت که مردم میتوانستند همان هفته نصب کنند و به بهبود آن بپردازند.
کد قابلاجرا به لینوکس فضای رشد داد، در حالی که همه همچنان درباره ظاهر ایدهآل یک سیستمعامل بحث میکردند.
مشکل ۳۸۶ مشکل نماند
هسته وابسته به سختافزار سفر را یاد گرفت





نقد تاننباوم درباره قابلیت انتقال شاید همان بخشی از بحث ۱۹۹۲ باشد که از آن زمان بیشترین تغییر را کرده است، چرا که لینوکس چند دهه فرصت تکامل داشت.
لینوکس نخستین واقعاً به ۳۸۶ گره خورده بود و اگر همینطور میماند، هشدار تاننباوم فوقالعاده پیشگویانه به نظر میرسید. در عوض، توسعهدهندگان سالها تلاش کردند تا هسته را از مفروضاتی که پیرامون ماشین اصلی توروالدز شکل گرفته بود جدا کنند و آن را روی سختافزاری بیاورند که در آغاز پروژه تصور آن دشوار بود.
لینوکس اکنون معماریهایی شامل ARM، ARM64، PowerPC، RISC-V، s390 شرکت IBM، LoongArch و x86 را پشتیبانی میکند. چندتایی از این معماریها شباهت اندکی با ۳۸۶ی که در مرکز نقد تاننباوم قرار داشت دارند.
اندروید روشنترین نمونه کاربرد هسته لینوکس فراتر از رایانههای رومیزی است. اندروید از هسته لینوکس بهره میبرد و عمدتاً روی سختافزار مبتنی بر ARM اجرا میشود و لینوکس را در میلیاردها گوشی و تبلت جای میدهد. هسته همچنین در سرورها، تجهیزات شبکهای، سیستمهای نهفته، لوازم خانگی و کوهی از سختافزار تخصصی راه یافت که با رایانه رومیزیای توروالدز در ابتدا پیشِ رو داشت فاصلهی زیادی داشت.
لینوکس در نهایت به سرازیر دیگر طیف رایانش نیز رسید و از ۲۰۱۷ هر ماشین فهرست TOP500 سریعترین ابررایانههای جهان را بهکار انداخت.
قابلیت انتقال بیشک اهمیت داشت و موفقیت لینوکس تا حدی به این بستگی داشت که توسعهدهندگان سالها از عهده دقیقاً همان دسته مشکلاتی برآیند که تاننباوم دربارهشان هشدار داده بود. وابستگی نخستین هسته به ۳۸۶ به یکی از آن محدودیتها بدل شد که پروژه با مهندسی مستمر از آن رها شد تا جایی که شکایت اصلی دیگر شباهت کمی به لینوکسی داشت که امروز وجود دارد.
بحث قدیمی در ۲۰۰۶ بازگشت
یک جنگ onderneming ظاهراً کافی نبود

مکاتبات ۱۹۹۲ تا حد زیادی به این دلیل ماندگار شد که یوزنت رد پاپی بسیار خوبی به جا گذاشت. پستها بایگانی، نقلقول و در نهایت بازنشر شدند، از جمله در کتاب «منابع باز» در ۱۹۹۹ که کل بحث را بهطور غیرعادی آسان کرد دوباره به جریان بازگردد.
در ۲۰۰۶، تاننباوم مقالهای در مجله Computer با عنوان «آیا میتوانیم سیستمعاملها را قابل اعتماد و امن بسازیم؟» منتشر کرد. این بار تمرکز او بر قابلیت اطمینان و امنیت بود و استدلال کرد که ایزوله کردن اجزای سیستمعامل میتواند از این که یک گرداننده یا سرویس معیوب کل سیستم را از کار بیندازد جلوگیری کند. این نوع مهار خطا همواره یکی از قویترین استدلالها برای طراحیهای سبک میکروکرنلی بوده است.
فوراً مقاله را به بحث قدیمی لینوکس پیوند زدند. اسلشدات مبادلات ۱۹۹۲ را دوباره به سطح آورد، توروالدز دوباره وارد بحث شد، و تاننباوم بعداً پاسخی مستقل منتشر کرد.
تا ۲۰۰۶، لینوکس به موفقیتی عظیم تبدیل شده بود، اما نگرانیهای فنی پشت موضع تاننباوم تبخیر نشده بودند. میکروکرنلها و طراحیهای مرتبط همچنان مزیتهای واقعی در سیستمی به دست میآورند که ایزولهسازی، قابلیت اطمینان و مهار خطا اهمیت زیادی دارند.
ظهور لینوکس بخشی از بحث را بهطور قاطعانه حل کرد. معماری آن روشن مشخصاً فضای رشد فراوانی باقی گذاشته بود. بحث بزرگتر درباره چگونگی طراحی سیستمعاملها هرگز واقعاً از بین نرفت.
هسته «منسوخ» تقریباً همهجا گرفت
بنبست شلوغ شد

رایانه رومیزی سنتی همچنان استثنای آشکار است. ویندوز و macOS طبق Statcounter همچنان آنجا تسلط دارند، هرچند سهم بازار رومیزی لینوکس رو به افزایش بوده است. این امر به کل داستان پیچش کمی طنزآمیز میدهد، چرا که رایانههای رومیزی همان محیطی بودند که لینوکس نخست از آنها پدید آمد.
پروژه هسته خودِ گنو از مسیری پیروی کرد که تاننباوم امیدوارکنندهتر میدانست. هرد طراحی مبتنی بر میکروکرنل را برگزید و یکی از عجیبترین نمونههای پروژه متنباز است که پس از دههها توسعه همچنان ناتمام مانده. این پروژه هرگز نتوانست به سیستمعامل آزاد شبهیونیکس پرکاربردی بدل شود که لینوکس نهایتاً به آن تبدیل شد.
تاننبام ضعفهای فنی لینوکس را شناسایی کرده بود، از جمله برخی که توسعهدهندگان سالها برای رفع آنها وقت صرف کردند. او آن ضعفهای اولیه را پیشبینی بهتری برای آینده پروژه میدانست تا آنچه در نهایت به وقوع پیوست.
در دسترس بودن، برتری قدرتمندی از کار درآمد
استدلال تاننبام در سال ۱۹۹۲ همچنان بهعنوان تحلیل فنی جدی اعتبار خود را حفظ کرده است. آنچه بهسرعت کهنه شد، تلقی مصالحههای اولیه لینوکس بهعنوان پیشبینی مفیدی برای میزان پیشرفت نهایی پروژه بود.
توروالدز کدی داشت که کار میکرد و افرادی که حاضر بودند آن را بهبود دهند. با تغییر سختافزار، لینوکس هم تغییر میکرد.
و همین کافی بود.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Oluwademilade Afolabi است. مشاهده مقاله اصلی