puštanje , operativni sustav s hibridnom jezgrom, 2003. godine u svrhu alternativnog razvoja ogranka FreeBSD 4.x. Među značajkama DragonFly BSD-a možemo istaknuti distribuirani verzionirani datotečni sustav , podrška za učitavanje "virtualnih" jezgri sustava kao korisničkih procesa, mogućnost predmemoriranja FS podataka i metapodataka na SSD pogonima, kontekstno osjetljive varijante simboličkih veza, mogućnost zamrzavanja procesa dok se njihovo stanje sprema na disk, hibridna jezgra koja koristi lagane niti (LWKT) .
Glavni dodano u DragonFlyBSD 5.8:
- Uslužni program je uključen u glavni paket , dizajniran za lokalnu izgradnju i održavanje izvornih DPort binarnih repozitorija. Podržane su paralelne izgradnje bilo kojeg broja portova, uzimajući u obzir stablo ovisnosti. U pripremi za novo izdanje, DPort je također uveo veliki broj promjena usmjerenih na ubrzanje izgradnje više ovisnih paketa.
- Libc implementira učinkovit mehanizam maskiranja signala, štiteći malloc*() i slične funkcije od problema uzrokovanih prekidom signala. Funkcije sigblockall() i sigunblockall(), koje rade bez sistemskih poziva, predviđene su za kratkoročno blokiranje i deblokiranje signala. Nadalje, libc je prilagodio funkciju strtok() za korištenje u višenitnim aplikacijama i dodao konstante TABDLY, TAB0 i TAB3, kao i funkciju __errno_location, kako bi poboljšao podršku za dports.
- Komponente DRM (Direct Rendering Manager) sučelja sinkronizirane su s jezgrom Linux 4.9 s prijenosom nekih značajki iz kernela 4.12 s ciljem poboljšanja podrške za Wayland.
Upravljački program drm/i915 za Intelove grafičke procesore sinkroniziran je s kernelom. Linux 4.8.17 s prenesenim kodom iz kernela 5.4 za podršku novim čipovima (Skylake, Coffelake, Amber Lake, Whiskey Lake i Comet Lake). drm/radeon upravljački program za AMD grafičke kartice sada je sinkroniziran s kernelom. Linux 4.9. - Značajno poboljšani algoritmi za straničenje virtualne memorije, čime su eliminirani ili minimizirani problemi s odzivom korisničkog sučelja kada ponestaje memorije. Riješeni su problemi sa zamrzavanjem Chromea/Chromiuma kada ponestaje sistemske memorije.
- Poboljšano skaliranje kernela na sustavima s velikim brojem procesorskih jezgri. Smanjeno vrijeme zahtjeva za stranicu virtualne memorije. Smanjeno SMP natjecanje u uvjetima malo memorije. Poboljšana učinkovitost poziva "open(... O_RDWR)".
- Generator pseudoslučajnih brojeva u kernelu je prerađen. RDRAND upravljački program je prilagođen za akumuliranje entropije iz svih CPU-a. Intenzitet je smanjen.
i veličinu RDRAND feeda, koji je prije zauzimao 2-3% CPU vremena tijekom neaktivnosti. - Dodani novi sistemski pozivi realpath, getrandom i lwp_getname (omogućena je implementacija pthread_get_name_np).
- Dodana je podrška za mehanizme zaštite SMAP (Supervisor Mode Access Prevention - Sprečavanje pristupa u načinu rada nadzornika) i SMEP (Supervisor Mode Execution Prevention - Sprečavanje izvršavanja u načinu rada nadzornika). SMAP blokira pristup podacima korisničkog prostora iz privilegiranog koda koji se izvršava na razini jezgre. SMEP sprječava prijelaz izvršavanja iz načina rada jezgre na kod na razini korisnika, što pomaže u sprječavanju iskorištavanja mnogih ranjivosti jezgre (shell kod se neće izvršiti jer se nalazi u korisničkom prostoru).
- Sysctl varijable za konfiguraciju zatvora su prerađene. Dodana je mogućnost montiranja nullfs i tmpfs datoteka iz zatvora.
- U datotečni sustav HAMMER2 dodan je način rada za hitne slučajeve koji se može koristiti tijekom oporavka od pada sustava. Ovaj način rada omogućuje uništavanje snimaka tijekom ažuriranja inodea na mjestu (omogućujući brisanje datoteka i direktorija kada nema slobodnog prostora na disku i mehanizam kopiranja pri pisanju se ne može koristiti). Performanse su značajno poboljšane zahvaljujući prerađenoj podršci za otpremu niti u HAMMER2. Proces ispiranja međuspremnika značajno je poboljšan.
- Pouzdanost i performanse TMPFS-a su poboljšane. Poboljšane su performanse u uvjetima malo memorije.
- Mrežni stog za IPv4 implementira podršku za prefikse /31 ().
Tap je poboljšao rukovanje SIOCSIFMTU ioctl-om kako bi podržao MTU-ove > 1500. Dodana je podrška za SIOCSIFINFO_IN6 i SO_RERROR. - iwm upravljački program je sinkroniziran s FreeBSD-om s podrškom za Intelove bežične čipove (dodana je podrška za iwm-9000 i iwm-9260).
- Dodana kompatibilnost s Linux Funkcije basename() i dirname() za poboljšanje kompatibilnosti u portovima.
- Postavke fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 prenesene su iz FreeBSD-a u libc/getaddrinfo(), calendar(1) i rcorder-visualize.sh. Funkcije iz math.h prenesene su iz OpenBSD-a.
- Komponente trećih strana ažurirane su i uključuju Binutils 2.34, Openresolv 3.9.2 i DHCPCD 8.1.3. Kompajler gcc-8 sada se koristi prema zadanim postavkama.
Izvor: opennet.ru
