Over FreeBSD's technologische voortgang
FreeBSD biedt vele unieke mogelijkheden.
Welke applicatie u ook gebruikt, een besturingssysteem moet alle beschikbare bronnen gebruiken. De focus van FreeBSD op prestatie, netwerk, en opslag gaan samen met eenvoudig systeemonderhoud en uitstekende documentatie om het maximale uit elke computer te halen.
Een compleet besturingssysteem gebaseerd op 4.4BSD
De wortels van FreeBSD liggen bij de BSD software-uitgaven van de Computer Systems Research Group aan de University of California, Berkeley. Er is meer dan twintig jaar werk besteed aan het verbeteren van FreeBSD, het toevoegen van industrieleidende schaalbaarheid, netwerkprestatie, beheergereedschappen, bestandssystemen, en beveiligingsmogelijkheden. Als resultaat hiervan kan FreeBSD overal op het Internet, in het besturingssysteem van kernrouterproducten, in draaiende rootnaamservers, voor het hosten van grote websites, en als de basis van veelgebruikte besturingssystemen voor het bureau gevonden worden. Dit is alleen mogelijk vanwege het diverse en wereldwijde lidmaatschap van het vrijwillige FreeBSD Project.
FreeBSD�9.0 biedt vele nieuwe mogelijkheden en prestatieverbeteringen met een speciale focus op desktop-ondersteuning en beveiliging.
- Capsicum Capability-modus: Capsicum is een verzameling mogelijkheden voor om met zandbakken te werken, gebruikmakend van een mogelijkhedenmodel waar de mogelijkheden bestandsbeschrijvers zijn. Twee nieuwe kernel-opties CAPABILITIES en CAPABILITY_MODE zijn aan de kernel GENERIC toegevoegd.
- Hhook: KPIs voor Hhook (Helper Hook) en khelp(9) (Kernel Helpers) zijn ge�mplementeerd. Deze zijn een superset van het pfil(9) raamwerk voor meer algemeen gebruik in de kernel. De hhook(9) KPI biedt een manier voor deelsystemen in de kernel om aanhaakpunten te exporteren waar khelp(9)-modules kunnen aanhaken om verbeterde of nieuwe functionaliteit aan de kernel te bieden. De khelp(9)-KPI biedt een raamwerk om khelp(9)-modules te beheren, dat indirect gebruik maakt van de hhook(9)-KPI om hun aanhaakfuncties met aanhaakpunten van interesse binnen de kernel te registreren. Dit biedt een gestructureerde manier om de kernel dynamisch uit te breiden tijdens runtime op een manier die de ABI behoudt.
- Accounting API: is ge�mplementeerd. Het kan hulpmiddelinformatie over accounting per proces, jail, en inlogklasse bijhouden. Merk op dat dit standaard niet gebouwd noch ge�nstalleerd wordt. Specificeer de optie RACCT in het kernelinstellingenbestand en bouw het basissysteem opnieuw zoals beschreven in het FreeBSD Handboek om dit te bouwen en te installeren.
- Bronbegrenzende API: is ge�mplementeerd. Het werkt samen met de RACCT-implementatie voor accounting van hulpmiddelen en voert door de gebruiker in te stellen acties uit gebaseerd op de verzameling regels dat het bijhoudt en het huidige gebruik van de hulpmiddelen. Het hulpmiddel rctl(8) is toegevoegd om de regels in userland te beheren. Merk op dat dit standaard niet gebouwd noch ge�nstalleerd wordt.
- USB: subsysteem ondersteunt nu USB-pakketfilter. Dit maakt het mogelijk om pakketten op te vangen die door elke USB-gastheer gaan. De architectuur van het pakketfilter is vergelijkbaar met die van bpf. Het programma usbdump(8) is toegevoegd.
- Infiniband-ondersteuning:, OFED (OpenFabrics Enterprise Distribution) versie 1.5.3 is ge�mporteerd in het basissysteem.
- TCP/IP-netwerk: stack ondersteunt nu het raamwerk mod_cc(9) voor verwisselbaar congestiebeheer. Dit maakt het mogelijk dat algoritmes voor TCP-congestiebeheer worden ge�mplementeerd als dynamisch laadbare kernelmodules. Er zijn veel kernelmodules beschikbaar: cc_chd(4) voor het CAIA-Hamilton-Delay algoritme, cc_cubic(4) voor het CUBIC algoritme, cc_hd(4) voor het Hamilton-Delay algoritme, cc_htcp(4) voor het H-TCP algoritme, cc_newreno(4) voor het NewReno algoritme en cc_vegas(4) voor het Vegas algoritme. Het standaard-algoritme kan met een nieuwe sysctl(8)-variabele net.inet.tcp.cc.algorithm worden ingesteld.
- SU+J: het Fast File System van FreeBSD ondersteunt nu soft-updates met journaling. Het introduceert een intentielog in bestandssystemen waarvan softupdates aanstaat wat de noodzaak voor fsck(8) in de achtergrond wegneemt, zelfs als het afsluiten niet netjes ging.
FreeBSD�8.X bracht vele nieuwe mogelijkheden en prestatieverbeteringen. Met een speciale focus op een nieuwe USB-stack, kwam FreeBSD�8.X ook met experimentele ondersteuning voor NFSv4. Er werd een nieuwe TTY-laag ge�ntroduceerd, welke de schaalbaarheid en bronbeheer in systemen met SMP verbetert.
- Netisr-raamwerk: is opnieuw ge�mplementeerd voor ondersteuning van parallelle threading. Dit is een netwerk-dispatch interface in de kernel dat apparaatstuurprogramma's (en andere pakketbronnen) in staat stelt om pakketten te leiden naar protocollen voor directe of uitgestelde verwerking. De nieuwe implementatie ondersteunt tot ��n netisr-thread per CPU, en verschillende benchmarks op SMP-machines laten substanti�le verbeteringen zien ten opzichte van de vorige versie.
- Jail-verbeteringen: Jails ondersteunen nu meerdere IPv4- en IPv6-adressen per jail, en ondersteunen ook SCTP. Hierarchi�n van jails (jais binnen jails) worden nu ondersteund, en jails kunnen nu worden beperkt tot deelverzamelingen van beschikbare CPU's.
- Linux-emulatie: laag is bijgewerkt naar versie 2.6.16 en de standaard-port voor de Linux-infrastructuur is nu emulators/linux_base-f10 (Fedora 10).
- Netwerk-virtualisatie: Een container ("vimage") is ge�mplementeerd dat de FreeBSD kernel uitbreidt om meerdere onafhankelijke instanties van netwerktoestanden te onderhouden. Faciliteiten van vimage kunnen onafhankelijk worden gebruikt om volledig gevirtualiseerde netwerktopologi�n te maken, en jail(8) kan direct voordeel halen uit een volledig gevirtualiseerde netwerk-stack.