Berkeley Software Distribution
| bsd | ||
|---|---|---|
| Unix-lignende del | ||
|
| ||
| Generel information | ||
| programtype | Unix | |
| Udvikler | Computer Systems Research Group, University of California, Berkeley | |
| Udviklingsmodel | Historisk proprietær software; overgang til gratis software siden 1991. | |
| Første udgivelse | 1977; 41 år siden. | |
| Licens | bsd | |
| Sprog | engelsk | |
| Teknisk information | ||
| Planlagt ind | C | |
| Nucleus | Monolitisk | |
| Understøttede platforme | PDP-11 , VAX , Intel 80386 | |
| Versioner | ||
| Seneste stabile version | 4.4BSD-Lite 2/1995 for 26 år siden. () | |
| Unix-lignende serie | ||
| Unix | bsd | FreeBSD , NetBSD , OpenBSD , DragonFlyBSD |
| Links | ||
Berkeley Software Distribution eller BSD (på spansk, "Berkeley-softwaredistribution") [ 1 ] var et styresystem afledt af Unix , som blev født ud fra bidragene fra University of California i Berkeley til dette system .
I de tidlige år af Unix-systemet gav dets skabere, Bell Laboratories fra AT&T -virksomheden tilladelse til University of Berkeley i Californien og andre universiteter til at bruge kildekoden og tilpasse den til deres behov. I løbet af 1970'erne og 1980'erne brugte Berkeley systemet til sin forskning i operativsystemer. Da AT&T trak universitetets tilladelse til at bruge det tilbage af kommercielle årsager, fremmede universitetet oprettelsen af en Unix-inspireret version ved hjælp af deres input, tillod derefter distributionen til akademiske formål og efter nogen tid reduceret til minimumsbegrænsninger med hensyn til kopiering, distribution eller ændring. .
Nogle efterkommer operativsystemer til systemet udviklet af Berkeley er SunOS , FreeBSD , NetBSD og OpenBSD . Disse er til gengæld blevet brugt af proprietære operativsystemer, herunder Apples macOS og iOS , som blev afledt af dem, [ 2 ] og Microsoft Windows , som brugte (i det mindste) noget af dets TCP/IP-kode, at det var lovlig. [ 3 ] FreeBSD - kode blev også brugt til at skabe operativsystemet til PlayStation 4 [ 4 ] og Nintendo Switch . [ 5 ] [ 6 ]
BSD har også ydet store bidrag inden for operativsystemer generelt, såsom:
- Efterspørgselsindstillet virtuel hukommelsesstyring.
- Jobkontrol.
- Det hurtige filsystem .
- TCP/IP- socket - protokollen , der danner grundlaget for internettet (næsten alle TCP-implementeringer stammer fra 4.4 BSD-Lite ).
Historie
Begyndende med PDP-11
De første Unix-distributioner fra Bell Labs i 1970'erne inkluderede kildekoden til operativsystemet, hvilket gjorde det muligt for udviklere på universiteter at ændre og udvide Unix. Berkeleys første Unix-system var PDP-11, som blev installeret i 1974 og har været brugt af datalogiafdelingen til forskning lige siden. Andre universiteter blev interesserede i Berkeley-softwaren, og i 1977 optog og sendte Bill Joy, dengang en bachelorstuderende ved Berkeley, bånd af den første Berkeley Software Distribution (BSD).
BSD 1 var en tilføjelse til den sjette udgave af Unix, snarere end et komplet operativsystem. Det var hovedsageligt sammensat af en Pascal-kompiler og en teksteditor skabt af Joy selv kaldet "ex".
BSD 2 blev udgivet i 1978, den inkluderede opdaterede versioner af BSD 1 plus to nye programmer skabt af Joy, der overlever på Unix-systemer den dag i dag. vi-teksteditoren og C-skallen. Efterfølgende versioner af BSD 2 indeholdt porte af BSD-distributionerne baseret på VAX -arkitekturen for at gøre dem kompatible med PDP-11-arkitekturen.
BSD 2.9 fra 1983 indeholder kode fra BDS 4.1c og var den første distribution, der anses for at være et komplet operativsystem (en modifikation af Unix 7). Den seneste distribution, 2.11BSD, blev udgivet i 1992, og med hjælp fra frivillige fortsatte den med at blive opdateret indtil 2003.
4BSD
Udgivet i november 1980 tilbød den mange forbedringer i forhold til 3BSD, herunder især kontrolarbejdet af den tidligere version af csh, deliverymail (nuværende sendmail), "pålidelige" signaler og Curses-programmeringsbiblioteket.
BSD 4.1 , udgivet i juni 1981, var svaret på kritik af BSD i sammenligning med det dominerende operativsystem til VAX-arkitekturen, VMS. BSD 4.1 blev forbedret af Bill Joy, indtil den opnåede de samme funktioner som VMS. Distributionen skulle oprindeligt hedde BSD 5, men blev ændret for at undgå mulig forvirring med udgivelsen af AT&T's Unix System V.
BSD 4.2 tog to år at implementere og indeholdt store forbedringer. Tre mellemliggende versioner dukkede op før dens officielle udgivelse: 4.1a inkorporerede en modificeret version af BBN's foreløbige TCP/IP-implementering. 4.1b inkluderede det nye Berkeley Fast File System, implementeret af Marshall Kira McKusick, og 4.1c var en intern version brugt i de sidste måneder af 4.2BSD-udvikling. Den officielle 4.2BSD-distribution blev udgivet i august 1983. Det var den første BSD-distribution siden Bill Joy forlod og var med til at stifte Sun Microsystems. Mike Karels og Marshall Kira MacKusick tog kontrol over projektet fra det tidspunkt. I en note fremhæves debuten af BSD-dæmonen og maskotten gennem en tegning lavet af McKusick, der dukkede op på forsiden af de trykte manualer distribueret af USENIX.
BSD4.3 blev udgivet i juni 1986. Dens vigtigste ændringer var forbedringer af mange af de nye bidrag fra BSD 4.2, som ikke blev forbedret, som BSD4.3-koden var. Før dens udgivelse afveg TCP/IP-implementeringen indeholdt i BSD betydeligt fra den officielle lavet af BBN. Derfor konkluderede den, efter mange test udført af DARPA, at versionen inkluderet i BSD 4.2 var den nye overlegen, og at den derfor skulle beholdes i den nye distribution. Efter version 4.3 blev det bestemt, at fremtidige versioner skulle bygges ud fra en anden arkitektur end den dengang gamle VAX. På det tidspunkt virkede Power 6/32, udviklet af Computer Consoles Inc, som en platform med mere fremtid, selvom den snart blev forladt af udviklerne. BSD's port til denne platform, BSD 4.3-Tahoe, beviste imidlertid værdien af at adskille maskinafhængig og maskinuafhængig kode, hvilket muliggør fremtidig portabilitet.
Indtil dette tidspunkt havde alle versioner af BSD inkorporeret AT&T proprietær kode , som krævede licenser for at bruge. Disse blev meget dyre, så mange eksterne enheder udtrykte deres interesse i en separat distribution af den proprietære netværkskode udviklet af AT&T, så den ikke ville være underlagt betaling af disse licenser. Dette blev opnået med Network Tape 1 (Net/1), udgivet i 1989 og skabt uden proprietær AT&T-kode, der blev frit distribueret under betingelserne i den tilladelige BSD-licens.
4.3BSD-Reno blev udgivet i 1990. Det var en version til intern brug, der blev brugt under opbygningen af 4.4BSD. Denne distribution bevægede sig klart i retning af POSIX-kompatibilitet og, ifølge nogle, væk fra BSD-filosofien, da POSIX er baseret på System V.
Net/2 og juridiske spørgsmål
Efter Net/1 foreslog Keith Bostic, at flere ikke-AT&T-relaterede sektioner af BSD blev frigivet under samme Net/1-licens. Med dette i tankerne startede han et projekt, der havde til formål at implementere mange af standard Unix-værktøjer uden AT&T-kode. Inden for 18 måneder var alle AT&T's proprietære hjælpeprogrammer afløst, og kun nogle få proprietære filer var tilbage i kernen. Disse filer blev til sidst elimineret, hvilket gav anledning til Net/2, praktisk talt et komplet operativsystem og også frit distribuerbart.
Net/2 var grundlaget for to uafhængige BSD-porte til Intels 80386-arkitektur, William Jolliz's 386BSD og Berkeley Software Designs (BSDi) proprietære BSD/386 (senere omdøbt til BSD/OS). 386BSD var kortvarig, men det var udgangspunktet for FreeBSD og NetBSD.
BSDi havde snart et juridisk problem med AT&T, ejere af rettighederne til System V og Unix-mærket. Retssagen blev anlagt i 1992 under påbud om ikke at distribuere Net/2, før gyldigheden af kravene kunne fastslås.
Retssagen bremsede udviklingen af frie BSD-efterkommere i omkring to år, hvor deres juridiske status var i tvivl, og muligvis på grund af dette blev andre Unix-baserede systemer mere fremtrædende. Linux og 386BSD startede udviklingen på samme tid, og selv Linus Torvalds sagde, at hvis der havde været et gratis Unix-baseret styresystem til 386-arkitekturen, ville han sandsynligvis ikke have skabt Linux. Selvom det kan diskuteres, hvilken effekt det ville have haft på softwareområdet, er det sikkert, at det ville have været væsentligt.
4.4BSD og efterkommere
Retssagen sluttede i januar 1994 til fordel for Berkeley. Af de 18.000 filer, der var indeholdt i distributionen, blev kun tre fjernet, og 70 blev ændret for at vise AT&T's ejendomsrettigheder.
I juni 1994 blev BSD 4.4 udgivet med to versioner: en frit distribuerbar kaldet BSD 4.4-Lite, uden proprietær kode, og BSD 4.4-Encumbered, kun for AT&T-licenstagere.
Den sidste distribution skabt af Berkeley var BSD 4.4-Lite Release 2, udgivet i 1995, efter at CSRG blev opløst og BSD-udviklingen i Berkeley ophørte. Siden da er mange distributioner baseret på BSD 4.4 dukket op, såsom FreeBSD , OpenBSD og NetBSD .
Derudover har den tilladelige BSD-licens givet andre operativsystemer, både gratis og proprietære, mulighed for at inkorporere BSD-kode. For eksempel har Microsoft Windows brugt BSD-afledt kode i sin implementering af TCP/IP og bruger genkompilerede versioner af BSD-kommandolinjen til netværk. Darwin , det eksperimentelle system, som Mac OS X er bygget på, stammer også delvist fra FreeBSD 5 og Mach -kernen . Andre kommercielle Unix-baserede systemer som Solaris bruger også BSD-kode.
Teknologi
Berkeley sockets
Berkeley Unix var den første Unix til at inkludere biblioteker kompatible med Internet Protocol arkitekturen : Berkeley sockets . En Unix-implementering af IP's forgænger, ARPAnet NCP , med FTP- og Telnet -klienter blev produceret på University of Illinois i 1975 og var tilgængelig fra Berkeley. [ 7 ] [ 8 ] Men manglen på hukommelse i PDP-11 tvang et kompliceret design og ydeevneproblemer. [ 9 ]
Ved at integrere sockets med Unix-operativsystemets filbeskrivelser blev det næsten lige så nemt at læse og skrive data over et netværk , som det var at få adgang til en disk. AT&T Lab udgav til sidst sit eget STREAMS- bibliotek , som inkorporerede meget af den samme funktionalitet i en anderledes arkitektoneret softwarestak, men den brede distribution af det eksisterende sockets-bibliotek reducerede virkningen af den nye API . Tidlige versioner af BSD blev brugt til at danne Sun Microsystems ' SunOS , der grundlagde den første bølge af populære Unix-arbejdsstationer.
Binær kompatibilitet
Nogle BSD-operativsystemer kan køre indbygget software fra flere andre operativsystemer på den samme computerarkitektur ved hjælp af et binært kompatibilitetslag . Dette er meget enklere og hurtigere end at emulere ; for eksempel tillader det programmer designet til Linux at køre effektivt ved fuld hastighed. Dette gør BSD'er ikke kun velegnede til servermiljøer, men også til arbejdsstationer, givet den stigende tilgængelighed af kommerciel eller lukket kildekode, kun Linux-software. Dette giver også administratorer mulighed for at migrere forældede kommercielle applikationer, som muligvis kun har understøttet kommercielle Unix-varianter, til et mere moderne operativsystem, idet de bevarer funktionaliteten af disse applikationer, indtil de kan erstattes af et bedre alternativ.
Standarder
Nuværende varianter af BSD-operativsystemet understøtter mange af IEEE- , ANSI- , ISO- og POSIX -standarderne , mens de bibeholder det meste af den traditionelle BSD-adfærd. Ligesom AT&T Unix er BSD-kernen monolitisk , hvilket betyder, at enhedsdriverne i kernen kører i privilegeret tilstand , som en del af operativsystemkernen.
Referencer
- ↑ "Hvorfor du skal bruge en BSD-stillicens til dit Open Source-projekt" . FreeBSD- projektet . BSD (Berkeley Standard Distribution) . Hentet 3. august 2021 .
- ↑ "Apple Kernel Programming Guide: BSD Overview" . Hentet 27. marts 2021 .
- ↑ "Faktisk bruger Windows noget BSD-kode" . Arkiveret fra originalen den 25. marts 2018 . Hentet 24. marts 2018 .
- ↑ "Open Source-software brugt i PlayStation 4" . Arkiveret fra originalen den 12. december 2017 . Hentet 3. oktober 2019 .
- ↑ «任天堂製品に関連するオープンソースソフトウェアのソースコード www.nintendo.co.jp . Arkiveret fra originalen den 26. juli 2020 . Hentet 26. juli 2020 .
- ↑ Cao (8. marts 2017). "Nintendo Switch kører FreeBSD" . FreeBSDNews.com (på amerikansk engelsk) . Arkiveret fra originalen den 26. juli 2020 . Hentet 26. juli 2020 .
- ^ Chesson, G.L. (1976). Netværket Unix-systemet. ACM SIGOPS Operating Systems Review 9 (5): 60-66. doi : 10.1145/1067629.806522 .
- ↑ RFC 681
- ↑ Quarterman, John S.; Silberschatz, Abraham; Peterson, James L. (december 1985). "4.2BSD og 4.3BSD som eksempler på Unix-systemet". Computing Surveys 17 (4): 379-418. S2CID 5700897 . doi : 10.1145/6041.6043 . Ukendt parameter ignoreret ( hjælp )
|citeseerx=
Bibliografi
- Samuel J. Leffler, Marshall K. McKusick, Michael J. Karels, John S. Quarterman, The Design and Implementation of the 4.3BSD UNIX Operating System (Addison Wesley, november, 1989; ISBN 978-0-201-06196-3 )
- Marshall K. McKusick, Keith Bostic, Michael J. Karels, John S. Quartermain, The Design and Implementation of the 4.4BSD Operating System (Addison Wesley, 1996; ISBN 978-0-201-54979-9 )
- Marshall K. McKusick, George V. Neville-Neil, The Design and Implementation of the FreeBSD Operating System (Addison Wesley, 2. august 2004; ISBN 978-0-201-70245-3 )
Yderligere bibliografi
- McKusick, Marshall Kirk (januar 1999). "Tyve år med Berkeley Unix – Fra AT&T-ejet til frit videredistribuerbart" . I DiBona, Chris; Ockman, Sam; Stone, Mark, red. Open Sources: Voices from the Revolution (på engelsk) (første udgave). O'Reilly. ISBN 978-1-56592-582-3 .
- Peter H. Salus, The Daemon, the GNU & The Penguin (Reed Media Services, 1. september 2008 ; ISBN 978-0-9790342-3-7 )
- Peter H. Salus, A Quarter Century of UNIX ( Addison Wesley, 1. juni 1994; ISBN 978-0-201-54777-1 )
- Peter H. Salus, Casting the Net ( Addison-Wesley, marts 1995; ISBN 978-0-201-87674-1 )
Se også
Portal: Gratis software . Indhold relateret til fri software .- BSD-licens
- bsd
- Næste skridt
- FreeBSD
- NetBSD
- OpenBSD
- DragonFlyBSD
Eksterne links
- TUHS, UNIX Heritage Society indeholder dokumentation og kildekode for adskillige ældre versioner af UNIX (både ATT og BSD og varianter).
- FreeBSD på spansk
Wikimedia Commons er vært for en mediekategori for Berkeley Software Distribution .