Anketa

Pokračovanie ktorého návodu by ste chceli?:

Partenské projekty

FreeBSD - O projekte

Verzia pre tlačOdoslať priateľoviPDF verzia

Nasledujúce časti hovoria o pozadí projektu, vrátane stručnej histórie, cieloch projektu a vývojovom modele projektu.

Stručná história projektu FreeBSD

Napísal Jordan Hubbard.

Počiatky vývoja projektu FreeBSD siahajú do roku 1993, kedy vznikol neoficiálny opravný balík “Unofficial 386BSD Patchkit”, ktorý vznikol zlúčením posledných balíkov od troch koordinátorov: Nate Williamsa, Roda Grimesa a Jordana Hubbarda.

Náš pôvodný cieľ bolo vytvorenie priemernej tzv. snímky – snapshotu 386BSD, ktorá by opravovala množstvo problémov, ktoré mechanizmus záplat – patchkitov nebol schopný opraviť. Niektorý z vás si možno pamätajú na prvý pracovný názov projektu, ktorý sa vtedy volal “386BSD 0.5” alebo “386BSD Interim”.

Projekt 386BSD bol projektom Billa Jolitza, ktorý vtedy viac ako rok stál a bol zanedbávaný. Ako postupom času narastal počet záplat, situácia sa stávala každým dňom neznesiteľnejšia, preto sme sa zhodli, že s tým niečo musíme urobiť. Rozhodli sme sa Billovi pomôcť “vyčisteným” snapshotom. Tento plán bol zmarený tým, že sa Bill Jolitz nečakane rozhodol ukončiť podporu projektu, bez toho, aby či i len naznačil čo bude robiť miesto toho.

Netrvalo dlho kým sme sa rozhodli, že náš cieľ je stále aktuálny a budeme sa ho snažiť dosiahnuť aj bez Billovej podpory a priradili sme projektu nové meno “FreeBSD”, ktoré vymyslel David Greenman. Naše počiatočné ciele sme si stanovili po konzultácii s vtedajšími používateľmi a keď sa už stávalo jasné, že projekt sa stáva realitou, kontaktoval som Walnut Creek CDROM aby nám pomohli s distribúciou systému používateľom, ktorí nemajú pripojenie na Internet. Walnut Creek CDROM nielen že podporil myšlienku distribúcie systému na CD nosičoch ale zašiel až tak ďaleko, že nám na distribúciu poskytol počítač s veľmi rýchlym prístupom na Internet. Bez Walnut Creek CDROM, ktorý uverili v tom čase úplne neznámemu projektu, asi by FreeBSD nebol tam, kde je teraz.

Prvý distribuovaný CD-ROM systému FreeBSD 1.0 (a verzia na stiahnutie), bol vydaný v decembri roku 1993. Bol založený na systéme 4.3BSD-Lite (“Net/2”) vyvinutom na univerzite v Berkeley, ku ktorému bolo pridaných mnoho súčasti prevzatých z 386BSD a vytvorených Free Software Foundation. Na to, že to bola prvá verzia systému, mali sme s ňou celkom dobrý úspech, na ktorý sme nadviazali vydaním veľmi úspešnej verzie FreeBSD 1.1 v máji 1994.

V tom čase sa začalo schyľovať k nečakanej pohrome, pretože Novell zažaloval univerzitu v Berkeley za protiprávne používanie Net/2. Obe strany sa naokoniec dohodli, že veľká časť kódu Net/2 bude “viazaná” ako majetok sploločnosti Novell, ktorý táto spoločnosť pred tým získala od spoločnosti AT&T. To čo univerzita dostala na oplátku, bolo “požehnanie” od Novellu, že verzia 4.4BSD-Lite bude po dokončení vyhlásená za neobmedzenú a všetkým existujúcim používateľom Net/2 bude odporučený bezplatný prechod na túto verziu. Od tohto faktu bol závislý aj projekt FreeBSD, a preto bola až do konca júla 1994 zastavená distribúcia produktov na báze Net/2. Podľa zmluvy bolo možné vydať jedno posledné vydanie pred dokončením. Týmto vydaním bola verzia FreeBSD 1.1.5.1.

FreeBSD potom zostal pred náročnou úlohou doslova znova vynájsť sám seba z kompletne novej a nie celkom dokončenej "sady bitov" 4.4BSD-Lite. Verzia "Lite" bola v skutku veľmi odľahčenou verziou, pretože Berkeley CSRG z nej musel (v dôsledku rôznych právnych požiadaviek) odstrániť veľké kusy kódu, ktoré boli nevyhnutné na to, aby systém vôbec naštartoval a bol schopný prevádzky, čo spôsobilo, že port 4,4 pre platformu Intel bol veľmi neúplný. Trvalo až do novembra 1994 kým bol dokončený tento prechod, z ktorého bola uvoľnená verzia FreeBSD 2.0 na sieť a na CD-ROM (na konci decembra). Napriek tomu, že vydanie nebolo ešte celkom do detailov vyladené, vydanie bolo významným úspechom, na ktorý sme nadviazali stabilnejšou a jednoduchšou verziou FreeBSD 2.0.5 uvoľnenou v júni 1995.

Verziu FreeBSD 2.1.5 sme vydali v auguste roku 1996 a zdala sa byť populárna medzi poskytovateľmi internetového pripojenia a v komerčných spoločnostiach, pre ktoré bola nová stabilná vetva 2.1-STABLE prínosom. Verziou FreeBSD 2.1.7.1, vydanou vo februári 1997 sme vývoj vetvy 2.1-STABLE ukončili. Prešla do režimu údržby, a vydávajú sa pre ňu iba bezpečnostné opravy a opravy kritických chýb.

Vetva FreeBSD 2.2 vznikla z vývojovej verzie (“-CURRENT”) v novembri 1996 ako vetva RELENG_2_2 a jej prvé vydanie (2.2.1) bolo uvoľnené v apríli 1997. Ďalšie vydania vetvy 2.2 boli vydané v lete a na jeseň 1997. Posledným vydanie (2.2.8) bolo v novembri 1998. Prvé oficiálne vydanie 3.0 sa objavilo v októbri 1998 a predznamenalo začiatok konca vetvy 2.2.

Projekt bol 20 januára 1999 opäť rozdelený na vetvy 4.0-CURRENT a 3.X-STABLE. Z vetvy 3.X-STABLE bola vydaná verzia 3.1, verzia 3.2, verzia 3.3, verzia 3.4 a verzia 3.5, za ktorou o pár dní nasledovala ďalšia podverzia 3.5.1, do ktorej bola opravená bezpečnostná chyba systému Kerberos. Toto bolo posledné vydanie z vetvy 3.X.

Ďalšia vetva odštartovala , kedy vznikla stabilná vetva 4.X-STABLE. Bolo z nej vydaných niekoľko verzií: prvá (4.0) v marci 2000 a posledná (4.11) v januári 2005.

Dlho očakávaná verzia 5.0-RELEASE bola vydaná . Vyvrcholením takmer trojročnej práce bolo vydanie FreeBSD, ktoré začínalo s  podporou viacprocesorových systémov a aplikácií s vláknami, a tiež podporou platforiem UltraSPARC® a ia64. Za týmto vydaním nasledovala verzia 5.1 vydaná v júni 2003. Posledné vydanie 5.X z vetvy -CURRENT bola verzia 5.2.1-RELEASE vo februári 2004.

Stabilná vetva RELENG_5 bola vytvorená v auguste 2004, z ktorej bola vydaná verzia 5.3-RELEASE, ktorá bola prvou stabilnou verziou vetvy 5-STABLE. Poslednou verziou bola verzia 5.5-RELEASE vydaná v máji 2006.

Vetvy boli nanovo rozdelené v júli 2005, tentoraz na RELENG_6. Vydanie 6.0-RELEASE, bolo prvým vydaním z vetvy 6.X, ktoré bolo vydané v novembri 2005. Posledné vydanie 6.4-RELEASE vyšlo v novembri 2008.

Vetva RELENG_7 bola vytvorená v októbri 2007. Prvou verziou tejto vetvy bola 7.0-RELEASE, ktorá bola vydaná vo februári 2008. Posledné vydanie bolo 7.2-RELEASE vydané v máji 2009. Z tejto vetvy však ešte nejaké vydanie asi bude.

Projekt bo znova prerozdelený v auguste 2009, tentoraz na RELENG_8. Verzia 8.0-RELEASE, bola vydaná v novembri 2009.

Teraz  dlhodobý vývoj projektu aj naďalej pokračuje vo vývojovej vetve 9.X-CURRENT, ktorej tzv. snímky môžete získať na disku CD-ROM (a samozrejme na Internete) zo snapshot servera, ktorý vždy poskytuje možnosť stiahnutia najnovšej snímky.

Ciele projektu FreeBSD

Napísal Jordan Hubbard.

Cieľom projektu FreeBSD je poskytnutie softvéru, ktorý sa bude dať použiť na akýkoľvek účel bez zväzujúcich pravidiel. Žiadny z nás, ktorí sme významne prispeli vytváraním kódu (a projektu) nepohrdne finančným príspevkom z vašej strany, no netrváme na tom. Veríme, že naším prvoradým poslaním je poskytnutie zdrojového kódu každému záujemcovi na akýkoľvek účel, aby sa kód čo najviac využíval a poskytoval čo najširšie výhody. To je, myslím, jedným z najzákladnejších cieľov slobodného softvéru, a ten my s nadšením podporujeme.

Ten kód spomedzi našich kódov, ktorý spadá pod licencie GNU General Public License (GPL) alebo Library General Public License (LGPL) je trochu viac viazaný, aj keď dostupnosť kódu, ktorú licencia vynucuje je viac výhodou ako nevýhodou. Vzhľadom na ďalšie komplikácie, ktoré môžu vzniknúť pri vytváraní komerčného softvéru, sme sa rozhodli čo najviac kódu zverejniť pod našou BSD licenciou, ktorá je ešte viac voľnejšia.

Vývojový model FreeBSD

Napísal Satoshi Asami.

Vývoj FreeBSD je veľmi otvorený a flexibilný proces, je doslova postavený z príspevkov stovky ľudí na celom svete, ako je vidieť z nášho zoznamu prispievateľov. Infraštruktúra vývoja FreeBSD umožňuje stovkám vývojárov spolupracovať cez Internet. Neustále však hľadáme nových vývojárov a nápady, takže tí, ktorí sa zaujímajú o tento projekt, nás môžu jednoducho kontaktovať prostredníctvom  technickej mailovej diskusnej skupiny FreeBSD. Oznamovacia mailova diskusná skupina FreeBSD je pre zmenu zameraná na používateľov, ktorí chcú ostatných používateľov FreeBSD informovať o svojej práci.

Užitočné veci, ktoré je dobré vedieť o projekte FreeBSD a jeho spôsobe vývoja, či už pracujete samostatne alebo s niekym spolupracujete:

Úložiská SVN a CVS

Dlhý čas bol hlavný strom zdrojových kódov FreeBSD spravovaný pomocou systému CVS (Concurrent Versions System), čo je voľne dostupný otvorený systém na správu zdrojových súborov, ktorý je dodávaný spolu s FreeBSD. Od júna 2008 sme projekt preniesli do systému SVN (Subversion). Tento prechod bol nevyhnutný, pretože technické obmedzenia systému CVS boli čoraz neznesiteľnejšie, pretože veľkosť a početnosť zdrojových kódov spolu s ich históriou výrazne vzrástli. Aj keď teraz hlavné úložisko používa systém SVN, klienti, ktorí používali nástroje ako CVSupcsup, ktoré sú závislé od staršej infraštruktúry CVS, môžu pokračovať normálne v práci -- zmeny v úložiku SVN sú spätne kopírované do CVS. V súčasnosti je systémom SVN spracovávaný iba hlavný strom zdrojových kódov. Dokumentácia, WWW a porty sú stále riadené systémom CVS. Hlavné úložisko sa nachádza na počítači v Santa Clara CA, USA odkiaľ sa zrkadlí na mnoho počítačov po celom svete. SVN strom, ktorý obsahuje dve vetvy – aktuálne vyvíjanú verziu  -CURRENT a stabilnú verziu -STABLE, sa dá jednoducho replikovať na váš lokálny počítač. Viac informácii sa dozviete v časti Synchronizing your source tree.

Zoznam prispievateľov

Prispievatelia sú ľudia, ktorí majú právo zapisovať do CVS stromu, a sú oprávnení robiť modifikácie v zdrojových kódoch FreeBSD (v angličtine sa používa termín “committer”, ktorý vznikol podľa príkazu systému cvs(1) commit, ktorý slúži na poslanie novej verzie kódu do CVS úložiska). Najlepší spôsob ako oznámiť problém vývojárom, je použiť príkaz send-pr(1). Ak nájdete nejakú chybu v systéme, môžete ju nahlásiť aj odoslaním mailu do mailovej diskusnej skupiny FreeBSD committer's.

Jadro tímu FreeBSD

Jadro tímu FreeBSD by predstavovalo niečo ako správnu radu, keby bol projekt FreeBSD nejaká spoločnosť. Hlavnou úlohou jadra tímu je zabezpečenie projektu ako celku, aby bol v dobrom stave a jeho vývoj smeroval správnym smerom. Ďalšou úlohou je hľadanie špecializovaných a spoľahlivých vývojárov, ktorí by sa mohli pripojiť ku skupine prispievateľov, ale tiež prijímanie nových členov do hlavného tímu ak niektorí členovia tím opustia. Aktuálne jadro tímu bolo zvolené z kandidátov vybraných spomedzi prispievateľov v júli 2008. Voľby prebiehajú každé 2 roky.

Niektorí členovia jadra tímu majú tiež vyhradenú oblasť pôsobenia, čo znamená, že sa starajú o veľký celok kódu aby fungoval tak, ako o sebe vyhlasuje. Úplný zoznam vývojárov FreeBSD a ich oblasti pôsobenia nájdete v zozname priespievateľov.

Poznámka: Väčšina členov jadra tímu sú dobrovoľníci, ktorí začali vyvíjať FreeBSD a nemajú žiadne finančný prospech, preto by ich  “príspievanie” nemalo byť chápané ako “garantovaná podpora”. Analógia “správnej rady” použitá vyššie nie je celkom presná, skôr ide o ľudí, ktorí a zasvätili svoje životy projektu FreeBSD a starajú sa oň podľa ich najlepšieho svedomia!

Ostatní prispievatelia

Posledná, no rozhodne nie nezaujímavá, je skupina vývojárov, ktorú tvoria samotní používatelia, ktorí poskytujú spätnú väzbu a posielajú nám opravy chýb – takmer pravidelne. Hlavnou cestou ako sa dostať do kontaktu s necentralizovaným vývojom FreeBSD je prihlásenie sa do mailovej diskusie FreeBSD technical discussions mailing list, v ktorej sa o vývoji diskutuje. Viac informácií o rôznych diskusných skupinách sa dozviete v prílohe C.

Zoznam prispievateľov FreeBSD FreeBSD Contributors List je dlhý a stále sa rozrastá, takže prečo by ste sa nemohli pridať aj vy práve dnes?

Poskytnutie nového kódu nie je jediným spôsobom akým sa dá prispieť do projektu; zoznam vecí, ktoré je potrebné urobiť, nájdete na stránke FreeBSD Project web site.

Stručne povedané, náš vývojový model si môžete predstaviť ako sadu sústredných kruhov. Centralizovaný model je navrhnutý pre pohodlie používateľov FreeBSD, ktorí môžu jednoducho sledovať zmeny v kóde na jednom mieste, aby sme neodplašili potencionálnych prispievateľov! Našou snahou je prezentovať stabilný operačný systém s veľkým počtom koherentných aplikačných programov, ktoré môžu používatelia jednoducho nainštalovať a používať -- tento model pri napĺňaní tohto cieľa funguje veľmi dobre.

Jedine, čo chceme od tých, ktorí sa chcú pridať k projektu FreeBSD ako vývojári, je to aby boli rovnako zanietení ako ľudia, ktorí zaisťujú pokračujúci úspech projektu!

Aktuálne vydanie FreeBSD

FreeBSD je voľne dostupný operačný systém založený na 4.4BSD-Lite určený pre platformy Intel i386™, i486™, Pentium®, Pentium Pro, Celeron®, Pentium II, Pentium III, Pentium 4 (alebo kompatibilné), Xeon™, DEC Alpha™ a počítače založené na Sun UltraSPARC platforme. FreeBSD je primárne zložené zo softvéru vyvinutého v U.C. Berkeley's CSRG group, s určitými vylepšeniami z NetBSD, OpenBSD, 386BSD, a Free Software Foundation.

Od druhého vydania FreeBSD 2.0 v roku 1994 sa výkon, sada funkcií a stabilita systému FreeBSD významne zvýšili. Najväčšou zmenou je prerobená virtuálna pamäť, ktorá je zlúčením pôvodnej virtuálnej pamäte a vyrovnávacej pamäte pre súbory, čo nielenže významne zvyšuje výkon ale tiež redukuje obsadenie pamäte systémom FreeBSD, ktoré tvorí viac prijateľná 5 MB minimálna konfigurácia. medzi ostatné vylepšenia patrí klient a serverová verzia služby NIS, podpora transakcií TCP, vytočenie na požiadanie dial-on-demand PPP, integrovaná podpora DHCP, vylepšený SCSI podsystém, podpora ISDN, podpora pre ATM, FDDI, podpora Ethernetových adaptérov s prenosovou rýchlosťou  1000 Mbit/s, vylepšená podpora najnovších radičov Adaptec a mnoho tisícok opravených chýb.

Základná distribúcia FreeBSD navyše poskytuje kolekciu portovaného softvéru obsahujúcu tisíce najviac žiadaných programov. V súčasnosti obsahuje viac ako 2programov! V zozname sa nachádza všetko od http (WWW) serverov, po hry, jazyky, editory a všetko medzi tým. Celá zbierka softvéru pritom vyžaduje len približne 417 MB úložného priestoru, pretože všetky porty sú vyjadrené ako tzv. “delty” svojho originálneho zdrojového kódu. To nám umožňuje jednoduchšie aktualizovať porty a výrazne zredukovať miesto potrebné na porty staršej verzie zbierky portov 1.0. Port skompilujete tak, že vstúpite do priečinka programu, ktorý chcete nainštalovať a zadáte príkaz make install, a systém všetko ostatné urobí sám. Úplná originálna distribúcia pre každý port sa dá získať z disku CD-ROM alebo lokálnej FTP stránky, takže všetko čo potrebujete mať na zostavenie portov, ktoré chcete, je mať dostatok miesta na disku. Skoro každý port je však dodávaný aj ako predkompilovaný “balík”, ktorý môžu nainštalovať pomocou jednoduchého príkazu (pkg_add) tí, ktorím sa nechce kompilovať svoje vlastné porty zo zdrojových súborov. Viac informácií o balíkoch a portoch sa nachádza v kapitole 4.

Mnoho ďalšej dokumentácie, ktorá je veľmi užitočná pri procese inštalovania a používania FreeBSD môžete nájsť v priečinku /usr/share/doc na počítači s nainštalovaným systémom FreeBSD. Lokálne nainštalovanú dokumentáciu si môžete zobraziť pomocou webového prehliadača, do ktorého zadáte nasledujúce URL adresy:

Príručka FreeBSD

/usr/share/doc/handbook/index.html

Často kladené otázky o FreeBSD

/usr/share/doc/faq/index.html

Hlavnú kópiu dokumentácie však vždy nájdete online na adrese http://www.FreeBSD.org/.