lëshimi , një sistem operative me bërthamë hibrid, në vitin 2003 me qëllim zhvillimin alternativ të degës FreeBSD 4.x. Disa karakteristika të DragonFly BSD përfshin një sistem skedarësh versionik të shpërndarë, , mbështetje për ngarkimin e "bërthamave" virtuale të sistemit si procese përdoruesi, mundësia e caching-ut të të dhënave dhe meta-të dhënave të FSh në SSD, duke marrë parasysh kontekstin e lidhjeve simbolike variante, mundësia e ngrirjes së proceseve me ruajtjen e gjendjes së tyre në disk, bërthamë hibride që përdor rrjedha të lehta (LWKT).
Ndryshimet kryesore , të shtuar në DragonFlyBSD 5.6:
- Korrigjimi i sistemit të menaxhimit të memories virtuale. Shumë nën-sisteme që lidhen me memorien virtuale dhe PMAP janë ri-shkruar.
Në shumë vende, kodi është liruar nga bllokimet, përfshirë në funksionet m_page_wakeup, vm_hold dhe vm_unhold. Efiçenca e përdorimit të cache-it të procesorit është përmirësuar për shkak të reduktimit të migrimeve të objekteve VM midis bërthamave të CPU dhe zvogëlimit të kostove gjatë përpunimit të përjashtimeve (page-fault) për zonat e kujtesës që ndahen. Algoritmi për alokimin e faqeve të memories është përmirësuar. Janë eliminuar vonesat gjatë funksionit vm_page_alloc(). është shtuar API vm_page_hash*(), i cili lejon seleksionet pa bllokime.Si rezultat, është arritur të . Për shembull,
në testimin buildkernel, kohëzgjatja e operacioneve në anën e bërthamës është reduktuar me 40%. Kapaciteti ka rritur me 7% duke përdorur CPU të familjes Haswell dhe me 14% për Xeon. Në testin SELF-EXEC S/DI krahasuar me versionin e kaluar, është vërejtur një rritje e performancës me 23% për Haswell dhe 18% për Xeon. Në testin
SELF-EXEC S/SH pĂ«rkatĂ«sisht 28% dhe 71%, nĂ« SELF-EXEC D/DI â 23% dhe 242% (fal pĂ«rmirĂ«simit tĂ« performancĂ«s nĂ« shumĂ« procese), nĂ« SELF-EXEC D/SH nĂ« 24% dhe 234%, nĂ« FAULTZF nĂ« 17% dhe 14%, nĂ« DOCOMP nĂ« 22% dhe 42%,
nĂ« NATIVEKERNEL nĂ« 5.1% dhe 8.1%; - DrejtpĂ«rsĂ«drejti Ă«shtĂ« pĂ«rditĂ«suar drejtuesi DRM dhe menaxheri i memories sĂ« videos TTM pĂ«r kartat grafike AMD. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r APU-tĂ« e reja Ryzen. ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r framebuffer-in UEFI. NĂ« radeon/ttm Ă«shtĂ« eliminuar bllokimi mutor qĂ« ndikon negativisht nĂ« performancĂ«. JanĂ« bĂ«rĂ« riorganizime nĂ« caktimin e vonesave nĂ« procesin e ngarkimit pĂ«r tĂ« shmangur konfliktin mes drejtuesit i915 dhe serverit X. ĂshtĂ« shtuar thirrja DRM_IOCTL_GET_PCIINFO pĂ«r tĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r mesa/libdrm. JanĂ« eliminuar shumĂ« gabime dhe papĂ«rsosmĂ«ri;
- Kodi i sinkronizimit në sistemin e skedarëve HAMMER2 është rivendosur, çka ka lejuar një rritje të konsiderueshme të performancës së këtij FS. Po ashtu, është rritur performanca e operacioneve të shkruarjes së njëpasnjëshme.
PĂ«r tĂ« rritur qĂ«ndrueshmĂ«rinĂ« ndaj dĂ«shtimeve, Ă«shtĂ« shtuar ndjekja e varĂ«sive pĂ«r tĂ« pĂ«rjashtuar ndarjen e katalogĂ«ve/fajllave gjatĂ« zhvillimit tĂ« operacioneve tĂ« krijimit, rinovimit ose fshirjes. ĂshtĂ« rishikuar kodi i punĂ«s me snapshot-et pĂ«r tĂ« ulur vonesat dhe pĂ«r tĂ« garantuar koherencĂ«n e snapshot-it. ĂshtĂ« pĂ«rmirĂ«suar menaxhimi i operacioneve tĂ« pĂ«rbashkĂ«ta tĂ« shkruarjes dhe tĂ« shkarkimit nĂ« disk (flush). ĂshtĂ« pĂ«rmirĂ«suar implementimi i operacionit umount. ĂshtĂ« rritur informativiteti i mesazheve pĂ«r shkeljet e integritetit (CRC error).HAMMER2 rekomandohet si sistemi i skedarĂ«ve root nĂ« mĂ«nyrĂ« tĂ« paracaktuar. MbĂ«shtetja pĂ«r klasterizimin ende nuk Ă«shtĂ« e disponueshme. Sistemi i skedarĂ«ve HAMMER2 veçohet nga funksione tĂ« tilla si montimi i veçantĂ« i snapshot-eve, snapshot-eve tĂ« disponueshme pĂ«r shkrim, kuotat nĂ« nivel direktorish, pasqyra inkrementale, mbĂ«shtetje pĂ«r algoritmo tĂ« ndryshĂ«m tĂ« kompresimit tĂ« tĂ« dhĂ«nave, pasqyrimi multi-master me shpĂ«rndarjen e tĂ« dhĂ«nave nĂ« disa hoste.
- ĂshtĂ« shtuar mbĂ«shtetje fillestare pĂ«r nĂ«n-sistemin FUSE pĂ«r krijimin e sistemeve tĂ« skedarĂ«ve nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit.
- ĂshtĂ« rritur performanca e filtrit tĂ« pakove PF nĂ« sisteme me shumĂ« bĂ«rthama.
- ĂshtĂ« realizuar mbĂ«shtetje pĂ«r mekanizmat e mbrojtjes SMAP (Supervisor Mode Access Prevention) dhe SMEP (Supervisor Mode Execution Prevention) kur ato mbĂ«shteten nĂ« CPU. SMAP mundĂ«son bllokimin e aksesit nĂ« tĂ« dhĂ«nat nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit nga kodi me privilegje qĂ« ekzekutohet nĂ« nivelin e bĂ«rthames. SMEP nuk lejon kalimin nga ka sistemi i bĂ«rthames nĂ« ekzekutimin e kodit nĂ« nivelin e pĂ«rdoruesit, duke bllokuar kĂ«shtu shfrytĂ«zimin e shumĂ« dobĂ«sive nĂ« bĂ«rthame (kodi shell nuk do tĂ« ekzekutohet, pasi ndodhet nĂ« hapĂ«sirĂ«n e pĂ«rdoruesit);
- ĂshtĂ« shtuar kodi pĂ«r bllokimin e klasĂ«s MDS (Microarchitectural Data Sampling) nĂ« procesorĂ«t Intel. KĂ«rkohet qĂ« tĂ« ketĂ« njĂ« mikro-kod tĂ« pĂ«rditĂ«suar. PĂ«r default, mbrojtja Ă«shtĂ« e çaktivizuar dhe aktivizohet pĂ«rmes âsysctl machdep.mds_mitigation=MD_CLEARâ. Aktivizimi i saj sjell njĂ« vonesĂ« shtesĂ« nĂ« nivelin 250ns gjatĂ« kalimit midis hapĂ«sirĂ«s sĂ« pĂ«rdoruesit dhe bĂ«rthames;
- Bërthama është ndërtuar për default me mbrojtje retpoline nga sulmet Spectre.
- Shumë utilitete nga sistemi bërthamor janë përkthyer për t'u përdorur me LibreSSL;
- Janë përditësuar versionet e komponentëve të tretë, përfshirë xz 5.2.4,
libarchive 3.3.3, libressl 2.9.1, openssh 8.0, ldns 1.7.0,
libedit 2019-03-24. E transféruar nga FreeBSD evdev, makefs, ministat, libfetch,
dd. E transferuar nga OpenBSD në libc janë bërë thirrjet reallocarray(), timing_safe*(), freezero(), dup3(), recallocarray(), aligned_alloc(), explicit_bzero(). Nga pikëpamja e paracaktuar për ndërtim, kompajleri gcc-8 përdoret në vend të gcc-5.
Burimi: opennet.ru
