بی‌اس‌دی

نسخه‌های آغازین PDP-11

اولین نسخه‌های یونیکس که در دهه ۱۹۷۰ توسط آزمایشگاه‌های بل توزیع می‌شدند، حاوی کدهای منبع این سیستم‌عامل بودند که به محققین دانشگاه‌ها اجازه می‌داد تا بتوانند یونیکس را تغییر داده و گسترش دهند. اولین سیستم یونیکسی در دانشگاه برکلی یک PDP-11 بود که در سال ۱۹۷۴ نصب شد و دپارتمان علوم رایانه از این رایانه به منظور تحقیقات وسیع خود استفاده می‌کرد.
رفته‌رفته دیگر دانشگاه‌ها هم به یونیکس علاقه نشان دادند. بیل جوی , یک دانشجوی مقطع فوق لیسانس در دانشگاه برکلی , در سال ۱۹۷۷، شروع به کامپایل کردن اولین نسخه از توزیع نرم‌افزاری برکلی کرد که 1BSD نام گرفت و در ۹ مارس ۱۹۷۸ منتشر شد . 1BSD بیشتر یک افزونه برای ویرایش ششم یونیکس بود تا یک سیستم‌عامل کامل، اجزای اصلی این سیستم‌عامل یک کامپایلر پاسکال و یک ویرایشگر خطی به نام اکس بودند .
دومین توزیع نرم‌افزاری برکلی (2BSD) در می ۱۹۷۹ منتشر شد و حاوی نرم‌افزارهای بروز شده 1BSD و همینطور دو برنامه جدید بود که توسط بیل جوی نوشته شده بودند و تا به امروز هم در سیستم‌عامل‌های مبتنی بر یونیکس باقی مانده‌اند : یکی ویرایشگر متن وی‌آی (یک نسخه بصری از ویرایشگر اکس) و دیگری سی شل

4.3BSD

4.3BSD در ژوئیه ۱۹۸۶ منتشر شد. تغییرات عمده این نسخه، بهینه‌سازی و بهبود دادن قابلیت‌هایی بود که به نسخه قبلی، 4.2BSD اضافه شده بودند، چرا که این قابلیت‌های جدید به اندازه کدهای 4.1BSD مورد بازبینی و بهبوددهی قرار نگرفته بودند. پیش از انتشار این نسخه، پیاده‌سازی بی‌اس‌دی از TCP/IP فاصله زیادی از پیاده‌سازی رسمی TCP/IP توسط BNN گرفته بود و این دو پشته با هم فرق زیادی کرده بودند. پس از مباحثاتی در مورد اینکه بالاخره کدام پشته در نسخه 4.3BSD قرار گیرد، توافق بر این شد که پشته بی‌اس‌دی از TCP/IP در 4.3BSD استفاده شود، چرا که پس از انجام برخی آزمایش‌ها نشان داده شده بود که کارایی بهتری در بیشتر موارد نسبت به پشته BBN دارد.
پس از انتشار نسخه 4.3BSD، این‌طور مشخص شد که BSD باید از معماری قدیمی VAX فاصله بگیرد. معماری Power 6/32 (با اسم رمز Tahoe) که توسط شرکت Computer Consoles Inc توسعه داده شده بود، خوب و امیدبخش به‌نظر می‌رسید، اما کمی پس از آن توسط توسعه‌دهندگانش رها شده بود. با این حال، پورتی برای این معماری به نام 4.3BSD-Tahoe که در ژوئیه ۱۹۸۸ منتشر شد، کاری ارزشمند محسوب می‌شد، چرا که در این پورت، کدهای وابسته به ماشین و کدهای مستقل از ماشین از یکدیگر جدا شده بودند که این کار باعث می‌شد تا بتوان در آینده BSD را راحت‌تر به دیگر سکوها پورت کرد.
جدا از تلاش برای پورتابل کردن سیستم، CSRG تلاش می‌کرد تا همچنین پشته پروتکل OSI را هم پیاده‌سازی کند، بهینه‌سازی‌هایی در حافظه مجازی انجام دهد و همینطور الگوریتم‌های TCP/IP جدید را در جهت انطباق با رشد اینترنت، توسعه دهد.
تا آن هنگام، تمامی نسخه‌های BSD حاوی کدهای انحصاری از AT&T بودند و در نتیجه برای استفاده از BSD می‌بایست یک مجوز کد منبع از AT&T تهیه می‌شد. اما مجوزها بسیار گران‌قیمت شده بودند و چندین شرکت و سازمان خارج از پروژه، برای منتشر شدن کدهای پشته شبکه به صورت مجزا، ابراز علاقه کرده بودند، که این پشته به‌طور کامل در خارج از AT&T توسعه داده شده بود و نیازی به تهیه مجوز از AT&T نداشت. به این ترتیب، نسخه Networking Release 1 (Net/1)‎ منتشر شد که عاری از کدهای AT&T بود و این امکان وجود داشت تا آن را آزادانه تحت پروانه بی‌اس‌دی منتشر کرد. این نسخه در ژوئیه ۱۹۸۹ منتشر شد.

نت/۲ و مسائل قانونی

بعد از نت/۱، یکی از توسعه‌دهندگان بی‌اس‌دی به نام کیث باستیک پیشنهاد کرد که تمامی کدهای AT&T با کدهایی تحت پروانه BSD جایگزین شوند. برای رسیدن به این هدف، او پروژه‌ای را شروع کرد تا بیشتر برنامه‌های استاندارد یونیکس را مجدداً و بدون استفاده از کدهای AT&T پیاده‌سازی کند. به عنوان مثال، ویرایشگر متن VI که بر اساس نسخه یونیکسی ED بود، به صورت مجدد پیاده‌سازی شد و نام این پیاده‌سازی جدید NVI (وی‌آی جدید) نام گرفت. در طول ۱۸ ماه، تمام ابزارهایی که متعلق به AT&T بودند بازنویسی شدند و از AT&T تنها تعداد کمی فایل در هسته باقی‌مانده بود. این فایل‌ها هم از هسته پاک شدند و نتیجه کار در ژوئن ۱۹۹۱ با نام نت/۲ عرضه شد که تقریباً یک سیستم‌عامل کامل بود که به صورت آزاد منتشر می‌شد.
کمی بعد نت/۲ توسط دو نفر و به صورت مجزا برای معماری اینتل ۸۰۳۸۶ پورت شد. یکی ۳۸۶بی‌اس‌دی بود که توسط ویلیام ژولیتز و دیگری یک نسخه انحصاری به نام بی‌اس‌دی/۳۸۶ بود که توسط BSDi برای این معماری پورت شده بودند. خود ۳۸۶بی‌اس‌دی عمر کمی داشت. اما نقش تاریخی بزرگی ایفا کرد و پایه و اساس سیستم‌عامل‌های فری‌بی‌اس‌دی و نت‌بی‌اس‌دی شد که این دو پروژه کمی بعد از ۳۸۶بی‌اس‌دی و از روی پچ‌کیت‌های غیررسمی آن به وجود آمده بودند.
اما BSDi کمی بعد توسط AT&T به دادگاه کشیده شد، چرا که AT&T معتقد بود که BSDi به‌طور غیرقانونی از کدهای AT&T استفاده کرده‌است. این دادگاه باعث شد تا سرعت توسعه مشتقات BSD نزدیک به دو سال آهسته شود، چرا که مالک کدها مشخص نبود. در نتیجه، زمینه برای توسعه یافته سیستم‌های مبتنی بر لینوکس فراهم شد، چرا که کدهای لینوکس مشکل نامشخص بودن مالک نداشتند. هرچند که 386BSD تا سال ۱۹۹۲ منتشر نشد، اما با این حال، لینوس توروالدز گفته بود که اگر وقتی که کار بر روی لینوکس را شروع کردم، 386BSD وجود داشت، شاید لینوکس هیچگاه به وجود نمی‌آمد.