img

رقابت سنگین میان لینوکس و BSD

/
/
/

چند بار شما شنیده اید که مردم به صورت همزمان از دو سیستم عامل Linux و BSD استفاده کنند؟ بله هر دوی این سیستم عامل‌ها منبع باز هستند، در حالی که رده بندی متفاوتی دارند و مثل هم نیستند. ما مطمئن هستیم که حداقل یک بار هم که شده این دو را مثل هم و برابر در نظر گرفته ایم خصوصاً زمانی که این دو سیستم عامل را به صورت سطحی و سرسری با هم مقایسه می‌کنیم. اما اگر شما از این دو استفاده کرده باشید خواهید دید که شباهت‌ها خیلی سریع کمرنگ می‌شوند و جا برای نمایش دادن تفاوت‌ها باز تر خواهد شد.
در حالی که سیستم عامل‌های BSD نتوانسته‌اند به رویای فناوری هدف خود دست پیدا کنند، ولی به دلیل قدرت، پایایی، قابلیت اعتماد، و امنیتی که دارند مورد توجه و علاقه کابران در سراسر دنیا قرار گرفته‌اند و کاملاً در میان ادمین‌های سیستم مشهور شده‌اند. گفته شده است که شما می‌توانید به سادگی از برنامه‌های مشهور منبع باز لیستی را برای خود تهیه کنید و از سیستم عامل BSDs برای انجام کارهای روزمره محاسباتی خود و حتی برای بازی کردن استفاده کنید. چیزی که باید به آن اشاره کرد همان قدرت این سیستم عامل هاست و جامعه ای متخصص از توسعه گران و کاربرانی که بر روی آن‌ها کار می‌کنند.
سیستم عامل‌های مدرن BSDs را می‌توان محصول دهه ۷۰ میلادی دانست. کلمه BSD مخففی برای Berkeley Software Distribution (توزیع نرم افزاری برکلی) است. این سیستم عامل نام یک ابزار از سیستم عامل Unix را به خود گرفته است که در دانشگاه برکلی واقع در ایالت کالیفرنیا ساخته شده است. در مقابل سیستم عامل UNIX، که در آزمایشگاه‌های Bell Labs توسعه یافته است، سیستم عامل BSD به وسیله دانشجویان و هیئت علمی در یک دانشگاه ساخته شده است. BSD به عنوان یک بسته نرم افزاری از دستاوردهای نرم افزارها برای سیستم عامل UNIX توزیع شد که توانست این سیستم عامل را در دنیای واقعی مفیدتر کند، و در خارج از محیط آزمایشگاهی این سیستم عامل را کاربردی کند. در طی زمان BSD بهبود یافت و جای تک تک قسمت‌های UNIX را گرفت و به خودی خود تبدیل به یک سیستم عامل مفید و قابل استفاده شد. توزیع‌های پایدار اخیر از سیستم عامل BSD خانواده ای از سیستم عامل‌ها هستند که از سیستم عامل BSD مشتق شده‌اند.

سیستم عامل‌هایی برای همیشه
قبل از این که ما به بررسی برخی از جنبه‌های این دو سیستم عامل BSD و Linux که باعث ایجاد تمایزها و تفاوت هایی میان این دو شده‌اند بپردازیم، می‌خواهیم اصل و منبع این دو را مورد بررسی قرار دهیم و بدانیم که این منبع مشترک چگونه بر روی مشابهت‌های این دو تاثیر می‌گذارد.
سیستم عامل لینوکس یک کرنل است که به وسیله فردی به نام Linus Torvalds توسعه یافت تا با سیستم Minix که آموزش محور اما محدود بود در دانشگاهی که این فرد درس می‌خواند یعنی دانشگاه هلسینکی در کشور فنلاند، جایگزین شود. این کرنل، زمانی که با مولفه‌های دیگر ترکیب می‌شود-مهمتر از همه این مولفه‌ها مجموعه GNU از utility‌ها است-منجر به ایجاد شدن یک سیستم عامل شبیه به Unix می‌شود. به این دلیل که لینوکس از همان ابتدا به صورت مستقل نوشته شده است و یک خط مشی مستقیم از سیستم عامل Unix را در خود ندارد، پس با تمامی سیستم عامل هایی که رابطه نزدیک تری را با سیستم عامل Unix دارند کاملاً متفاوت شده است.
در مقابل، جوهره اصلی سیستم عامل BSD رابطه قوی تری را با گذشته خود دارد و این رابطه با یکی از مشهورترین نسخه‌ها یعنی FreeBSD قوی تر از بقیه است، به طوری که در ابتدا این سیستم عامل با این هدف طراحی شده بود که به صورت یک نسخه بدون مجوز از Unix فعالیت داشته باشد. توسعه دهندگانی که بر روی BSD کار می‌کنند به صورت نزدیک و تنگاتنگی مسیر سیستم عامل Unix را دنبال می‌کنند و سعی دارند به روش آن کارها را پیش ببرند، همین امر نیز منجر به ایجاد برخی از تفاوت‌های فنی در بین این دو سیستم عامل شده است. علاوه بر این، رویکرد سیستم عامل Unix به نظر می‌رسد که بر روی تمامی نسل‌های توسعه در سیستم عامل BSD تاثیر خواهد گذاشت.
شباهت‌های میان سیستم عامل‌های BSD و Linux از آنجا نشأت گرفته است که هر دوی آن‌ها در طبیعت خود از سیستم عامل Unix پیروی می‌کنند. این امر بر روی هر چیزی تاثیر می‌گذارد، از ساختمان اصلی و زیرین سیستم و اهداف آن گرفته تا طراحی سیستم عامل موردنظر و تعاملی که میان مولفه‌های این سیستم عامل وجود دارند همگی تحت تاثیر این شباهت‌ها هستند. هر دو سیستم عامل BSD و Linux از نوع سیستم عامل‌های POSIX-compliant هستند که به استاندارد سازی شدن طراحی این سیستم عامل‌ها و استانداردسازی ساختمان اصلی آن‌ها کمک می‌کند. برای مثال، رابط خط دستور (محل کدنویسی) ابزاری اولیه برای ایجاد تعامل با مولفه‌های زیرمجموعه در هر دو سیستم عامل است، و این دو سیستم عامل همچنین دارای یک سلسله مراتب فایل سیستمی مشابه هستند.

وجود هماهنگ
اکوسیستم موجود در Linux به صورت مثبتی پر است از توزیع‌های مختلف، که اکثریت این توزیع‌ها مشتق شده از یکی از دیگر توزیع هایی مانند Debian، Fedora، Ubuntu، Arch و حتی Slackware هستند. علاوه بر این توزیع ها، همچنین یک تعداد رو به رشدی از توزیع هایی در این سیستم عامل وجود دارد که از ابتدا ساخته و طراحی شده‌اند.
سیستم عامل اصلی BSD ممکن است تمام شده و از بین رفته باشد، اما هنوز از این اصطلاح استفاده می‌شود تا از گل سر سبدهای مشتق‌های اخیر BSD نام برده شود. سه تا از نوادگان مشهور و نام آشنای BSD که اخیراً مورد استفاده قرار می‌گیرند عبارتند از FreeBSD، OpenBSD و NetBSD. اکثر سیستم عامل‌های BSD منبع باز هستند و برای دانلود کردن به صورت رایگان تحت مجوز BSD در دسترس همگان قرار دارند و البته سیستم عامل Mac OS X بزرگترین و قابل توجه ترین استثنا در این مجموعه است و دارای قوانین مشخص تری برای خودش می‌باشد.
تعداد زیاد توزیع‌های لینوکس اغلب از دید کاربران BSD بازتاب و نتیجه ای از بخش بندی و عدم سازماندهی مناسب از این جامعه سیستم عامل‌ها هستند. با این حال، این ادعا خیلی هم درست نیست زیرا باید این واقعیت را در نظر داشت که تمامی توزیع‌ها از یک کرنل مشترک لینوکس و مجموعه‌های کوچک تر آن استفاده می‌کنند. علاوه بر این، این توزیع‌ها با سیستم دودویی انطباق دارند و اغلب منابع کلیدی مانند کد، طراحی و حتی توسعه دهندگان را در اختیار می‌گذارند.
از طرف دیگر، همکاری میان نسخه‌های مختلف از سیستم عامل BSD یک نکته قابل توجه و تحسین برانگیز است. البته، شما می‌توانید نمونه هایی را پیدا کنید که در این نمونه‌ها پروژه‌های BSD مختلف دارای منابع مشترکی با هم هستند، اما این امر به جای این که یک امر طبیعی باشد هنوز هم یک استثناست. در واقع بسیاری از سیستم عامل‌های مشهور BSD در نتیجه یک مخالفت عمومی به وجود آمده‌اند و در بین توسعه دهندگان تفکیک و جدا شده‌اند.

قابلیت‌های سخت افزاری
به طور کلی، سیستم عامل‌های منبع باز به‌اندازه سیستم عامل‌های تخصصی مانند ویندوز و مک ایکس از سوی فروشندگان سخت افزار پشتیبانی رسمی دریافت نمی کنند. اگرچه امروزه فروشندگان قطعات سخت افزاری نگاه دقیقی را به سیستم عامل‌های منبع باز دارند و به آن‌ها توجه می‌کنند، اما هنوز هم کار راحت تر این است که شما از سخت افزارهایی استفاده کنید که به جای یک سیستم عامل منبع باز خاص، با سیستم عاملی تخصصی مانند سیستم عامل‌های نامبرده شده سازگاری خوبی دارد.
در میان این دو سیستم عامل مشهور و بزرگ، این سیستم عامل لینوکس است که دارای برگ برنده است، و از روی آن سیستم عامل‌های زیبای BSD ساخته شده‌اند تا بتوانند علاقه و توجه فروشندگان سخت افزاری را به خود جلب کنند. برخی از این کمپانی‌های سخت افزاری مانند Nvidia درایورهای مخصوصی را برای سیستم عامل BSD برای نصب کردن محصولات خود بر روی سیستم عامل هایی مانند FreeBSD ساخته‌اند، اما یک تعداد اکثریتی از پشتیبانی سخت افزاری برای سیستم عامل‌های BSD از جامعه توسعه دهندگان این سیستم عامل نشات گرفته است که این توسعه دهندگان بدون خستگی مشکلات را رفع می‌کنند و حتی با استفاده از روش مهندسی معکوس درایورهایی را برای سخت افزارهای مشهور ایجاد می‌کنند.
برای به دست آوردن یک دید کلی در رابطه با این موضوع یک نگاهی به مقایسه درایورهای بی سیم منبع باز (https://en.wikipedia.org/wiki/comparison_of_open-source_wireless_drivers) بیاندازید و توجه داشته باشید که حتی با این وجود که فروشندگان بزرگی مانند Qualcomm، Broadcom، Intel، Marvell، Realtek، Nokia و Texas Instruments همگی درایور سخت افزارهای خود را برای سیستم عامل لینوکس تولید می‌کنند، ولی سیستم عامل‌های BSD کمی از این نظر در انزوا قرار گرفته‌اند.
غیر منصفانه نخواهد بود اگر نتیجه بگیریم که پشتیبانی سخت افزاری در سیستم عامل BSD در مقایسه با سیستم عامل لینوکس در حدود یک قرن (زمانی که خطاهایی مانند ۴۰۴ not found را مشاهده می‌کردیم) عقب تر است. عدد گذاری و کمی کردن میزان تفاوت‌های میان این دو سیستم عامل کار سختی است، اما اگر شما یک سخت افزار را برای کامپیوتر دسکتاپ خود خریداری کنید، شانس کار کردن بدون دردسر و بدون نیاز به نصب برنامه یا درایوری در سیستم عامل لینوکس به مراتب بالاتر از سیستم عامل BSD است.

مشکلات نرم افزاری
یکی از کلیدی ترین تفاوت‌های میان سیستم عامل FreeBSD و اکثر توزیع‌های لینوکس از دیدگاه یک کاربر، شکل نرم افزاری و در دسترس بودن آن است. اگرچه شما می‌توانید نرم افزار را از منبع در لینوکس فراخوانی کنید، ولی یک نسخه نصب شده معمولی از لینوکس معمولاً تنها دارای بسته‌های از قبل آماده شده به صورت سیستم دودویی می‌باشد.
در مقابل، یک سیستم عامل BSD معمولاً متشکل از بسته‌های از قبل ساخته شده و بسته هایی است که از منبع نصب شده‌اند. این به این دلیل است که سیستم عامل BSD به سیستم ساخت خود برای فراخوانی و نصب نرم افزار از منبع از طریق یک سیستم که به عنوان مجموعه پورت‌ها شناخته شده است، افتخار زیادی می‌کند.
مجموعه ای پورت را در نظر داشته باشید که به عنوان فایل‌ها و بسته هایی هستند که سیستم عامل BSD از آن‌ها برای ساختن بسته‌ها استفاده می‌کند. به عبارت دیگر، هدف مبنای سیستم پورت این است که فرآیند ساختن و نصب کردن بسته‌ها را خودکار و اتوماسیونی کند. مجموعه پورت‌های سیستم عامل FreeBSD با نسخه هایی مانند NetBSD، OpenBSD و DragonFly BSD سازگار شده‌اند تا بتوانند سیستم‌های مدیریتی بسته‌ها و پورت‌های خود را به خوبی اجرا کنند. اخیراً، مجموعه پورت‌های FreeBSD گسترده ترین در میان همه است و دارای تعداد۲۷۰۰۰ پورت است. به صورت کلی، در دنیای سیستم عامل‌های BSD، نسخه‌های بسته سازی شده از نرم افزار درواقع از سیستم پورت‌ها ساخته می‌شوند. این امر باعث ایجاد اولین سیستم عامل منبع دار می‌شود که بسته‌های آن برای راحتی بیشتر کار در دسترس هستند.
در حالی که هواداران سرسخت سیستم عامل BSD روی اسم آم قسم می‌خورند، مجموعه پورت‌های آن ممکن است برای یک کاربر متوسط لینوکس جذاب و مناسب نباشد. افرادی که بر روی لینوکس برنامه ای را اجرا کرده‌اند قطعاً از راحتی استفاده از فرآیندهای استانداردشده که توسط مجموعه پورت‌ها ارائه شده استقبال خواهند کرد. اما اگر تابحال بسته‌های دودوئی را نصب کرده باشید، کاربران BSD برای این که نحوه استفاده کردن از مجموعه پورت‌ها را به شما یاد دهند کار سختی را پیش روی خود خواهند داشت.
برخلاف پورت ها، اکثریت توزیع‌های لینوکس دارای نرم افزار دودوئی با پاسخ دهی آنلاین می‌باشند. اکثر توزیع‌ها دارای مجموعه ای منحصر به فرد از اسناد هستند که با کمک مدیر بسته هایی که استفاده آسانی دارند قابل دسترسی هستند و به این وسیله می‌تواند بسته‌ها را دانلود و نصب کرد. اکثر توزیع‌ها دارای روش هایی برای ساختن بسته‌ها هستند و تمامی این توزیع‌ها منابع قابل توجهی را برای نگه داری از اسناد خود صرف می‌کنند تا بتوانند باگ‌ها را برطرف کنند و آپدیت‌ها را در دسترس همگان قرار دهند. این مدل اسناد این اطمینان را حاصل می‌کند که نسخه‌های لینوکس قابل استفاده، قابل اعتماد، امن و به روز هستند.

قدرت درونی
یکی از تفاوت‌های اصلی و عمده ای که باعث شده است سیستم عامل BSD از سیستم عامل Linux مجزا شود نحوه ساخت آن دو است. از یک نقطه نظر کاملاً فنی، لینوکس تنها یک کرنل است. برای تولید کردن یک سیستم عامل مناسب و قابل استفاده، هر یک از توزیع‌های لینوکس تعداد زیادی از لایبرری ها، ابزارها و نرم افزار‌ها را بر روی این کرنل به وجود آورده‌اند. از طرف دیگر، سیستم عامل BSD این کرنل را توسعه داده است و مبنای این سیستم عامل را کمی متحول تر کرده است.
در حالی که شاید از نظر شما این تفاوت خیلی ناچیز و کوچک به نظر برسد، ولی به ما کمک می‌کند تا نحوه تعامل برقرار کردن شما و مدیریت کردن هر سیستم را تعیین کنیم و یکی از اصلی ترین دلایلی است که سیستم عامل BSD نسبت به Linux دارای پایداری بیشتری است. این امر به این دلیل است که در دنیای لینوکس، یک توزیع مجموعه ای از بسته‌ها را با هم دیگر ترکیب می‌کند و اطمینان حاصل می‌کند که این بسته‌ها به خوبی با هم کارکنند و تعامل خوبی را با هم داشته باشند. با این حال، انسجام این بسته‌ها بستگی به مهارت‌ها و حرفه توسعه دهندگان این توزیع دارد که این بسته‌ها را در کنار هم قرار داده‌اند. از آن جا که این کار تفاوت زیادی با نصب کردن بسته‌ها ندارد، بسیاری از توزیع‌ها نیز بسته‌های هسته را از سایت منبع خود آپدیت می‌کنند.
در مقابل، یک سیستم عامل BSD مانند FreeBSD از یک سیستم عامل هسته کامل نگهداری می‌کند. این نگهداری شامل کرنل و یک مجموعه از نرم افزارهای ضروری است که همگی به صورت جداگانه تولید شده‌اند و به صورت مشترک نگهداری می‌شوند. برخلاف Linux، بیرون کشیدن تمامی بخش هایی که جزئی از مجموعه هسته خود می‌باشند کار خیلی آسانی است.
در یک سیستم BSD، سیستم هسته به عنوان یک واحد منفرد به صورت مستقل آپدیت می‌شود و نرم افزارهای اختیاری را نیز می‌توان به صورت تکی آپدیت کرد. این چینش خاص توسعه دهندگان BSD را قادر می‌سازد تا اطمینان حاصل کنند که یکپارچگی محکمی وجود دارد که منجر به یک محصول قدرتمند در بازار شده است.
با این حال در پشت پرده لینوکس، بسته‌های هسته معمولاً با استفاده از سایت پاسخگویی مشخص توزیع شده‌اند تا توسعه دهندگان قادر باشند توجه خاصی را به تنها یک زیرمجموعه کوچک از نرم افزارهای موجود در این سایت معطوف کنند.
اگرچه این بسته‌های هسته کاملاً تست شده‌اند، ولی این امر به خودی خود ما را از مقاومت آن‌ها مطمئن نمی کند و نمی توان مانند سیستم عامل BSD اطمینان داشت که سیستم هیچ مشکلی نخواهد داشت.
برخی از افراد ادعا کرده‌اند که فرآیند آپدیت شدن سیستم عامل لینوکس که مولفه‌های هسته توزیع را به همراه تک تک بسته‌ها آپدیت می‌کند، وسیله ای بهتر و کاراتر برای ارتقا دادن نسبت به یک سیستم عامل BSD است که این سیستم نیازمند کاربرانی برای ارتقا دادن سیستم مبنا به صورت جداگانه از کاربران دیگر است.
با این حال، ما بسیاری از محصولات را دیده ایم که ماشین‌های لینوکس بعد از یک ارتقا آن‌ها را به خوبی اجرا کرده‌اند و البته که ارتقا دادن سیستم لینوکس ساده تر است.
به عنوان نکته ای اضافه بر تمایز بالا در بین دو سیستم عامل، یکی دیگر از این تمایزها نحوه بسته بندی شدن این دو سیستم است، برخی از جنبه‌های سیستم مبنای BSD مانند OpenSSH و حتی واحدهای GNU وجود دارند که در جاهای دیگری توسعه یافته‌اند. با این حال، همه این‌ها در سیستم مبنا راه پیدا کرده‌اند.
این امر دلیل این که برخی از نرم افزارها در بین دو سیستم عامل مشترک هستند را توجیه می‌کند و البته این نرم افزارهای مشترک در بین دو سیستم عامل کمی تفاوت از نظر عملکرد دارند.

کلام آخر
سیستم عامل BSD و Linux دارای شباهت‌های بسیار زیادی هستند و دو برابر شباهت ها، تفاوت هم دارند. نسخه‌های اصلی از سیستم عامل BSD دارای قدرت مثال زدنی هستند. برای نمونه نسخه OpenBSD برای داشتن قدرت امنیتی بالا و نسخه NetBSD برای توانایی جهت اجرا شدن در معماری‌های بسیار زیادی شهرت دارند.
بسیاری از کاربران BSD که بلند مدت از این سیستم استفاده کرده‌اند می‌توانند بسیاری از مزیت‌های BSD را علاوه بر این حرف هایی که در این جا زده شد نسبت به سیستم عامل لینوکس عنوان کنند.
اغلب ادعا شده است که BSD دارای سلسله مراتب بهتری برای فایل‌های سیستمی است و کاربران ادعا کرده‌اند که برخلاف لینوکس، در این سیستم عامل شما گم نخواهید شد و به راحتی می‌توانید یک فایل پیکربندی را پیدا کنید. یک مزیت دیگر که اغلب از آن صحبت می‌شود این است که سیستم عامل BSD هیچ خدمات غیرضروری را نصب نمی کند و اجازه نمی دهد که بر روی پس زمینه اجرا شوند.
گفته می‌شود که چندین حوزه وجود دارد که در آن‌ها سیستم عامل لینوکس نسبت به سیستم عامل BSD برتری دارد.
از نظر پشتیبانی رسمی از طرف سازندگان قطعات سخت افزاری لینوکس کاملاً نسبت به BSD برتری دارد. لینوکس همچنین بر روی دسکتاپ حالت بصری بهتری نسبت به سیستم عامل BSD دارد. علی رغم در دسترس بودن نسخه مختلف از سیستم عامل‌های موجود در بازار، سیستم عامل BSD هنوز نتوانسته سهم قابل توجهی از بازار را به خود اختصاص دهد ولی همچنان یکی از بهترین سیستم عامل‌های موجود در بازار است زیرا قابل اعتماد است و جای خود را در ماشین‌های سرور به خوبی پیدا کرده است.
با این حال ما می‌توانیم به شما کمک کنیم تا بهترین سیستم عامل را برای خود انتخاب کنید و پروژه بعدی خود را با آن انجام دهید. این امر به این دلیل است که بعد از خواندن چهار صفحه از این مقایسه بین سیستم عامل‌ها، انتخاب بین آن‌ها محدود به یک عامل فنی یعنی راحتی استفاده می‌شود.
اگر شما با لینوکس راحت هستید، پس ما توصیه نمی کنیم که آن را رها کنید و از BSD استفاده کنید. به طور مشابه ما امیدوار نیستیم که کاربران BSD که مدت‌ها با آن کار کرده‌اند بخواهد آن را کنار بگذارند و از لینوکس استفاده کنند. به طور خلاصه، از دستگاه‌های یکپارچه کوچک گرفته تا سرورهای بزرگ مقیاس و هرچه در مابین آن ها، به گونه ای هستند که هر دو سیستم عامل می‌توانند آن‌ها را اجرا کنند و هر نوع نیازی را در این زمینه‌ها برطرف کنند.
بنابراین، در اصل ما مزایای استفاده از سیستم عامل BSD را فراموش نکرده ایم و به اندازه ای ماجراجو نیستیم که بخواهیم برای همه کودکان این سیستم عامل را به عنوان جایگزین برای لینوکس معرفی کنیم. به نظر می‌رسد که این رقابت هنوز میان این دو سیستم‌عامل ادامه دارد.

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

It is main inner container footer text