A Berkeley Unix 20 éve - IV. rész

 ( trey | 2006. február 17., péntek - 21:45 )

Eredeti angol verzió:
Marshall Kirk McKusick
Twenty Years of Berkeley Unix

Magyar fordítás:
Micskó Gábor

Utoljára frissítve: 2003. július 27. vasárnap 11:21:24


Networking, Release 2

Az CSRG egyik heti csoport megbeszélésén Keith Bostic megemlítette, hogy mekkora népszerűségnek örvendett a szabadon terjeszthető "networking release" és megkérdezte, hogy lehetne-e egy olyan újabb kibővített kiadást készíteni, amely még több BSD kódot tartalmazna. Mike Karels és McKusick rámutatott, hogy a rendszer nagy részének kiadása egy nagyon nagy munka, de beleegyeztek, hogy ha Bostic kitalálja, hogy hogyan lehetne újraírni a több száz alkalmazást és a masszív C könyvtárat, akkor Ők bevállalják a kernellel kapcsolatos munkát. Őszintén hitték, hogy ezzel a dolog annyiban is marad.

Azonban meglepetésükre Bostic kitalált egy úttörő, nagy tömeget megmozgató hálózat-alapú fejlesztési metódus. Felkérte a srácokat az egyetemen, hogy írják újra a Unix programokat azon leírások alapján, amelyet a programokkal együtt szállítottak. Az egyetlen dolog amit cserébe kaptak az az volt, hogy nevüket felsorolták a Berkeley közreműködői (contributors) között az után a segédprogram után, amelyet újraírtak. A projekt lassan indult be, és eleinte csak a teljesen triviális programok kerültek újraírásra. De Bostic nem adta fel, és az újraírt programok száma folyamatosan nőtt. Lassan mintegy 100 programot tartalmazott a lista, és 18 hónapnyi munka után majdnem az összes fontosabb program és könyvtár újraírata elkészült.

Bostic kezében a listáva büszkén ment be Mike Karels és McKusick irodájába, és tudni szerette volna, hogy hogyan áll a kiadás kernele. Ennek az eredménye az lett, hogy Karels, Bostic, és McKusick az elkövetkező hónapokat azzal töltötte, hogy végigmentek az egész disztribúción, file-ról file-ra haladva eltávolították az eredeti 32/V kiadás kódjait. Amikor ezzel kész lettek azt vették észre, hogy már csak 6 olyan file maradt a kernelben, amely "szennyezett" és amelyet még nem írtak újra. Noha dönthettek volna úgy is, hogy újraírják a 6 filet - és így akár a komplett rendszert is kiadhatták volna - helyette mégis úgy döntöttek, hogy kiadják azt amivel rendelkeznek. Engedélyt kértek a kiterjesztett kiadásra a Egyetem adminisztratív ügyeit intéző embereitől. Több belső vita és ellenőrzés után - amely a csapat szabadalmaztatott kód meghatározó metódusa körül forgott - nekiláttak a kiadásnak.

Az első ötletük az volt, hogy egy teljesen új nevet adnak a második szabadon terjeszthető kiadásnak. De rájöttek, hogy egy teljesen új licencet írni és azt jóváhagyatni az Egyetem ügyvédeivel teljesen felesleges erőforrás- és időpocsékolás lenne. Így inkább úgy döntöttek, hogy az új kiadást Networking Release 2-nek fogják hívni, és így csak frissíteniük kell a már meglevő Networking Release 1 licenc megállapodást. Így 1991 júniusában megjelent a második, nagymértékben kibővített, szabadon terjeszthető kiadás. A terjesztési feltételek és a költségekre vonatkozó feltételek ugyanazok voltak, mint az első Networking Release idején. Mint a Net1 megjelenése idején, most is néhány száz szervezet és magánszemély fizetett 1000$ jogdíjat azért, hogy megkaphassa a Berkeley disztribúcióját.

A Networking Release 2 disztribúció és a teljes értékű rendszer közötti hézagot nem telt sok időbe kitölteni. Bill Jolitz hat hónap alatt megírta a teljes kernelhez szükséges 6 hiányzó file-t. Azonnal ki is adott egy teljes értékű, bootolható 386-alapú rendszert a PC architektúrához, amelyet el is nevezett 386/BSD-nek. Jolitz 386/BSD terjesztése szinte teljes egészében az (Inter)NET-en keresztül zajlott. Feltette az anyagot egy anonymous FTP-re és hagyta, hogy bárki ingyen letölthesse. Hetek alatt nagyszámú követője lett.

Sajnos Jolitz a teljes idős munkája mellett nem tudott elegendő időt szakítani azokra a beözönlő hibajavításokra és rendszer bővítésekre, amelyek a 386/BSD-hez érkeztek. Ennek az lett a következménye, hogy a 386/BSD megjelenése után egy 386/BSD felhasználókból álló csoport megalkotta a NetBSD csoportot a célból, hogy közös erőforrásaik révén először karbantarthassák, majd a későbbiek folyamán fejleszthessék a rendszert. Az általuk készített kiadás NetBSD terjesztés néven lett ismert. A NetBSD csoport hangsúlyozott célja lett, hogy annyi platformot támogasson, ahányat csak lehetséges, és emellett folytassák azt a kutatási stílusú fejlesztést, amelyet a CSRG végzett. 1998-ig a terjesztésük csak az (Inter)NET-en keresztül volt elérhető, nem volt disztribúciós médiájuk. A csoport elsődleges célközönsége a hardcore, technikai beállítottságú felhasználók. A NetBSD projektről bővebb információt a http://www.netbsd.org címen találsz.

A FreeBSD csoport néhány hónappal a NetBSD csoport után alakult, céljuk csak a PC architektúra támogatása volt, és a nagyobb felhasználói bázissal rendelkező, kevésbé technikai beállítottságú felhasználókat célozta meg. Hogy egyszerűbbé tegyék a felhasználást, bonyolult telepítő script-eket írtak, és elkezdték alacsony költségű CD-ROM-on terjeszteni a rendszerüket. A könnyű telepíthetőségnek, a NET-en és egyéb nagyobb kiállításokon (mint például a Comdex) végzett nagy promóciónak köszönhetően gyorsan nőtt a felhasználók száma. Jelenleg a FreeBSD rendelkezik a legnagyobb telepített bázissal a Release 2-ből származó rendszerek között.

FreeBSD azzal próbálja megtörni a Linux népszerűségének hullámait, hogy beépített Linux emulátorral rendelkezik, amelynek segítségével lehetőség nyílik a FreeBSD rendszeren Linux binárisok futtatására. E funkció lehetővé teszi a FreeBSD felhasználóknak, hogy felhasználhassák az állandóan növekvő számú Linux programokat, és közben élvezhessék a FreeBSD robosztusságát, megbízhatóságát és teljesítményét. A csoport által üzemeltetett FreeBSD Mall (http://www.freebsdmall.com), a gyűjtőhelye a FreeBSD közösség számos részének, köztük a konzultációs szolgáltatásnak, származtatott termékeknek, könyveknek és hírlevélnek.

Az 1990-es évek közepén a NetBSD csoportból kivált az OpenBSD. Az ő céljuk az, hogy növeljék a rendszer biztonságát. Ezen kívül céljuk, hogy a rendszer könnyen használható és széles körben elérhető legyen. Ők is állítanak elő CD-ROM-ot, amely számos a telepítést megkönnyítő, a FreeBSD-ből származó ötletet tartalmaz. Még több információt találsz az OpenBSD projektről a http://www.openbsd.org címen.

A per

Azokon a fent említett csoportokon kívül amelyek azért jöttek létre, hogy a Networking Release 2 szalagon alapuló, szabadon terjeszthető rendszer dolgait szervezzék, létrejött egy cég is. A Berkeley Software Design, Incorporated (BSDI), amely azért alakult, hogy kereskedelmi fejlesztéseket és támogatást adjon a kódhoz (bővebb információt a BSDI-ről a http://www.bsdi.com címen találsz). Mint a többi csoport, ők is azzal kezdték, hogy a Bill Jolitz által a 386/BSD kiadáshoz írt hat file-t hozzáadták a rendszerhez. 1992 januárjától a BSDI elkezdte árusítani a rendszerét a binárisokkal és a forrásokkal együtt 995$-ért. Elindítottak egy hirdetést, amelyben az állt, hogy 99%-os árleszállítást adnak a System V forrásának és a binárisainak árából. Az érdeklődők hívják az 1-800-ITS-Unix-ot.

A BSDI röviddel a kereskedelmi kampányának beindítása után egy levelet kapott a Unix System Laboratories-tól (USL) (egy többnyire az AT&T tulajdonában levő leányvállalat volt, amely a Unix fejlesztésére és eladására jött létre). A levélben az állt, hogy fejezzék be a termékük Unix-ként való reklámozását, és hagyjanak fel a megtévesztő telefonszám használatával. Annak ellenére, hogy a telefonszám használatát azonnal felfüggesztették, és a hirdetés megváltoztatták olyanra, amelyben megmagyarázzák, hogy a termék nem Unix, az USL nem békült meg. Beperelte a BSDI-t azért, hogy az hagyjon fel a termékük árusításával. A vád az volt, hogy a BSDI termék szabadalmaztatott USL kódot és ipari tikokat tartalmaz. Az USL egy olyan ítéletet szeretett volna elérni amely kimondja, hogy a BSDI eladásoknak addig le kell állniuk, amíg az ügy meg nem oldódik. Arra hivatkoztak, hogy helyrehozhatatlan károkat okozhat nekik az, ha a BSDI terjesztésében további ipari titkok kerülnek napvilágra.

A tárgyalás kezdeti szakaszában a BSDI arra hivatkozott, hogy Ők csak a Kaliforniai Egyetem által szállított, szabadon terjeszthető forráskódot használták fel, plusz hozzátették a hiányzó hat filet. Elmondták, hogy hajlandóak a hat file bármelyikének tartalmáról megbeszéléseket folytatni, de nem hiszik, hogy ők lennének a felelősek azokért a file-okért amelyet a Kaliforniai Egyetem szállított. A bíró egyetértett a BSDI érvelésével, és felszóltotta az USL-t, hogy fogalmazza meg a vádjait újból kizárólag a hat file-ra, különben elejti a vádat. Az USL rájött, hogy nehéz lesz a vádakat csak a szóban forgó hat file-ra felépíteni, ezért úgy döntött, hogy újra perel. Ezúttal a BSDI-t és a Kaliforniai Egyetemet is perbe fogja. Mint előtte, az USL vádemelést kért amiatt, hogy az Egyetem és a BSDI szállították a Networking Release 2-t.

Ahogy kiderült, hogy per közeleg komoly felkészülés kezdődött meg. A CSRG összes tagját lemondatták, mert majd mindenki a BSDI-nél dolgozott. Állandó eligazítások zajlottak a ügyvédek között. Keith Bostic és McKusick több száz oldalas anyagokat írt, amelyeket a megbeszéléseken használtak fel.

1992 decemberében Dickinson R. Debevoise - egy New Jersey-ben területileg illetékes bíró - tárgyalta az ügyet. Noha a bírók általában azonnal döntenek egy vádemelési kérelemről, most Dickinson most úgy döntött, hogy tanácsot kér. Hat héttel később egyik pénteken Dickinson kiadott egy 40 oldalas véleményt. Ebben az állt, hogy semmisé teszi a vádemelést és elejti az összes vádat kettő kivételével. A fennmaradó két vád az volt, hogy az újaban született szerzői jogok leszűkültek, és lehetséges, hogy ipari titkok vesztek el. A bíró azt javasolta, hogy forduljanak először az állami bírósághoz, az előtt mielőtt a szövetségi bírósághoz fordulnának.

A Kaliforniai Egyetem megfogadta a javaslatot, hétfőn elment a Kalifornia állami bírósághoz és kontra pert indított az USL ellen. Azzal, hogy az Egyetem Kaliforniában adta be a vádemelési kérelmet, elébe ment annak, hogy más államban tárgyalják az ügyet. Az alkotmányos jog szerint az összes tárgyalásnak egy államban kell lefolynia azért, hogy megelőzzék azt, hogy a mélyebb zsebbel rendelkező pereskedő fél másik államokban újabb pereket indíthasson az ellenfél ellen. Ennek az eredménye az volt, hogy ha az USL bármilyen akciót szeretett volna az Egyetem ellen indítani, akkor azt Kaliforniában kellett volna megtennie, és nem New Jersey-ben, ami nekik hazai pálya lett volna.

Az Egyetem beadványában az szerepelt, hogy az USL megsértette az Egyetem jogait azzal, hogy felhasználta a BSD kódot a System V-ben, de ellenben - mint azt a BSD licenc megkívánta volna - nem tüntették fel az Egyetem közreműködését a dokumentumokban. Az Egyetem beterjesztésében az szerepelt, hogy ha a vád megállja a helyét, akkor kötelezzék az USL-t, hogy nyomtassa újra a dokumentációit szerepeltetve benne a szükséges megjegyzéseket, értesítsék a licencel rendelkező felhasználókat arról, hogy elnézést kérnek, és készítessenek teljes oldalas hirdetést az olyan nagyobb újságokban, mint a The Wall Street Journal és a Fortune magazin, amelyben elnézést kérnek az üzleti világól a figyelmetlenségük miatt.

Az állami bíróságon elindult per után nem sokkal az USL-t felvásárolta az AT&T-től a Novell. A Novell vezérigazgatója (CEO) - Ray Noorda - nyilvánosan kijelentette, hogy inkább az üzelti életben döljön el az ügy mint a bíróságon. 1993 nyarán egyeztető tárgyalások kezdődtek a két fél között. Sajnos a két fél túl mélyre ásott a megbeszélések alkalmával, így a tárgyalások lassan folytak. Végül 1994 januárjában megszületett az egyezség. Az eredményeképpen 3 file-t el kellett távolítani abból a 18000-ből amelyből a Networking Release 2 állt, és ezen kívül néhány kisebb változtatás kellett eszközölni más file-okon is. Végül az Egyetem beleegyezett, hogy körülbelül 70 file-ba bekerüljön az USL szerzői jogi megjegyzése, de ezek a file-ok is szabadon terjeszthetőek maradtak.

4.4BSD

Az új kiadás a 4.4BSD-Lite névre hallgatott, és 1994 júniusában jelent meg olyan feltételek mellett, amelyeket a Networking Release-eknél használtak. Azaz a licenc feltételek kimondták, hogy a szabadon terjeszthető a forráskód és bináris formájában is, az egyetlen kikötés, hogy az Egyetem szerzői jogi megjegyzése érintetlen maradjon a forrásokban, és az egyetem kapjon megbecsülést (credit) ha mások felhasználják a kódját. Ezzel egy időben a teljes rendszer is megjelent 4.4BSD-Encumbered néven, de ennek használatához el kellett fogadni az USL forrás licencet is.

A megegyezésben azt is kikötötték, hogy az USL egyetlen szervezetet sem perelhet be a 4.4BSD-Lite használatáért. Ennek hatására az összes BSD csoport, akik eddig kiadásokat végeztek (BSDI, NetBSD, és FreeBSD) nekiálltak az új 4.4BSD-Lite forráskóddal újraépíteni a kódbázisukat, amelybe beolvasztották a saját javításaikat és bővítéseiket is. Ez a dolog egy kicsit visszavetette a BSD rendszerek fejlesztését, mert minden csoport rá volt kényszerítve, hogy szinkronizálják a fejlesztéseiket ezzel a forráskóddal, és ez azt jelentette, hogy mintegy 3 évnyi munkát kellett átalakítaniuk. Ugyanis ennyi idő telt el azóta, hogy a CSRG kiadta a Networking Release 2-t.

4.4BSD-Lite, Release 2

Abból a pénzből, amely a 4.4BSD-Encumbered és 4.4BSD-Lite kiadásokból befolyt, egy olyan rész idős projektet alapítottak, amelynek a célja az volt, hogy az időközben elkészült hibajavításokat és bővítéseket beolvassza a rendszerbe. Ez közel két évig folyt, egészen addig amíg a hibajelentések és bővítések teljesen el nem elmaradtak. 1995 júniusában az utolsó változások még ki lettek adva a 4.4BSD-Lite Release 2 néven. A javítások nagy része be lett olvasztva más rendszerek forrásába is.

A 4.4BSD-Lite Release 2 kiadása után a CSRG feloszlott. A csoport 20 évnyi BSD irányítás után úgy érezte, hogy itt az ideje annak, hogy új ötletek és a határtalan rajongás írányítsa a fejlesztéseket. Amíg előtte úgy tűnt, hogy a központosított fejlesztés a legjobb ötlet, most úgy döntöttek, hogy kipróbálják azt az elképzelést, hogy különböző csoportok különböző célokkal fejlesszék a rendszer. Mivel a rendszer forráskód formában volt terjesztve, a jó ötleteket könnyen magukévá tehették más csoportok is. Ha egyik csoport kivételesen eredményes lesz, az lesz a domináns rendszer - gondolták.

Napjainkban a nyílt forrású fejlesztési modell egyre nagyobb figyelmet és megbecsülést kap. Még ha talán a Linux is legismertebb ilyen rendszer, azt tudni kell, hogy a segédprogramjainak kb. fele a BSD terjesztésekből való. A Linux terjesztések erősen függenek a fordítótól, a hibakövető programoktól (debuggers) és más programfejlesztő eszközöktől, amelyet a Free Software Foundation (FSF) készített. Együttvéve a CSRG, a Free Software Foundation, és a Linux kernel fejlesztők létehoztak egy olyan platformot, amelyen a nyílt forrású fejlesztések elindulhattak. McKusick és a többi CSRG tag büszke, hogy lehetőségük nyílt arra, hogy úttörő szerepet vállaljanak e mozgalom elindításában. Remélik, hogy eljön az az idő amikor ez lesz az elfogadott módja a szoftver fejlesztésnek és eladásnak mindenhol a világon.

[vége]