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

BSD s-a dezvoltat din Unix-ul din Bell-Labs

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.[1]

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").[2]

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.[3]

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.[4] 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

Bar chart showing the proportion of users of each BSD variant from a BSD usage survey in 2005.[5] Each participant was permitted to indicate multiple BSD variants

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

  1. ^ Mueller, Walter (). „2.11BSD Patch 446+447; fixes for ulrem,umount,tar,tcsh,ps,vmstat,apropos,pstat,rk”. www.classiccmp.org. Arhivat din original la . Accesat în . 
  2. ^ Babcock, Charles (). „What's The Greatest Software Ever Written?”. InformationWeek. Arhivat din original la . Accesat în . 
  3. ^ Linksvayer, Mike (). „The Choice of a GNU Generation - An Interview With Linus Torvalds”. Meta magazine. Accesat în . 
  4. ^ „BSD Code in Windows”. everything2.com. . Accesat în . 
  5. ^ „BSD Usage Survey” (PDF). BSD Certification Group. . Accesat în . 

Legături externe

  • en A timeline of BSD and Research UNIX
  • en UNIX History – History of UNIX and BSD using diagrams
  • en The Design and Implementation of the 4.4BSD Operating System
  • en The Slab Allocator: an object-caching kernel memory allocator Bonwick, 1994.
  • v
  • d
  • m
BSD
Oameni
  • Bob Fabry
  • Keith Bostic
  • Marshall Kirk McKusick
  • Michael J. Karels
  • Bill Joy
  • Samuel Leffler
  • Jordan Hubbard
  • Theo de Raadt
  • Poul-Henning Kamp
  • Matthew Dillon
  • Ozalp Babaoglu
  • Lynne și William Jolitz
Derivative
Active
Discontinuate
Companii
  • iXsystems
Alte teme
  • Categorie Categorie
  • Commons Commons
  • v
  • d
  • m
sisteme de operare Unix și Unix-like și nivele de compatibilitate
Sisteme de operare
Nivele de compatibilitate
  • UserLAnd Technologies
  • Windows Subsystem for Linux
  • Italics indică ramuri discontinuate . Categorie Categorie
  • Commons Commons
  • v
  • d
  • m
General
  • Termeni alternativi pentru programe libere
  • Compararea programelor sursă deschisă și cu sursă închisă
  • Compararea serviciilor de găzduire a codului sursă
  • Software liber
  • Cataloage cu proiecte de programe libere
  • Gratis versus liber
  • Suport pe termen lung
  • Software cu sursă deschisă
  • Dezvoltarea programelor cu sursă deschisă
  • Contur
  • Cronologia
Pachete
program
  • Audio
  • Bioinformatica
  • Codecuri
  • Gestiunea configurării
  • Drivere
    • Grafică
    • Fără fir
  • Geofizică
  • Medicină
  • Matematică
  • Suite Birou
  • Sisteme de operare
  • Limbaje de Programare
  • Rutare
  • Televiziune
  • Jocuri video
  • Aplicații web
    • E-comerț
  • Aplicații Android
  • Aplicații iOS
  • Comerciale
  • Înregistrate
  • Anterior proprietare
  • Anterior cu sursă deschisă
Comunitate
  • Free software movement
  • History
  • Open-source-software movement
  • Organizații
  • Evenimente
Licențe
  • AFL
  • Apache
  • APSL
  • Artistic
  • Beerware
  • BSD
  • Creative Commons
  • CDDL
  • EPL
  • Free Software Foundation
  • ISC
  • MIT
  • MPL
  • Python
  • Python Software Foundation License
  • Shared Source Initiative
  • Sleepycat
  • Unlicense
  • WTFPL
  • zlib
Tipuri și
standarte
  • Compararea licențelor
  • Contributor License Agreement
  • Copyleft
  • Debian Free Software Guidelines
  • Definition of Free Cultural Works
  • Definiția surselor deschise
  • Definiția unui program liber
  • Domeniul public
  • Licență liberă
  • Licență pentru surse deschise
  • Licență program permisivă
  • Licență virală
Provocari
  • Redenumirea aplicațiilor Mozilla
  • Calcul de încredere
  • Conflictele SCO/Linux
  • Drivere de dispozitive proprietare
  • Gestiunea drepturilor digitale
  • Patente program
  • Programe de dizpozitiv proprietare
  • Proliferarea Licențelor
  • Restricții electronice
  • Securitatea programelor
  • Software proprietar
Teme înrudite
  • Portal Portal
  • Categorie Categorie
  • v
  • d
  • m
General
  • Avocatura
  • Compararea
  • Ingineria criminalistică
  • Istoria
  • Dezvoltare de entuziaști
  • Lista
  • Cronologia
  • Cota de utilizare
  • Compararea funcționalităților utilizator
Variante
  • Sistem de operare pe disc
  • Sistem de operare distribuit
  • Sistem de operare încorporat
  • Sistem de operare mobil
  • Sistem de operare de rețea
  • Sistem de operare orientat obiect
  • Sistem de operare în timp real
  • Sistem de operare pentru supercalculatoare
Nucleu
Architecturi
Componente
  • Driver
  • Modul de nucleu încărcabil
  • Spațiul utilizatorului
Gestionarea Proceselor
Concepte
Algoritmi de
planificare
  • Preemptivitate cu prioritate fixă
  • Coadă de răspuns cu mai multe nivele
  • Planificare ciclică
  • Cel mai concis lucru e urmator
Gestionarea Memoriei,
protecția resurselor
  • Eroare magistrală
  • Eroare generală de protecție
  • Protecția memoriei
  • Paginare
  • Inel de protecție
  • Eroare de segmentare
  • Memorie virtuală
Acces la stocare,
sisteme de fișiere
  • Încărcător de sistem
  • Defragmentare
  • Fișierul dispozitivului
  • Atribut al fișierului
  • Inod
  • Jurnal
  • Partiție
  • Sistem de fișiere virtual
  • Librărie de benzi virtuală
Concepte sprijin
Control de autoritate