فری‌بی‌اس‌دی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو
فری‌بی‌اس‌دی
FreeBSD
Freebsd logo.svg
FreeBSD.png
تصویر خوش‌آمدگویی فری‌بی‌اس‌دی ۶.۲
توسعه‌دهنده‌(ها) پروژه فری‌بی‌اس‌دی
خانواده شبه-یونیکس (بی‌اس‌دی)
نوع هسته یکپارچه
نوع منبع متن‌باز
پلاتفرم I386, SPARC, SPARC64, DEC Alpha, AMD64, ia64, PC98, پاور پی‌سی, آرم
تاریخ اولین انتشار اول نوامبر ۱۹۹۳ (‎-RELEASE)
آخرین نسخه پایدار ‎-RELEASE 9.1  (چهارم دسامبر ۲۰۱۲ میلادی)
آخرین نسخه آزمایشی Current  (روزانه)
روش بروزرسانی سابورژن و باینری
برنامه مدیریت بسته‌ها پورت‌های فری‌بی‌اس‌دی
واسط کاربری واسط خط فرمان
اجازه‌نامه پروانه فری‌بی‌اس‌دی
وضعیت در جریان
وب‌گاه FreeBSD.org
وضعیت پشتیبانی ندارد (در برخی مناطق با قرارداد شریک سوم)

فری‌بی‌اس‌دی (به انگلیسی: FreeBSD)‏ یک سیستم عامل شبه-یونیکس آزاد است که در سال ۱۹۹۲ از سیستم عامل یونیکس ای‌تی‌اندتی و از طریق بی‌اس‌دی یونیکس انشعاب یافته است. این سیستم‌عامل توسط پروژه فری‌بی‌اس‌دی توسعه می‌یابد. مشارکت‌کنندگان پروژه افرادی داوطلب از سرتاسر دنیا هستند. هدف این پروژه تهیه سیستم‌عاملی پایدار، سریع و همه‌منظوره است که هر کسی بتواند برای هر هدفی از آن استفاده کند. [۱] شرکت‌های زیادی برای اهداف مختلف خود از سیستم‌عامل فری‌بی‌اس‌دی استفاده می‌کنند. [۲] هرچند که به دلیل مسائل قانونی فری‌بی‌اس‌دی نمی‌تواند «یونیکس» نامیده شود، [۳] اما به عنوان سیستم عاملی که مستقیما از بی‌اس‌دی یونیکس انشعاب یافته (بسیاری از توسعه دهندگان اصلی بی‌اس‌دی یونیکس بعدها توسعه‌دهنده فری‌بی‌اس‌دی شدند)، ساختار درونی و رابط برنامه‌نویسی نرم‌افزار فری‌بی‌اس‌دی با یونیکس سازگار هستند. به دلیل آنکه اجازه نامه این سیستم‌عامل بسیار سهل‌گیر است، بسیاری از کدهای فری‌بی‌اس‌دی همچون سیستم پرونده و سیستم شبکه و برنامه‌های پایه کاربردی [۴] به صورت بخشی از سیستم عامل‌های دیگر مانند اپل مک اواس ده که دارای مجوز یونیکس-سازگار است و رسما نشان یونیکس را دریافت کرده، در بیاید. [۵] به جز مک اواس ده که نرم‌افزاری تجاری است، فری‌بی‌اس‌دی پر استفاده ترین سیستم‌عامل مشتق شده از بی‌اس‌دی به لحاظ بیشترین تعداد نصب شدن بر روی کامپیوترها را دارد و به عنوان پراستفاده ترین نسخه کد-باز از خانواده بی‌اس‌دی به شمار می‌رود، و محاسبه شده که بیش از سه چهارم از تمام سیستم‌های در حال اجرای کد-باز مشتق شده از بی‌اس‌دی را تشکیل می‌دهد. [۶]

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


محتویات

تاریخچه[ویرایش]

طراحی و توسعه فری‌بی‌اس‌دی در سال ۱۹۹۳ با رشدی سریع، از وصله‌هایی که کابران ۳۸۶بی‌اس‌دی ارایه می‌کردند، آغاز شد. این وصله‌ها از ۳۸۶بی‌اس‌دی انشعاب پیدا کرده و به صورت سیستم عاملی رشد پیدا کرد که از سیستم عامل ۴/۳بی‌ای‌دی-لایت (نت/۲) دانشگاه کالیفرنیای برکلی به همراه اجزای بسیاری از ۳۸۶بی‌اس‌دی با نرم‌افزارهایی از بنیاد نرم‌افزار آزاد اشتقاق حاصل کرد. پس از دو نسخه آزمایشی که از ظریق اف‌تی‌پی منتشر شد (1.0-GAMMA در ۲ سپتامبر ۱۹۹۳ و 1.0-EPSILON در ۳ اکتبر ۱۹۹۳)، نسخه ۱/۰ فری‌بی‌اس‌دی در ۱ نوامبر ۱۹۹۳ از طریق اف‌تی‌پی و در ۳۰ دسامبر ۱۹۹۳ از طریق لوح فشرده در دسترس کاربران قرار گرفت. نسخه اول با هماهنگی جوردن هابارد، نیت ویلیامز و رودنی دابلیو گریمز و شخص دیگری که احتمالا دیوید گرینمن بوده منتشر شد. والنوت کریک سی‌دی‌رام با پخش فری‌بی‌اس‌دی بر روی لوح فشرده موافقت کرد و یک سیستم را در اختیار پروژه قرار داد تا با اینترنت پرسرعت کار کند که بعدها هابارد گفت این کار در رشد سریع پروژه کمک کرده است. به دنبال آن فری‌بی‌اس‌دی ۱/۱ با موفقیت بسیار در می ۱۹۹۴ منتشر شد.

به هر حال نگرانی‌هایی درباره برخی مشکلات قانونی پیرامون کدهای منتشر شده بی‌اس‌دی نت/۲ به کار رفته در ۳۸۶بی‌اس‌دی وجود داشت. پس از شکایت در دادگاه در مورد کپی‌رایت مالکیت یونیکس بین آزمایشگاه‌های سیستم یونیکس و دانشگاه کالیفرنیا، برکلی، پروژه فری‌بی‌اس‌دی دوباره بر اساس ۴/۴بی‌اس‌دی-لایت از برکلی که کدهای خود را داشت و هیچ یک از کدهای یونیکس ای‌تی‌اندتی را که در نسخه های اولیه بی‌اس‌دی به کار رفته بود را شامل نمی‌شد و آن را به سیستم عاملی غیر قابل بوت شدن تبدیل کرده بود، طراحی شد. پس از کارهای بیشتر در ادامه Release ۲/۰ فری‌بی‌اس‌دی در ژانویه ۱۹۹۵ منتشر شد.[۸]
در فری‌بی‌اس‌دی ۲/۰ سیستم حافظه مجازی از مچ که در دانشگاه کارنگی ملون توسعه یافته بود را اضافه کرد، که باعث بهبود کارایی در بارگداری‌های سنگین می‌شد. در این نسخه همچنین پورت‌های فری‌بی‌اس‌دی معرفی شد، که امکان دانلود، ساخت و نصب برنامه‌های کاربردی دیگر را به آسانی فراهم می‌کرد. از سال ۱۹۹۶ فری‌بی‌اس‌دی در میان آی‌اس‌پی‌ها و کاربران تجاری محبوبیت پیدا کرد و برخی سایت‌های موفق مانند والنوت کریک سی‌دی‌رام، یاهو و هات‌میل از آن استفاده کردند. آخرین نسخه منتشر شده از شاخه ‎2-STABLE نسخه ۲.۲.۸ بود که در نوامبر ۱۹۹۸ منتشر شد. فری‌بی‌اس‌دی ۳.۰ شامل تغییرات زیادی بود، از جمله سویچ کردن به فرمت اجرایی و پیوندی. همچنین پشتیبانی از SMP و پلاتفرم ۶۴ بیتی آلفا نیز اضافه شد. نسخه ۳.۵.۱ آخرین نسخه از شاخه ‎3-STABLE بود که در جون ۲۰۰۰ منتشر شد.

ویزگی‌ها و قابلیت‌ها[ویرایش]

فری‌بی‌اس‌دی قابلیت‌ها و ویژگی‌های زیادی دارد که آن را از دیگر سیستم‌عامل‌ها متمایز می‌کند. برخی از این قابلیت‌ها عبارتند از:[۹]

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

فری‌بی‌اس‌دی می‌تواند فایل‌های باینری سیستم‌عامل‌هایی مانند لینوکس نت‌بی‌اس‌دی اس‌سی‌او و اس‌وی‌آر‌۴ را اجرا کند. به این ترتیب می‌توان طیف وسیعی از برنامه‌های کاربری دیگر سیستم‌عامل‌ها را بر روی فری‌بی‌اس‌دی اجرا کرد.

محافظت از حافظه[ویرایش]

توسط این قابلیت برنامه‌ها و کاربران از دخالت کردن در کار یکدیگر عاجز هستند. اگر یک برنامه آسیب ببیند، در کار دیگر برنامه‌ها تاثیری نخواهد گذاشت. این قابلیت امنیت سیستم‌عامل را افزایش خواهد داد.

زندان‌های فری‌بی‌اس‌دی[ویرایش]

نوشتار اصلی: زندان‌های فری‌بی‌اس‌دی


شبکه[ویرایش]

فری‌بی‌اس‌دی ویژگی های شبكه TCP/IP خود را از 4.2BSD به ارث برده و از پروتكل های IPv6, SCTP, IPSec, IPX, Appletalk و شبكه های بیسیم پشتیبانی میكند.

قابل حمل بودن[ویرایش]

FreeBSD تاکنون به سکوها و معماری‌های مختلفی پورت شده است.

معماری CPU سطح پشتیبانی توضیحات
x86 (IA-32)
رده 1 به عنوان i386
x86-64
رده 1 به عنوان amd64
NEC PC-9801
رده 2 به عنوان pc98
Sun SPARC
رده 2 فقط معماری 64-bit V9 پشتیبانی میشود
Sun SPARC
رده 2
PowerPC and PowerPC/64
رده 2
ARM
رده 2
MIPS
رده 3
Microsoft's Xbox
رده 3
DEC Alpha
رده 3 پشتیبانی از FreeBSD 7.0 قطع شده

درباره بی‌اس‌دی[ویرایش]

FreeBSD به عنوان قدرتمندترین سیستم‌عامل آزاد شناخته شده است.[نیازمند منبع] فری‌بی‌اس‌دی نسخه‌ای از یونیکس نیست، بلکه شبیه یونیکس است و بسیار قابل اطمینان و انعطاف‌پذیر است. سرور FreeBSD همواره به عنوان پایدارترین سرور دنیا شناخته شده است و همیشه سرورهای FreeBSD در بین پایدارترین سایتهای اینترنتی هستند و در نت کرافت جزو ده سایت برتر می باشند.[۱۰]

برنامه‌های جانبی[ویرایش]

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

برای بیشتر پورتها بسته‌های باینری و از قبل کامپایل شده هم موجود است. در این روش نیازی به کامپایل برنامه از کدهای منبع نیست و نصب برنامه به سرعت انجام می‌شود اما کاربر قادر به سفارشی کردن برنامه‌ها نیست.

ابزار‌های مدیریت پورت‌ها و بسته‌ها[ویرایش]

ابزارهای زیادی برای مدیریت پورتهای فری‌بی‌اس‌دی وجود دارد که برخی از آنها مبتنی بر خط فرمان هستند و برخی دیگر یک رابط گرافیکی در اختیار کاربر قرار می‌دهند. برخی از این ابزارها عبارتند از:

portmaster - یکی از محبوبترین ابزارها برای مدیریت پورتهاست که یک رابط مبتنی بر خط فرمان در اختیار کاربر قرار می‌دهد. مزیت بزرگ portmaster این است که به هیچ یک از دیگر پورتها وابسته نیست.

portupgrade - یک ابزار محبوب دیگر برای مدیریت پورتها از طریق خط فرمان است. portupgrade قابلیت‌های بیشتری نسبت به portmaster دارد اما در عوض وابستگی‌های زیادی مانند ruby دارد.

portaudit - این ابزار تمام پورتهایی که در حال حاضر بر روی سیستم نصب شده‌اند را از نظر مشکلات امنیتی بررسی می‌کند و اگر مشکلی پیدا کرد آن را به کاربر اطلاع می‌دهد.

bpm - یک ابزار گرافیکی برای مدیریت پورتهاست.

kports - یک ابزار گرافیکی برای میزکار کی‌دی‌ای است.

pib - یک ابزار گرافیکی دیگر برای مدیریت پورتهاست.

pkgNG[ویرایش]

همانطور که گفه شد کاربر می‌تواند نرم‌افزار‌های مورد نیاز خود را از طریق بسته‌های باینری و از قبل کامپایل شده نصب کند. این روش سرعت بالاتری نسبت به سیستم پورتها دارد اما کاربر نمی‌تواند برنامه‌ها را سفارشی کرده و مطابق نیازهای خود تنظیم کند. به صورت سنتی دستور‌هایی مانند pkg_add, pkg_delete, pkg_info و ... برای مدیریت این بسته‌ها استفاده می‌شدند اما در نسخه ۱۰ فری‌بی‌اس‌دی ابزاری جدید به نام pkg جایگزین این دستور‌ها خواهد شد. [۱۱]


مستندات[ویرایش]

مستندات فری‌بی‌اس‌دی به چند بخش تقسیم می‌شود:

  • کتاب ها و مقالات نوشته شده توسط پروژه فری‌بی‌ای‌دی [۱۲]
  • صفحات راهنما یا man page ها [۱۳]
  • سوالات پر تکرار [۱۴]
  • مستندات غیر رسمی که شامل کتاب‌ها و مقالاتی می‌شود که افرادی خارج از پروژه درگیر تهیه آنها بوده‌اند. [۱۵]

پروژه فری‌بی‌اس‌دی توجه بسیار زیادی به مستندات نشان می‌دهد و مستندات رسمی این سیستم‌عامل تا کنون به چندین زبان ترجمه شده است. [۱۶] فری‌بی‌اس‌دی برای هر دسته از کاربران خود یک کتاب راهنمای مجزا دارد. مثلا برای کاربران معمولی یک کتاب راهنما، برای توسعه‌دهندگان سیستم‌عامل یک کتاب راهنما، و ... . به طور کلی می‌توان گفت مستندات پروژه از کیفیت بالایی برخوردار است.

توسعه[ویرایش]

توسعه‌دهندگان فری‌بی‌اس‌دی، روند توسعه این سیستم‌عامل را حداقل در دو شاخته مستقل ادامه می‌دهند. یکی شاخه ‎-CURRENT و دیگری شاخه ‎-STABLE. شاخه ‎-CURRENT که اغلب به عنوان «تیغ دو‌لبه» در توسعه فری‌بی‌اس‌دی شناخته می‌شود، دربرگیرنده جدیدترین قابلیت‌ها و تغییرات است. البته این قابلیت‌ها و تغییرات معمولا به صورت کامل آزمایش نشده‌اند و ممکن است به پایداری کامل نرسیده باشند. کاربران با استفاده از شاخه ‎-CURRENT می‌توانند این قابلیت‌ها را آزمایش کرده و مشکلات احتمالی را گزارش کنند. غیر از شاخه ‎-CURRENT، شاخه ‎-STABLE هم وجود دارد. بعد از اینکه کدهای شاخه ‎-CURRENT به طور کامل آزمایش شدند و به پایداری رسیدند وارد شاخه ‎-STABLE می‌شوند و بعد از آن هم وارد شاخه ‎-RELEASE می‌شوند.

مشتقات فری‌بی‌اس‌دی[ویرایش]

  • PC-BSD (هدف این پروژه کاربران خانگی و ایستگاه‌های کاری است)
  • DesktopBSD (هدف این پروژه کاربران خانگی و ایستگاه‌های کاری است)
  • FreeSBIE (یک دیسک زنده است)
  • Frenzy (یک دیسک زنده است)
  • GhostBSD (مبتنی بر میزکار گنوم)
  • m0n0wall (یک دیوار آتش)
  • pfSense (یک دیوار آتش)
  • FreeNAS (سیستم‌های ذخیره‌سازی)
  • AuthServ (سیستم‌های ذخیره‌سازی)

نصاب‌ها[ویرایش]

sysinstall[ویرایش]

سیس‌اینستال را ببینید.

bsdinstall[ویرایش]

بی‌اس‌دی‌اینستال یک جایگزین سبک برای سیس‌اینستال است. در نسخه 9.0 این نصاب جایگزین سیس‌اینستال شد. [۱۷]

نصاب pc-bsd[ویرایش]

هدف این نصاب ایجاد کردن یک برنامه نصب گرافیکی و کاربرپسندانه برای FreeBSD و همچنین مشتقات FreeBSD است.

تاریخچه نسخه‌های منتشر شده[ویرایش]

فری‌بی‌اس‌دی 1[ویرایش]

نسخه 1 در ماه نوامبر سال 1993 منتشر شد. نسخه 1.1.5.1 هم در ماه جولای 1994 منتشر شد.

فری‌بی‌اس‌دی 2[ویرایش]

‎ 2.0-RELEASE در تاریخ 22 نوامبر 1994 منتشر شد. نسخه نهایی آن یعنی ‎ 2.2.8-RELEASE هم در 29 نوامبر 1998 منتشر شد.

فری‌بی‌اس‌دی 3[ویرایش]

FreeBSD 3.0-RELEASE در 16 اکتبر 1998 منتشر شد. نسخه نهایی آن یعنی 3.5-RELEASE هم در 24 ژوئن 2000 منتشر شد. FreeBSD 3.0 اولین نسخه‌ای بود که از قابلیت چند پردازشی متقارن با استفاده از قفل بزرگ پشتیبانی می‌کرد. پشتیبانی از یواس‌بی هم اولین بار در این نسخه گنجانده شد.

فری‌بی‌اس‌دی 4[ویرایش]

فری‌بی‌اس‌دی 5[ویرایش]

فری‌بی‌اس‌دی 6[ویرایش]

FreeBSD 6.0 در 4 نوامبر 2005 منتشر شد.

فری‌بی‌اس‌دی 7[ویرایش]

FreeBSD 7.0 در 27 فوریه 2008 منتشر شد.

فری‌بی‌اس‌دی 8[ویرایش]

FreeBSD 8.0 در 25 نوامبر 2009 منتشر شد.

فری‌بی‌اس‌دی 9[ویرایش]

FreeBSD 9.0 در تاریخ 12 ژانویه 2012 منتشر شد. از جمله قابلیت‌های جدید در این نسخه می‌توان به پشتیبانی از یواس‌بی نسخه 3، یک نصاب جدید به نام بی‌اس‌دی‌اینستال، نسخه 28 از فایل‌سیستم زی‌اف‌اس، قابلیت اجرا بر روی پلی‌استیشن 3، قابلیت journaling در UFS، وجود کامپایلر LLVM 3.0 در سیستم پایه، سازگار کردن نسخه کلاینت و سرور NFS با پروتکل NFSv4، و ... اشاره کرد. هر‌چند که کامپایلر Clang به صورت پیشفرض در سیستم وجود دارد و می‌توان از آن برای کامپایل کردن هسته و دیگر اجزای سیستم‌عامل استفاده کرد، اما کامپایلر جی‌سی‌سی هنوز هم کامپایلر پیشفرض در فری‌بی‌اس‌دی است و تا نسخه ۱۰ جایگزین نخواهد شد.

جامعه کاربری و پشتیبانی[ویرایش]

جامعه کاربری فری‌بی‌اس‌دی متشکل از کاربران، توسعه دهندگان، برنامه‌نویسان و حمایت‌کنندگان این سیستم‌عامل است. فری‌بی‌اس‌دی بیشتر از صد عدد لیست پستی با موضوعات مختلف دارد. [۱۸] که این لیست‌های پستی به زبان‌های گوناگونی در دسترس کاربران قرار دارند. [۱۹] این لیستهای پستی منبع اصلی برای پشتیبانی و رفع اشکال کاربران و توسعه‌دهندگان هستند. کاربران می‌توانند با عضویت در این لیست‌های پستی سوالات و مشکلات خود را مطرح کنند که این سوالات برای تمام دیگر اعضای لیست ارسال شده و به صورت داوطلبانه به آنها پاسخ داده می‌شود. علاوه بر لیست‌های پستی، فری‌بی‌اس‌دی یک انجم رسمی هم برای کاربران تدارک دیده. [۲۰] همینطور تعدادی کانال آی‌آر‌سی هم برای پاسخگویی سریع به سوالات وجود دارد. [۲۱]

منابع[ویرایش]

پیوند به بیرون[ویرایش]