mały|FreeBSD z uruchomionym środowiskiem graficznym KDE FreeBSD – system operacyjny z rodziny Unix. Oparty na BSD, gałęzi Uniksa stworzonej przez Computer Systems Research Group (CSRG) na Uniwersytecie Kalifornijskim w Berkeley.

Pierwsza wersja wydana została 30 listopada 1993 roku. Najnowsza wersja to 15.

mały|Maskotka FreeBSD Model dystrybucji i rozwoju FreeBSD jest wolnodostępnym i darmowym systemem operacyjnym dostępnym z pełnym kodem źródłowym. Źródła całego systemu – nie tylko jądra – wraz z historią (istnieje możliwość pobrania najstarszych wersji) dostępne są w repozytorium git (do 2021 roku projekt korzystał ze scentralizowanych repozytoriów Subversion, a wcześniej do 2008 – z CVS). System rozprowadzany na liberalnej, 2-klauzulowej licencji BSD, która nie tylko pozwala na wykorzystanie kodu, jego modyfikowanie i dalszą dystrybucję zmian, ale także na jego integrację do projektów zamkniętych, co czyni ją przyjazną dla przedsięwzięć komercyjnych. Poza własnym kodem na licencji BSD projekt integruje szereg rozwiązań rozprowadzanych na innych licencjach (np. kod systemu plików ZFS na licencji CDDL, zestaw LLVM/Clang na licencji Apache v2, GPLv2).

Nad rozwojem projektu czuwa demokratycznie wybierana grupa programistów – tzw. Core Team, który nadzoruje rozwój projektu, a także rozsądza sporne kwestie wśród oficjalnych programistów posiadających prawo do bezpośredniej modyfikacji źródeł (tzw. ).

Historia Projekt podobnie jak NetBSD narodził się jako kontynuacja systemu 386BSD, pierwszej próby przeniesienia Uniksa BSD na architekturę Intel. Inicjatorami projektu początkowo znanego jako Unofficial 386BSD Patchkit byli Nate Williams, Rod Grimes i Jordan Hubbard.

Nazwę FreeBSD wymyślił David Greenman z firmy Walnut Creek CDROM, która od początku wspierała przedsięwzięcie. Maskotką FreeBSD jest daemon, jednak od 2005 roku oficjalnie projekt posługuje się nowym logo. Oficjalnym hasłem jest .

Pierwsza wersja systemu ukazała się 30 listopada 1993. Do wersji 2.0 bazowała na systemie 4.3BSD, kolejne wersje opierały się na 4.4BSD Lite2, obu stworzonych przez CSRG. W 2005 projekt zdecydował o przejściu na bardziej regularne wydania. Od tej pory nowe wersje ukazują się co 6–8 miesięcy, aby rozwój systemu stał się bardziej przewidywalny dla podmiotów z niego korzystających. Decyzja ta podyktowana była przeciągającymi się pracami nad rewolucyjną w wielu dziedzinach serią 5.x.

Data Wersja Opis19 czerwca 1993rozpoczęcie projektu30 listopada 19931.0oparte na bazie 386BSD i 4.3BSD Net/2lipiec 19941.1.5.1ostatnie wydanie z serii 1.x.x22 listopada 19952.0oparte na kodzie 4.4BSD Lite, bez kodu AT&T16 października 19983.0uaktualnienia z 4.4BSD Lite2, pierwsza wersja ELF29 listopada 19982.2.8ostatnie wydanie z serii 2.x; ostatnie wydanie w formacie binariów a.out24 czerwca 20003.5ostatnia wersja z serii 3.x13 marca 20004.020 kwietnia 20014.3pierwsza stabilna wersja z serii 4.x19 stycznia 20035.0 znaczne zmiany w obsłudze wieloprocesowości, nowe architektury sprzętowe: amd64 (tj. x86-64), IA-64, UltraSPARC6 listopada 20045.3pierwsza stabilna wersja z serii 5.x25 stycznia 20054.11ostatnie wydanie z serii 4.x4 listopada 20056.025 maja 20065.5ostatnia wersja z serii 5.x18 stycznia 20086.327 lutego 20087.0 Nowy system plików ZFS, gjournal, inicjator iSCSI, obsługa protokołu SCTP, wsparcie dla TCP Segmentation Offload i Large Receive Offload w sterownikach części kart sieciowych, nowy alokator pamięci (jemalloc), nowa architektura sprzętowa: ARM28 listopada 20086.45 stycznia 20097.1wprowadzono m.in. obsługę dla DTrace w jądrze systemu, możliwość przypisywania procesów do poszczególnych procesorów oraz nową implementacje Network Lock Managera. Domyślnym dyspozytorem na platformach tier1 stał się ULE4 maja 20097.2ulepszenie obsługi platformy UltraSPARC, pełna obsługa superpages dla aplikacji, obsługa IPv4 i IPv6 dla jail, zwiększenie wirtualnej przestrzeni adresowej jądra do 6GB na platformie x6425 listopada 20098.0możliwość zagnieżdżania jail, praca w trybie gościa i gospodarza w VirtualBox, praca jako 32-bitowy gość w Xen DomU, eksperymentalne wsparcie dla protokołu NFSv4, wsparcie dla wirtualnych punktów dostępowych i 802.11s, stabilizacja ZFS, przebudowa sterowników USB, poprawa skalowania SMP, eksperymentalne wsparcie dla architektury MIPS24 lipca 20108.124 lutego 20118.212 stycznia 20129.0nowy instalator, () framework, nowe funkcje w implementacji stosu TCP/IP, wsparcie dla Sony Playstation 3, kompilator LLVM/Clang.20 stycznia 201410.0clang zastępuje GCC na wspieranych platformach jako domyślny kompilator, unbound zastępuje BIND14 listopada 201410.1dodanie vt i autofs, wsparcie dla wirtualizacji bhyve14 sierpnia 201510.2usprawnienia w obsłudze ZFS

Informacje techniczne System zgodny z normą POSIX. Powłoka – każda zgodna z normą POSIX, domyślnie dostarczany z csh (de facto tcsh) i sh (oparte na ash). System plików – FFS, UFS, UFS z rozszerzeniem softupdates, UFS2 (w wersjach nowszych od FreeBSD 5.0). Obsługiwane są również nienatywne systemy plików, np. ZFS, XFS (w wersji 7), linuksowy ext2 oraz FAT oraz podsystem FUSE. Format binariów – obecnie ELF, do wersji 2.2.8 a.out. Jądro monolityczne, aczkolwiek z możliwością dołączania i odłączania modułów podczas pracy systemu.

FreeBSD charakteryzuje się dużą ilością nowinek w porównaniu z innymi systemami wywodzącymi się 4.4BSD: NetBSD i OpenBSD. Początkowo inicjatorzy projektu FreeBSD postanowili skupić się na stworzeniu systemu dla najpopularniejszej ówcześnie architektury sprzętowej i386. Z czasem jednak zaczęły się ukazywać także wersje dla architektur NEC PC-9801Architektura NEC PC-9801 została zarzucona w wersji 12., DEC Alpha, IA-64 Itanium, Sun UltraSPARC, AMD64, MIPS, ARM, PowerPC i RISC-V.

Wsparcie projektu podzielone jest na poziomy. Architektury tzw. tier1 otrzymują wsparcie zespołu bezpieczeństwa, pełne wydania i binarne aktualizacje (bez potrzeby kompilacji), prekompilowane pakiety. Poziom wsparcia zapewnia gotowość wystarczającą dla środowisk produkcyjnych. W wersji 12.2 w tier1 znajdowały się następujące architektury: amd64 i i386, w wydaniu 13 amd64 i aarch64. Architektury tier2 uznawane są za rozwojowe lub niszowe i nie mają bieżącego wsparcia, jednak ich użytkownicy są w stanie zbudować sobie środowisko ze źródeł zarówno systemu, jak i portów. Eksperymentalny poziom tier3 oznacza, że projekt nie daje gwarancji, że źródła będą dla nich kompilowalne.

Kompatybilność ABI W trybie zgodności ABI można uruchamiać programy skompilowane dla Linuksa, SCO oraz SVR4 (Solaris). Binaria dla systemów BSDI, NetBSD i OpenBSD są uruchamiane w niezmienionym trybie (natywne ABI).

System portów i pakietów

FreeBSD korzysta z opartego na źródłach systemu pakietowania znanego jako porty. Szkielet tego rozwiązania opiera się na plikach automatyzujących Makefile dla BSD make. Repozytorium portów zawiera ok. 33 tysiące programów przystosowanych do działania we FreeBSD. Na bazie portów udostępniane są prekompilowane pakiety binarne z domyślnymi opcjami dla aktualnie obsługiwanych wersji i architektur sprzętowych FreeBSD, którym projekt zapewnia wsparcie na poziomie tier1. Zalety portów przyczyniły się do tego, że stały się bazą lub zainspirowały rozwój zbliżonych rozwiązań wykorzystywanych w pokrewnych systemach OpenBSD, NetBSD (pkgsrc) oraz kilku dystrybucji Linuksa.

Zastosowania Ze względu na swą wydajność i niezawodność często stosowany jako serwer internetowy lub zapora sieciowa. FreeBSD używany jest m.in. przez Apache.org, Netflix, FlightAware, Yahoo!, Yandex, Netcraft, Sony Playstation 4, WhatsApp.

Na FreeBSD działa wiele aplikacji znanych z dystrybucji linuksowych – m.in. Open Office, Lumina, KDE. System jest użyteczny w zadaniach biurowych i multimedialnych. Ułatwia to życie administratorom, którzy mogą połączyć system codziennego użytku z „poligonem” do testowania nowych rozwiązań.

Renderowanie części efektów specjalnych w filmie Matrix zostało wykonane na klastrze 32 maszyn pracujących pod kontrolą FreeBSD.

Ze względu na liberalną licencję fragmenty jego kodu znalazły się w takich projektach jak Microsoft Windows, Apple OS X oraz OS X Server, które powstały w oparciu o mikrojądro XNU i rozwiązania zaczerpnięte z FreeBSD oraz NetBSD. Ponadto wiele zamkniętych urządzeń (np. routery Junipera czy sprzętowe zapory firmy Nokia) działa w oparciu o FreeBSD. System operacyjny konsoli gier PlayStation 4, OrbisOS powstał na bazie FreeBSD.

Wybrane narzędzia IPFW – zapora sieciowa pełniąca rolę filtra pakietów. Często wykorzystywana w routerach. natd – daemon zajmujący się translacją adresów sieciowych dummynet – rozwiązanie QOS do kontroli ruchu sieciowego, stosowane do ograniczania pasma. if_bridge, bridge – implementacja obsługi połączeń mostkowych między interfejsami. IPsec – zbiór protokołów umożliwiających tworzenie szyfrowanych, prywatnych sieci wirtualnych SMPng ULE – planista jądra systemowego

Zobacz też DragonFly BSD TrueOS DesktopBSD Darwin (OS X) FreeSBIE Frenzy Kylin m0n0wall Jak można spatchować KDE2 pod FreeBSD?

Uwagi

Przypisy

Linki zewnętrzne FreeBSD w serwisie distrowatch.com Oficjalna strona FreeBSD

Kategoria:Systemy operacyjne