BSD

BSD (Berkeley Software Distribution, uneori numită pe scurt Berkeley Unix) este numele unei distribuții UNIX dezvoltată și distribuită între anii 1977 și 1995 de Computer Systems Research Group (CSRG) de la Universitatea Berkeley din California.

BSD este o ramură directă a sistemului UNIX original dezvoltat de AT&T. În anii 1980 BSD a fost adoptată de o serie largă de vendori și distribuită sub forma unor variante proprietare precum DEC ULTRIX și Sun Microsystems SunOS. Deși aceste derivate proprietare au fost înlocuite în anii 1990 de UNIX System V Release 4 și OSF/1 (ambele incluzând cod sursă din BSD), versiunile BSD ulterioare au constituit o bază pentru o serie de derivate UNIX open-source, precum FreeBSD, NetBSD, OpenBSD. Dezvoltarea acestor sisteme continuă și în ziua de astăzi.

Istorie

PDP-11
Primele distribuții Unix de la Bell Labs în anii 1970 includeau cod sursă pentru sistemul de operare, permițând cercetătorilor din universități să-l modifice și să-l extindă. Primul sistem Unix la Berkeley a fost instalat pe un calculator PDP-11 în anul 1974.

O serie de alte universități au fost interesate de acest sistem, astfel încât în anul 1977 Bill Joy de la Berkeley a asamblat și început să distribuie primele benzi magnetice conținând noul sistem numit Berkeley Software Distribution (1BSD). 1BSD era bazat pe Sixth Edition Unix de la AT&T și conținea în plus un compilator Pascal și editorul de text ex.

A doua versiune BSD (2BSD) a apărut în anul 1978, incluzând o versiune îmbunătățită a sistemului, editorul de text vi și C shell.

Versiunea 2.9BSD a apărut în 1983 și a fost bazată pe Version 7 Unix. Cea mai recentă versiune a fost 2.11BSD din 1992. Munca de mentenanță continuă și în ziua de astăzi, ultimul patch a apărut în decembrie 2008.

VAX
Versiunea 2BSD a fost portată pe un calculator VAX în anul 1979 și a purtat numele de 3BSD. Succesul acesteia a fost un factor major în decizia Defense Advanced Research Projects Agency's (DARPA) pentru a fonda cercetarea grupului Computer Systems Research Group (CSRG) la Berkeley. Scopul acestei cercetări era dezvoltarea unei platforme UNIX standard. Astfel a apărut versiunea 4BSD în octombrie 1980 care aducea în plus capabilități de control al joburilor (job control), csh, delivermail (mai târziu va fi înlocuit de sendmail), un sistem mult îmbunătăți de semnale și biblioteca courses.

4.1BSD a apărut în iunie 1981, fiind urmată doi ani mai târziu (august 1983) de 4.2BSD. În această perioadă este dezvoltată și inclusă în distribuție prima stivă TCP/IP. Tot în această perioadă Bill Joy pleacă de la Berkeley și înființează compania Sun Microsystems. Rolul de leaderi ai dezvoltării distribuției este preluat de Mike Karels și Marshall Kirk McKusick.

4.3BSD
A apărut în iunie 1986 și marchează acceptarea oficială a variantei BSD a stivei TCP/IP de către agenția DARPA. Tot în această perioadă se renunță la calculatoarele VAX, care sunt înlocuite inițial de platforma Power 6/32 a firmei Computer Consoles Inc. (4.3BSD-Tahoe în iunie 1988). Codul dependent de platforma hardware este izolat în module specifice, deschizând astfel larg porțile portării sistemului pe orice tip de platformă hardware.

În iunie 1989 a apărut versiunea Networking Release 1 (Net/1), care a fost prima versiune distribuită gratuit sub Licență BSD și a fost urmată de versiunea 4.3BSD-Reno la începutul anului 1990.

În august 2006, revista Information Week a afirmat că 4.3BSD este cel mai bun software scris vreodată ("Greatest Software Ever Written").

Net/2 și probleme legale
Versiunea Net/2 a apărut în iunie 1991 și a cuprins o înlocuire masivă a codului AT&T din distribuție. Procesul de rescriere a durat optsprezece luni, și se estimează că numai un număr foarte mic de fișiere în kernel mai păstrează codul original de la AT&T.

Net/2 a fost baza a două porturi pe platforma Intel 386: 386BSD autor William Jolitz, și o variantă proprietară BSD/386 (redenumită mai târziu BSD/OS) a firmei Berkeley Software Design (BSDi). Deși a avut o viață sucrtă, 386BSD a constituit baza sistemelor NetBSD și FreeBSD unde a fost continuată munca inițial începută în 386BSD.

Firma BSDi a intrat imediat în conflict legal cu AT&T's Unix System Laboratories (USL). Procesul USL vs. BSDi a început în 1992 și a stopat distribuirea sistemului BSDi până când validitatea creanțelor de copyright sunt determinate.

Procesul a stopat sau încetinit dezvoltarea tuturor versiunilor de BSD cu aproximativ doi ani. Ambiguitatea legală creată de proces a fost unul din motivele pentru care Linus Torvalds a început dezvoltarea unui nou sistem UNIX de la zero.

4.4BSD
Procesul s-a încheiat în 1994 practic în favoarea celor de la Berkeley. Din peste 18.000 fișiere numai trei au fost scoase din distribuție, iar în șaptezeci au fost adăugate notițe de copyright USL. Un alt rezultat al procesului a fost că USL a fost pusă în imposibilitatea de a deschide în viitor procese similare pentru orice distribuitor BSD.

Versiunea 4.4BSD a apărut în iunie 1994 iar ultima distribuție BSD a apărut în 1995 sub numele de 4.4BSD-Lite Release 2. Niciun fel de cod AT&T nu este inclus în aceste versiuni.

Pe lângă sistemele de operare derivate direct din BSD, multe alte sisteme includ cod din aceste ultime două versiuni BSD apărute. De exemplu Microsoft Windows include cod TCP/IP și o serie de unelte de networking și comenzi din BSD. De asemenea, MAC OSX de la Apple este un derivativ direct BSD (via 4.4BSD-Lite2 și FreeBSD).

Tehnologie
BSD a fost prima distribuție UNIX care a inclus stiva de protocol TCP/IP. Pentru aplicații, stiva se prezintă sub forma unei biblioteci de sistem care poartă numele de Berkeley sockets. Aceasta integrează punctele de transfer de date (networking sockets) cu sistemul de file descriptors folosit în sistemul de fișiere. Devine astfel foarte ușor pentru o aplicație să trimită sau să primească date din rețea prin simple operații de citire sau scriere similar cu citirea sau scrierea unui fișier.

Astăzi, BSD este folosit în cercetarea universitară unde se testează o serie de tehnologii noi de comunicație și își găsește aplicabilitate în domeniul sistemelor embedded comerciale. Calitatea ridicată a codului și sistemul de documentare (pagini man) plasează distribuția ca un sistem favorit de cercetare și dezvoltare.

Natura permisivă a licenței sub care sistemul este distribuit, permite firmelor să distribuie cod proprietar adăugat sistemului, fără să fie nevoie să publice acest cod. Natura permisivă a licenței permite și dezvoltarea de produse open-source, licența este considerată ca fiind compatibilă cu multe alte licențe open-source.

BSD include și un layer de compatibilitate binară cu alte sisteme și arhitecturi de sistem. Astfel, este posibil să rulezi aplicații scrise și compilate pentru Linux direct pe BSD la viteză mare, fără un layer de emulare.

Sistemele BSD curente suportă o serie largă de standarde IEEE, ANSI, ISO și POSIX.

Descendenți principali

BSD a constituit baza unui număr larg de alte sistem precum FreeBSD și NetBSD. Acestea au fost derivate din 386BSD și 4.4BSD-Lite în anul 1993. OpenBSD a fost derivat în 1995 din NetBSD. Din aceste trei sisteme au fost derivate mai târziu o serie largă de alte sisteme precum DragonFly BSD, FreeSBIE, MirOS BSD, DesktopBSD și PC-BSD. Un număr de sisteme comerciale precum SunOS (Sun Microsystems) și Mac OS X (Apple Inc.) sunt bazate pe BSD sau descendenții săi.

Majoritatea descendenților BSD sunt open-source, o excepție notabilă fiind Mac OS X. Alte sisteme proprietare bazate pe BSD sunt Dynix (Sequent), NeXTSTEP (NeXT), Ultrix (DEC) și OSF/1 AXP (astăzi cunoscut sub numele de Tru64 UNIX).

Referințe

Legături externe
 A timeline of BSD and Research UNIX
 UNIX History – History of UNIX and BSD using diagrams
 The Design and Implementation of the 4.4BSD Operating System
 The Slab Allocator: an object-caching kernel memory allocator  Bonwick, 1994.

Variante Unix