Distribuce softwaru Berkeley - Berkeley Software Distribution
Vývojář | Výzkumná skupina počítačových systémů |
---|---|
Napsáno | C |
Rodina OS | Původně Unix , později unixový |
Pracovní stav | Přerušeno |
Zdrojový model | Původně dostupný zdroj , později open-source |
První vydání | 1977 |
Konečné vydání | 4.4-Lite2 / 1995 |
K dispozici v | Angličtina |
Platformy | PDP-11 , VAX , Intel 80386 |
Typ jádra | Monolitické |
Uživatelská země | BSD |
Výchozí uživatelské rozhraní |
Unixový shell |
Licence | BSD |
BSD nebo Berkeley Standardní Distribution ( BSD ) je přerušeno operační systém založený na výzkumném Unix , vyvíjen a distribuován od Computer Systems Research Group (CSRG) na University of California, Berkeley . Termín „BSD“ běžně označuje jeho potomky, včetně FreeBSD , OpenBSD , NetBSD a DragonFly BSD .
BSD byl původně nazýván Berkeley Unix, protože byl založen na zdrojovém kódu původního Unixu vyvinutého v Bell Labs . V 80. letech 20. století byla BSD široce přijata dodavateli pracovních stanic ve formě proprietárních unixových variant, jako jsou DEC Ultrix a Sun Microsystems SunOS, díky svému tolerantnímu licencování a obeznámenosti s mnoha zakladateli a inženýry technologických společností.
Ačkoli tyto proprietární deriváty BSD byly v devadesátých letech z velké části nahrazeny UNIX SVR4 a OSF/1 , pozdější verze poskytly základ pro několik open-source operačních systémů včetně FreeBSD , OpenBSD , NetBSD , DragonFly BSD , Darwin a TrueOS . Tito, podle pořadí, byly použity proprietárními operačními systémy, včetně Apple ‚s MacOS a iOS , které z nich odvozených a Microsoft Windows , který používal (přinejmenším) v rámci své TCP / IP kód, který byl legální. Kód z FreeBSD byl také použit k vytvoření operačního systému pro PlayStation 4 a Nintendo Switch .
Dějiny
Mezi nejčasnější distribuce Unixu z Bell Labs v roce 1970 zahrnovaly zdrojový kód pro operační systém, který umožňuje vědcům na univerzitách možné měnit a rozšiřovat Unix. Operační systém dorazil do Berkeley v roce 1974 na žádost profesora informatiky Boba Fabryho, který byl v programovém výboru pro sympozium o principech operačních systémů, kde byl poprvé představen Unix. Ke spuštění systému byl zakoupen PDP-11/45 , ale z rozpočtových důvodů byl tento stroj sdílen se skupinami pro matematiku a statistiku v Berkeley, kteří používali RSTS , takže Unix běžel na stroji pouze osm hodin denně (někdy během ve dne, někdy i v noci). Následující rok byl v Berkeley nainstalován větší PDP-11/70 za použití peněz z databázového projektu Ingres . Pochopení BSD vyžaduje ponořit se hluboko do historie Unixu, operačního systému, který poprvé vydala společnost AT&T Bell Labs v roce 1969. BSD začal svůj život jako varianta Unixu, kterou začali vyvíjet programátoři na Kalifornské univerzitě v Berkeley, původně vedený Billem Joyem. na konci 70. let minulého století.
Zpočátku BSD nebyl klon Unixu, ani jeho podstatně odlišná verze. Zahrnovalo jen některé další nástroje, které byly propojeny s kódem vlastněným AT&T.
V roce 1975 si Ken Thompson vzal volno z Bell Labs a přišel do Berkeley jako hostující profesor. Pomohl nainstalovat verzi 6 Unix a začal pracovat na implementaci systému Pascal . Postgraduální studenti Chuck Haley a Bill Joy vylepšili Thompsonův Pascal a implementovali vylepšený textový editor, např . O software se v Berkeley začaly zajímat další univerzity, a tak v roce 1977 Joy začala sestavovat první Berkeley Software Distribution (1BSD), který byl vydán 9. března 1978. 1BSD byl spíše doplňkem verze 6 Unix než kompletní operační systém sám o sobě. Bylo rozesláno asi třicet kopií.
Druhý Berkeley Software Distribution (2BSD), vydaný v květnu 1979, obsahoval aktualizované verze softwaru 1BSD a také dva nové programy od Joy, které v unixových systémech přetrvávají dodnes: vi textový editor ( vizuální verze ex ) a C shell . Bill Joy rozeslal asi 75 kopií 2BSD.
V roce 1978 byl v Berkeley nainstalován počítač VAX , ale unixový port do architektury VAX, UNIX/32V , nevyužil možnosti virtuální paměti VAX . Jádro z 32V byl do značné míry přepracován, aby zahrnovala Berkeley postgraduální student Ozalp Babaoglu virtuální implementaci paměti ‚s a kompletní operační systém včetně nového jádra, porty 2BSD utilit na VAX a utilit z 32V byl propuštěn jak 3BSD at the konec roku 1979. 3BSD se také alternativně nazývalo Virtual VAX/UNIX nebo VMUNIX (pro Virtual Memory Unix) a obrazy jádra BSD se normálně nazývaly /vmunix
až 4,4BSD.
Poté, co byl v červnu 1986 vydán 4.3BSD, bylo rozhodnuto, že se BSD odstěhuje ze stárnoucí platformy VAX. Platforma Power 6/32 (s kódovým označením „Tahoe“) vyvinutá společností Computer Consoles Inc. se v té době zdála slibná, ale její vývojáři ji krátce poté opustili. Port 4.3BSD-Tahoe (červen 1988) se nicméně ukázal jako cenný, protože vedl k oddělení kódu závislého na stroji a nezávislého na stroji v BSD, což by zlepšilo budoucí přenositelnost systému.
Kromě přenositelnosti CSRG pracoval na implementaci zásobníku síťových protokolů OSI , vylepšení systému virtuální paměti jádra a (s Van Jacobsonem z LBL ) nových algoritmech TCP/IP, které by umožnily růst internetu.
Do té doby všechny verze BSD používaly proprietární unixový kód AT&T, a proto podléhaly licenci na software AT&T. Licence zdrojového kódu se velmi prodražily a několik externích stran projevilo zájem o samostatné vydání síťového kódu, který byl vyvinut zcela mimo AT&T a nepodléhal licenčním požadavkům. To vedlo k Networking Release 1 ( Net/1 ), který byl zpřístupněn osobám bez licence na kód AT&T a byl volně redistribuovatelný za podmínek licence BSD . To bylo propuštěno v červnu 1989.
Po Net/1 navrhl vývojář BSD Keith Bostic, aby bylo vydáno více sekcí systému BSD, které nejsou AT & T, pod stejnou licencí jako Net/1. Za tímto účelem zahájil projekt na opětovnou implementaci většiny standardních unixových nástrojů bez použití kódu AT&T. Během osmnácti měsíců byly vyměněny všechny nástroje AT&T a bylo zjištěno, že v jádře zůstalo jen několik souborů AT&T. Tyto soubory byly odstraněny a výsledkem bylo vydání Networking Release 2 (Net/2) z června 1991, téměř kompletního operačního systému, který byl volně distribuovatelný.
Net/2 byl základem pro dva samostatné porty BSD do architektury Intel 80386 : volný 386BSD od Williama Jolitze a proprietární BSD/386 (později přejmenovaný na BSD/OS) od Berkeley Software Design (BSDi). 386BSD sám byl krátkodobý, ale stal se počátečním kódovým základem projektů NetBSD a FreeBSD, které byly zahájeny krátce poté.
BSDi se brzy ocitla v právních problémech s dceřinou společností AT & T Unix System Laboratories (USL), poté s vlastníky autorských práv na System V a ochranné známky Unix. Žaloba USL v. BSDi byla podána v roce 1992 a vedla k soudnímu příkazu k distribuci Net/2, dokud nebylo možné určit platnost nároků autorských práv USL na zdroj. Soudní proces zpomalil vývoj potomků BSD svobodného softwaru na téměř dva roky, zatímco jejich právní status byl zpochybněn, a v důsledku toho systémy založené na linuxovém jádře , které neměly takovou právní nejednoznačnost, získaly větší podporu. Soudní spor byl urovnán v lednu 1994, převážně ve prospěch Berkeleyho. Z 18 000 souborů v distribuci Berkeley musely být odstraněny pouze tři a 70 upraveno tak, aby zobrazovaly upozornění na autorská práva USL. Další podmínkou urovnání bylo, že USL v nadcházejícím vydání 4.4BSD nepodá další žaloby na uživatele a distributory kódu ve vlastnictví Berkeley.
Konečné vydání z Berkeley bylo v roce 1995 4.4BSD-Lite Release 2 , po kterém byl CSRG rozpuštěn a vývoj BSD v Berkeley zastaven. Od té doby bylo zachováno několik variant založených přímo nebo nepřímo na 4.4BSD-Lite (jako FreeBSD , NetBSD , OpenBSD a DragonFly BSD ).
Povolující povaha licence BSD umožnila mnoha dalším operačním systémům, open-source i proprietárním, začlenit BSD zdrojový kód. Například Microsoft Windows používal při implementaci TCP/IP kód BSD a balíčky překompilovaly verze síťových nástrojů příkazového řádku BSD od Windows 2000 . Darwin , základ pro Apple macOS a iOS , je založen na 4.4BSD-Lite2 a FreeBSD. Různé komerční operační systémy Unix, jako je Solaris , také obsahují kód BSD.
Vztah k výzkumu Unix
Počínaje 8. edicí měly verze Research Unix v Bell Labs blízký vztah k BSD. Začalo to tím, že 4,1 cBSD pro VAX bylo použito jako základ pro Research Unix 8. vydání. To pokračovalo v dalších verzích, jako je 9. vydání, které obsahovalo zdrojový kód a vylepšení z 4.3BSD. Výsledkem bylo, že tyto novější verze Research Unix byly blíže BSD než systému V. V příspěvku Usenet z roku 2000 Dennis Ritchie popsal tento vztah mezi BSD a Research Unix:
Výzkum Unix 8. vydání začal (myslím) z BSD 4.1c, ale s obrovským množstvím nabytým a nahrazeným našimi vlastními věcmi. To pokračovalo 9. a 10. místem. Běžná uživatelská sada příkazů byla, myslím, o něco více s příchutí BSD než SysVish, ale byla docela eklektická.
Vztah k systému V
Eric S. Raymond shrnuje dlouholetý vztah mezi systémem V a BSD a uvádí: „Rozdíl byl zhruba mezi dlouhosrstými a krátkosrstými; programátoři a technici měli tendenci se řadit k Berkeley a BSD, více obchodně zaměřeným typům s AT&T a System V. "
V roce 1989 David A. Curry psal o rozdílech mezi BSD a System V. Charakterizoval System V jako často považovaný za „standardní Unix“. Kvůli pokročilým funkcím a výkonu však popsal BSD jako oblíbenější mezi univerzitními a vládními počítačovými centry:
Většina univerzitních a vládních počítačových center, která používají UNIX, používá Berkeley UNIX, nikoli System V. Důvodů je několik, ale asi dva z nich jsou ty nejdůležitější, že Berkeley UNIX poskytuje síťové možnosti, které až donedávna (verze 3.0) byly v Systemu zcela nedostupné. V, a že Berkeley UNIX je mnohem vhodnější pro výzkumné prostředí, které vyžaduje rychlejší systém souborů, lepší zpracování virtuální paměti a větší škálu programovacích jazyků .
Technologie
Zásuvky Berkeley
Berkeley's Unix byl první Unix, který zahrnoval knihovny podporující hromady internetového protokolu : zásuvky Berkeley . Unixová implementace předchůdce IP, NCP ARPAnet , s klienty FTP a Telnet , byla vyrobena na University of Illinois v roce 1975 a byla k dispozici v Berkeley. Nedostatek paměti na PDP-11 si však vynutil komplikované problémy s designem a výkonem.
Díky integraci soketů s deskriptory souborů operačního systému Unix bylo čtení a zápis dat v síti téměř stejně snadné jako přístup na disk. Laboratoř AT&T nakonec vydala vlastní knihovnu STREAMS , která do softwarového balíčku s odlišnou architekturou začlenila většinu stejných funkcí, ale široká distribuce stávající knihovny soketů snížila dopad nového API . Brzy verze BSD byly použity k vytvoření Sun Microsystems ' SunOS , zakládat první vlnu populárních stanic Unix.
Binární kompatibilita
Některé operační systémy BSD mohou provozovat hodně nativního softwaru několika dalších operačních systémů na stejné architektuře pomocí vrstvy binární kompatibility . Mnohem jednodušší a rychlejší než emulace , to například umožňuje, aby aplikace určené pro Linux běžely efektivně plnou rychlostí. Díky tomu jsou BSD vhodné nejen pro serverová prostředí, ale také pro pracovní stanice, vzhledem k rostoucí dostupnosti komerčního nebo uzavřeného softwaru pouze pro Linux. To také umožňuje správcům migrovat starší komerční aplikace, které možná podporovaly pouze komerční unixové varianty, na modernější operační systém a zachovat funkčnost těchto aplikací, dokud je nebude možné nahradit lepší alternativou.
Standardy
Současné varianty operačního systému BSD podporují mnoho běžných standardů IEEE , ANSI , ISO a POSIX , přičemž zachovávají většinu tradičního chování BSD. Stejně jako AT&T Unix je jádro BSD monolitické , což znamená, že ovladače zařízení v jádře běží v privilegovaném režimu jako součást jádra operačního systému.
Potomci BSD
Na BSD je založeno několik operačních systémů, včetně FreeBSD , OpenBSD , NetBSD , MidnightBSD , GhostBSD , Darwin a DragonFly BSD . NetBSD i FreeBSD byly vytvořeny v roce 1993. Původně byly odvozeny z 386BSD (také známého jako „Jolix“) a v roce 1994 sloučily zdrojový kód 4,4BSD-Lite. OpenBSD byl v roce 1995 z NetBSD vidlicový a DragonFly BSD byl vidlicový z FreeBSD v roce 2003.
BSD byl také použit jako základ pro několik proprietárních verzích Unixu, jako například Sun 's SunOS , Sequent ' s DYNIX , NeXT 's NeXTSTEPu , DEC ' s Ultrix a OSF / 1 AXP (nyní Tru64 UNIX ). NeXTSTEP později stal základem pro Apple Inc ‚s MacOS .
Viz také
Reference
Bibliografie
- 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, Návrh a implementace operačního systému FreeBSD (Addison Wesley, 2. srpna 2004; ISBN 978-0-201-70245-3 )
- 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 )
- McKusick, Marshall Kirk (leden 1999). „Twenty Years of Berkeley Unix-Od AT & T-vlastněných po volně distribuovatelné“ . V DiBona, Chris; Ockman, Sam; Kámen, Mark (eds.). Otevřené zdroje: Hlasy z revoluce (první vydání). O'Reilly. ISBN 978-1-56592-582-3.
- Peter H. Salus , The Daemon, the GNU & The Penguin (Reed Media Services, 1. září 2008; ISBN 978-0-9790342-3-7 )
- Peter H. Salus , A Quarter Century of UNIX (Addison Wesley, 1. června 1994; ISBN 978-0-201-54777-1 )
- Peter H. Salus , Casting the Net (Addison-Wesley, březen 1995; ISBN 978-0-201-87674-1 )
externí odkazy
- Distribuce softwaru Berkeley ve společnosti Curlie
- Časová osa BSD a výzkumu UNIX
- Historie UNIXu - Historie UNIXu a BSD pomocí diagramů
- Návrh a implementace operačního systému 4.4BSD
- Strom Unix: Zdrojový kód a manuály pro staré verze Unixu
- EuroBSDCon , každoroční akce v Evropě v září, říjnu nebo listopadu, založená v roce 2001
- BSDCan , konference v Ottawě, Ontario , Kanada, která se koná každoročně v květnu od roku 2004, v červnu od roku 2015
- AsiaBSDCon , konference v Tokiu, se koná každoročně v březnu každého roku, od roku 2007
- mdoc.su-krátké manuální adresy URL stránek pro FreeBSD, OpenBSD, NetBSD a DragonFly BSD , webová služba napsaná v nginx
- BXR.SU - Super User's BSD Cross Reference , vyhledávací stroj pro uživatelskou a jádrovou verzi založený na OpenGrok a nginx