bsd | ||
---|---|---|
Unix-lignende del | ||
Generell informasjon | ||
programtype | Unix | |
utvikler | Computer Systems Research Group, University of California, Berkeley | |
Utviklingsmodell | Historisk proprietær programvare; overgang til fri programvare siden 1991. | |
Første utgivelse | 1977; 41 år siden. | |
Tillatelse | bsd | |
Språk | Engelsk | |
Teknisk informasjon | ||
Planlagt inn | C | |
Cellekjernen | Monolitisk | |
Støttede plattformer | PDP-11 , VAX , Intel 80386 | |
Versjoner | ||
Siste stabile versjon | 4.4BSD-Lite 2/1995 for 26 år siden. () | |
Unix-lignende serie | ||
Unix | bsd | FreeBSD , NetBSD , OpenBSD , DragonFlyBSD |
Linker | ||
Offesiell nettside | ||
Berkeley Software Distribution eller BSD (på spansk, "Berkeley-programvaredistribusjon") [ 1 ] var et operativsystem avledet fra Unix som ble født fra bidragene gitt til dette systemet fra University of California i Berkeley .
I de første årene av Unix-systemet ga dets skapere, Bell Laboratories i AT&T -selskapet , University of Berkeley i California og andre universiteter autorisasjon til å bruke kildekoden og tilpasse den til deres behov. I løpet av 1970- og 1980 -tallet brukte Berkeley systemet for sin forskning på operativsystemer. Da AT&T trakk tilbake universitetets tillatelse til å bruke den av kommersielle årsaker, fremmet universitetet opprettelsen av en Unix-inspirert versjon ved å bruke deres innspill, tillot deretter distribusjon for akademiske formål og etter en tid redusert til minimumsbegrensninger angående kopiering, distribusjon eller modifikasjoner. .
Noen etterkommere operativsystemer til systemet utviklet av Berkeley er SunOS , FreeBSD , NetBSD og OpenBSD . Disse har på sin side blitt brukt av proprietære operativsystemer, inkludert Apples macOS og iOS , som ble avledet fra dem, [ 2 ] og Microsoft Windows , som brukte (minst) noe av sin TCP/IP-kode, at den var lovlig. [ 3 ] FreeBSD - kode ble også brukt til å lage operativsystemet for PlayStation 4 [ 4 ] og Nintendo Switch . [ 5 ] [ 6 ]
BSD har også gitt store bidrag innen operativsystemer generelt, for eksempel:
De første Unix-distribusjonene fra Bell Labs på 1970-tallet inkluderte kildekoden til operativsystemet, slik at utviklere ved universiteter kunne endre og utvide Unix. Berkeleys første Unix-system var PDP-11, som ble installert i 1974, og har blitt brukt av informatikkavdelingen til forskning siden den gang. Andre universiteter ble interessert i Berkeley-programvaren, og i 1977 spilte Bill Joy, den gang en bachelorstudent ved Berkeley, inn og sendte ut bånd av den første Berkeley Software Distribution (BSD).
BSD 1 var et tillegg til den sjette utgaven av Unix, snarere enn et komplett operativsystem. Den var hovedsakelig sammensatt av en Pascal-kompilator og en tekstredigerer laget av Joy selv kalt "ex".
BSD 2 ble utgitt i 1978, den inkluderte oppdaterte versjoner av BSD 1 pluss to nye programmer laget av Joy som overlever på Unix-systemer til i dag. Vi-tekstredigereren og C-skallet. Påfølgende versjoner av BSD 2 inneholdt porter av BSD-distribusjonene basert på VAX -arkitekturen , for å gjøre dem kompatible med PDP-11-arkitekturen.
BSD 2.9 fra 1983 inkluderer kode fra BDS 4.1c og var den første distribusjonen som ble ansett for å være et komplett operativsystem (en modifikasjon av Unix 7). Den siste distribusjonen, 2.11BSD, ble utgitt i 1992, og ved hjelp av frivillige fortsatte den å bli oppdatert til 2003.
Utgitt i november 1980, tilbød den mange forbedringer i forhold til 3BSD, inkludert spesielt kontrollarbeidet til den forrige versjonen av csh, deliverymail (nåværende sendmail), "pålitelige" signaler og Curses-programmeringsbiblioteket.
BSD 4.1 , utgitt i juni 1981, var svaret på kritikk av BSD sammenlignet med det dominerende operativsystemet for VAX-arkitekturen, VMS. BSD 4.1 ble forbedret av Bill Joy inntil den oppnådde de samme funksjonene som VMS. Distribusjonen skulle opprinnelig hete BSD 5, men ble endret for å unngå mulig forvirring med utgivelsen av AT&Ts Unix System V.
BSD 4.2 tok to år å implementere, og inneholdt store forbedringer. Tre mellomversjoner dukket opp før den offisielle utgivelsen. 4.1a inkorporerte en modifisert versjon av BBNs foreløpige TCP/IP-implementering. 4.1b inkluderte det nye Berkeley Fast File System, implementert av Marshall Kira McKusick, og 4.1c var en intern versjon brukt i løpet av de siste månedene av 4.2BSD-utvikling. Den offisielle 4.2BSD-distribusjonen ble utgitt i august 1983. Det var den første BSD-distribusjonen siden Bill Joy forlot og var med å grunnlegge Sun Microsystems. Mike Karels og Marshall Kira MacKusick tok kontroll over prosjektet fra det tidspunktet. I et notat fremheves debuten til BSD-demonen og maskoten, gjennom en tegning laget av McKusick som dukket opp på omslagene til de trykte manualene distribuert av USENIX.
BSD4.3 ble utgitt i juni 1986. Hovedendringene var forbedringer av mange av de nye bidragene fra BSD 4.2 som ikke ble forbedret slik BSD4.3-koden var. Før utgivelsen avviket TCP/IP-implementeringen i BSD betydelig fra den offisielle laget av BBN. Det er derfor, etter mange tester utført av DARPA, konkluderte den med at versjonen inkludert i BSD 4.2 var overlegen den nye, og at den derfor burde beholdes i den nye distribusjonen. Etter versjon 4.3 ble det bestemt at fremtidige versjoner skulle bygges basert på en annen arkitektur enn den da gamle VAX. På den tiden virket Power 6/32, utviklet av Computer Consoles Inc, som en plattform med mer fremtid, selv om den snart ble forlatt av utviklerne. Imidlertid beviste BSDs port til denne plattformen, BSD 4.3-Tahoe, verdien av å skille maskinavhengig og maskinuavhengig kode, noe som muliggjør fremtidig portabilitet.
Inntil dette tidspunktet hadde alle versjoner av BSD innlemmet AT&T proprietær kode , som krevde lisenser for å bruke. Disse ble svært dyre, så mange eksterne enheter uttrykte sin interesse for en separat distribusjon av den proprietære nettverkskoden utviklet av AT&T, slik at den ikke ville være underlagt betaling av disse lisensene. Dette ble oppnådd med Network Tape 1 (Net/1), utgitt i 1989 og opprettet uten proprietær AT&T-kode som ble fritt distribuert under vilkårene i den tillatelige BSD-lisensen.
4.3BSD-Reno ble utgitt i 1990. Det var en internbruksversjon som ble brukt under byggingen av 4.4BSD. Denne distribusjonen beveget seg tydelig mot POSIX-kompatibilitet, og ifølge noen bort fra BSD-filosofien, siden POSIX er basert på System V.
Etter Net/1 foreslo Keith Bostic at flere ikke-AT&T-relaterte deler av BSD ble utgitt under samme Net/1-lisens. Med dette i tankene startet han et prosjekt som hadde som mål å implementere mange av standard Unix-verktøyene uten AT&T-kode. I løpet av 18 måneder ble alle AT&Ts proprietære verktøy erstattet, og bare noen få proprietære filer var igjen i kjernen. Disse filene ble til slutt eliminert, noe som ga opphav til Net/2, praktisk talt et komplett operativsystem og også fritt distribuerbart.
Net/2 var grunnlaget for to uavhengige BSD-porter for Intels 80386-arkitektur, William Jollizs 386BSD og Berkeley Software Designs (BSDi) proprietære BSD/386 (senere omdøpt til BSD/OS). 386BSD var kortvarig, men det var utgangspunktet for FreeBSD og NetBSD.
BSDi hadde snart et juridisk problem med AT&T, eiere av rettighetene til System V og Unix-merket. Søksmålet ble anlagt i 1992, under påbud om ikke å distribuere Net/2 før gyldigheten av kravene kunne fastslås.
Søksmålet bremset utviklingen av frie BSD-etterkommere i omtrent to år, hvor deres juridiske status var i tvil, og muligens på grunn av dette ble andre Unix-baserte systemer mer fremtredende. Linux og 386BSD startet utviklingen samtidig, og til og med Linus Torvalds sa at hvis det hadde vært et gratis Unix-basert operativsystem for 386-arkitekturen, ville han sannsynligvis ikke ha laget Linux. Selv om det kan diskuteres hvilken effekt det ville hatt på programvarefeltet, er det sikkert at det ville vært betydelig.
Søksmålet ble avsluttet i januar 1994 til fordel for Berkeley. Av de 18 000 filene i distribusjonen, ble bare tre fjernet og 70 ble modifisert for å vise AT&Ts eiendomsrettigheter.
I juni 1994 ble BSD 4.4 utgitt med to versjoner: en fritt distribuerbar kalt BSD 4.4-Lite, uten proprietær kode, og BSD 4.4-Encumbered, kun for AT&T-lisensinnehavere.
Den siste distribusjonen opprettet av Berkeley var BSD 4.4-Lite Release 2, utgitt i 1995, etter at CSRG ble oppløst og BSD-utviklingen i Berkeley opphørte. Siden den gang har mange distribusjoner basert på BSD 4.4 dukket opp, slik som FreeBSD , OpenBSD og NetBSD .
I tillegg har den tillatelige BSD-lisensen tillatt andre operativsystemer, både gratis og proprietære, å inkorporere BSD-kode. For eksempel har Microsoft Windows brukt BSD-avledet kode i implementeringen av TCP/IP, og bruker rekompilerte versjoner av BSD-kommandolinjen for nettverksbygging. Darwin , det eksperimentelle systemet som Mac OS X er bygget på, er også delvis avledet fra FreeBSD 5 og Mach -kjernen . Andre kommersielle Unix-baserte systemer som Solaris bruker også BSD-kode.
Berkeley Unix var den første Unix som inkluderte biblioteker som var kompatible med Internet Protocol- arkitekturen : Berkeley sockets . En Unix-implementering av IPs forgjenger, ARPAnet NCP , med FTP- og Telnet -klienter ble produsert ved University of Illinois i 1975, og var tilgjengelig fra Berkeley. [ 7 ] [ 8 ] Imidlertid tvang mangelen på minne i PDP-11 til komplisert design og ytelsesproblemer. [ 9 ]
Ved å integrere sockets med Unix-operativsystemets filbeskrivelser ble det nesten like enkelt å lese og skrive data over et nettverk som det var å få tilgang til en disk. AT&T Lab ga til slutt ut sitt eget STREAMS- bibliotek , som inkorporerte mye av den samme funksjonaliteten i en annerledes arkitektonert programvarestabel, men den brede distribusjonen av det eksisterende sockets-biblioteket reduserte virkningen av det nye API -et . Tidlige versjoner av BSD ble brukt til å danne Sun Microsystems ' SunOS , og grunnla den første bølgen av populære Unix-arbeidsstasjoner.
Noen BSD-operativsystemer kan kjøre innebygd programvare fra flere andre operativsystemer på samme dataarkitektur , ved å bruke et binært kompatibilitetslag . Dette er mye enklere og raskere enn å emulere ; for eksempel lar den applikasjoner designet for Linux kjøre effektivt i full hastighet. Dette gjør BSD-er ikke bare egnet for servermiljøer, men også for arbeidsstasjoner, gitt den økende tilgjengeligheten av kommersiell eller lukket kildekode Linux-bare programvare. Dette tillater også administratorer å migrere eldre kommersielle applikasjoner, som kan ha støttet bare kommersielle Unix-varianter, til et mer moderne operativsystem, og beholde funksjonaliteten til disse applikasjonene til de kan erstattes av et bedre alternativ.
Gjeldende varianter av BSD-operativsystemet støtter mange av IEEE- , ANSI- , ISO- og POSIX- standardene , samtidig som de opprettholder det meste av den tradisjonelle BSD-atferden. I likhet med AT&T Unix er BSD-kjernen monolitisk , noe som betyr at enhetsdriverne i kjernen kjører i privilegert modus , som en del av operativsystemkjernen.