4. A BSD és a Linux® összehasonlítása

Tehát valójában mi is a különbség mondjuk a Debian Linux® és a FreeBSD közt? Az átlag felhasználó számára a különbség meglepően csekély: mindkettő UNIX®-szerű operációs rendszer. Mindkettőt non-profit projektek fejlesztik. (Természetesen ez nem igaz sok más Linux disztribúcióra.) A következő fejezetben a BSD és a Linux közötti különbségeket tekintjük át. A leírás leginkább a FreeBSD-re illik, amely a BSD telepítések kb. 80%-át teszi ki, de a NetBSD, OpenBSD és DragonflyBSD nem sokban különbözik tőle.

4.1. Kinek a birtokában van a BSD?

A BSD nem egy személy vagy egy vállalat tulajdona. Egy magasan képzett és elkötelezett közösség fejleszti és terjeszti világszerte. A BSD néhány összetevője különálló nyílt forrású projekt, amelyet más fejlesztők tartanak karban.

4.2. Hogyan fejlesztik és aktualizálják a BSD-t?

A BSD kerneleket a nyílt forrású fejlesztési modell szerint fejlesztik és tartják naprakészen. Mind a négy projekt fenntart egy publikusan elérheő forrásfát a Concurrent Versions System (CVS) verziókezelő rendszer segítségével, amely a projekt minden forrásfájlját tartalmazza a dokumentációval és egyéb fontos fájlokkal együtt. A CVS segítségével a felhasználók lekérhetik (“check out”) a rendszer bármely óhajtott verzióját.

Világszerte sok fejlesztő járul hozzá a BSD fejlődéséhez. Három kategóriába soroljuk őket:

Ez a rendszer számos pontban eltér a Linuxétól:

  1. Nem egyetlen ember irányítja a rendszert. A gyakorlatban ez az eltérés túlértékelt, hiszen az elöljáró tervező kérheti a kód visszaállítását és még a Linux projektben is több embernek van jogosultsága változtatni.

  2. Másrészt, van egy központi repository, azaz a teljes operációs rendszer forráskódja egy helyen érhető el, beleértve a régi verziókat is.

  3. A BSD projektek az egész “operációs rendszert” karbantartják, nemcsak a kernelt. Ez a megkülönböztetés csak részben hasznos: a BSD és a Linux is haszontalan alkalmazások nélkül. A BSD alatt használt alkalmazások gyakran azonosak a Linuxon használtakkal.

  4. A központilag karbantartott CVS forrásfának köszönhetően a BSD fejlesztése áttekinthető, továbbá lehetőség van arra, hogy bármely verziót elérjünk a kiadási verzió vagy a dátum alapján. A CVS segítségével növekményesen is frissíthetjük rendszerünket: például a FreeBSD repositoryja kb. 100 alkalommal frissül naponta. Ezek közül a változások közül a legtöbb kicsi.

4.3. A BSD kiadások

A FreeBSD, NetBSD és OpenBSD háromféle “kiadáson” keresztül teszi elérhetővé a rendszert. Ahogyan a Linux esetében is, a kiadások kapnak egy verziószámot, mint pl. 1.4.1 vagy 3.5. Továbbá, a verziószám rendelkezik egy utótaggal, amelyik a kiadás célját jelöli:

  1. A rendszer fejlesztői verziójának neve CURRENT. A FreeBSD egy számot rendel ehhez, pl. 5.0-CURRENT. A NetBSD egy kicsit más elnevezési konvenciót alkalmaz, egy egybetűs utótagot fűz a névhez, amely azt jelzi, hogy csak a belső interfészeket érinti a változás, ilyen pl. a NetBSD 1.4.3G. Az OpenBSD nem használ számokat (“OpenBSD-current”). Minden új fejlesztés először ebbe az ágba kerül bele.

  2. Meghatározott időnként, 2-4 alkalommal évente, a projekt kiad egy RELEASE (kiadás) verziót, amely elérhető CD-ROM-on és szabadon letölthető az FTP szerverekről, ilyen pl. az OpenBSD 2.6-RELEASE vagy a NetBSD 1.4-RELEASE. A RELEASE verzió végfelhasználók számára készül és ez a rendszer normális verziója. A NetBSD ezen kívül patch release kiadásokat is kínál egy harmadik számjeggyel, pl. NetBSD 1.4.2.

  3. Ahogy hibák bukkannak fel a RELEASE verzióban és javításra kerülnek, a javítások bekerülnek a CVS fába. Az így létrejövő verzió neve a FreeBSD-nél STABLE, de a NetBSD és az OpenBSD továbra is RELEASE néven hívja ezt a verziót. Kisebb új funkciók szintén bekerülhetnek ebbe az elágazásba, miután a CURRENT ágban már egy ideje stabilnak bizonyultak.

Ezzel ellentében a Linux két különböző forrásfát tart fenn: a stabil- és a fejlesztői verziót. A stabil verzióknak egy páros minor számuk van, mint pl. 2.0, 2.2 vagy 2.4. A fejlesztői verziók minor száma páratlan, mint pl. 2.1, 2.3 vagy 2.5. Ezt a verziószámot minden esetben egy harmadik szám követi, ez adja meg a pontos verziót. Ezen kívül, minden terjesztő saját programokat és segédeszközöket mellékel, így a disztribúció neve is meghatározó. Minden disztribútor külön verziószámmal látja el a disztribúciót is, tehát egy teljes meghatározás valahogy így hangzana: “TurboLinux 6.0 2.2.14-es kernellel”.

4.4. Milyen BSD verziók vannak?

A rengeteg Linux disztribúcióval ellentétben csak négy jelentősebb nyílt forrású BSD van. Minden BSD projekt karbantartja a saját forrásfáját és saját kernelét. A gyakorlatban azonban kevesebb az eltérés a userland kódokban, mint a Linux esetében.

Nehéz kategorizálni a projektek céljait, mert a különbségek nagyon szubjektívak. Alapvetően a következőek érvényesek:

Létezik még két másik BSD UNIX, amelyek azonban nem nyílt forrásúak: a BSD/OS és az Apple Mac OS® X:

4.5. Hogyan tér el a BSD licenc a GNU General Public licenctől?

A Linux a GNU General Public Licenc (GPL) alatt érhető el, amely azért jött létre, hogy felszámolja a zárt forráskódú szoftverfejlesztést. Konkrétan, minden olyan munkának, amely GPL licenc alatt kiadott termékre épül, szintén nyílt forrásúnak kell lennie. Ezzel szemben a BSD licenc kevésbé korlátozó: tisztán bináris terjesztést is megenged. Ez különösen vonzó a beágyazott alkalmazások számára.

4.6. Mi mást kell még tudnom?

Mivel a BSD-hez kevesebb alkalmazás érhető el, mint a Linuxhoz, ezért a BSD fejlesztői készítettek egy Linux kompatibilitási csomagot, amellyel Linux programok futtathatók BSD rendszeren. A csomag egyaránt tartalmaz kernel módosításokat a Linux rendszerhívások megfelelő végrehajtásához, és kompatibilitási fájlokat, mint például a C könyvtár. A BSD rendszeren futtatott Linux alkalmazások és a natív Linux környezetben futó Linux alkalmazások között nincs észrevehető sebességkülönbség.

A BSD “mindent együtt” természetének köszönhetően a frissítések sokszor sokkal könnyebben kezelhetőek, mint a Linux esetében. A BSD úgy kezeli a könyvtárak verzióit, hogy kompatibilitási modulokat bizosít a régebbi könyvtárakhoz, így több éves programok is probléma nélkül futtathatóak.

4.7. Melyiket használjam, a BSD-t, vagy a Linuxot?

Mit jelent mindez a gyakorlatban? Kinek való a BSD és kinek a Linux?

Ezt a kérdést nagyon nehéz megválaszoli. Pár irányelv:

4.8. Ki kínál terméktámogatást és tréninget a BSD-hez?

A BSDi / FreeBSD Mall, Inc. közel egy évtizede kínál terméktámogatási szerződéseket a FreeBSD-hez.

Ezen kívül minden projekt rendelkezik egy listával a konzultánsairól: FreeBSD, NetBSD, és OpenBSD.

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.