buhian , usa ka operating system nga adunay hybrid kernel, niadtong 2003 alang sa katuyoan sa alternatibong kalamboan sa FreeBSD 4.x nga sanga. Lakip sa mga bahin sa DragonFly BSD, mahimo natong i-highlight ang usa ka giapod-apod nga bersyon nga sistema sa file , suporta alang sa pagkarga sa "virtual" nga mga kernels sa sistema isip mga proseso sa user, ang abilidad sa pag-cache sa FS data ug metadata sa SSD drives, context-sensitive variant symbolic links, ang abilidad sa pag-freeze sa mga proseso samtang nagtipig sa ilang estado sa disk, usa ka hybrid kernel gamit ang lightweight threads (LWKT) .
nag-unang gidugang sa DragonFlyBSD 5.6:
- Ang sistema sa pagdumala sa virtual nga memorya gi-moderno. Daghang mga subsystem nga may kalabutan sa virtual nga panumduman ug PMAP ang gisulat pag-usab.
Ang code gibuhian gikan sa pag-lock sa daghang mga lugar, lakip ang mga function sa m_page_wakeup, vm_hold, ug vm_unhold. Ang kaepektibo sa paggamit sa cache sa processor nadugangan pinaagi sa pagkunhod sa pagbalhin sa mga butang sa VM taliwala sa mga cores sa CPU ug pagkunhod sa overhead kung nagdumala sa mga eksepsiyon (mga sayup sa panid) alang sa gipaambit nga mga lugar sa memorya. Gipauswag nga algorithm sa alokasyon sa panid sa panumduman. Ang mga paglangan sa vm_page_alloc() function naayo na. Ang vm_page_hash*() API gidugang aron tugotan ang pagkuha nga walay pagbabag.Ingon usa ka sangputanan, posible nga mamatikdan . Pananglitan
sa pagsulay sa buildkernel, ang oras nga gikinahanglan sa paghimo sa mga operasyon sa bahin sa kernel gipakunhod sa 40%. Ang throughput miuswag sa 7% kung gigamit ang mga CPU sa pamilyang Haswell ug sa 14% alang sa Xeon. Ang SELF-EXEC S/DI benchmark nagpakita sa usa ka 23% nga pagtaas sa performance alang sa Haswell ug 18% alang sa Xeon kumpara sa miaging pagpagawas. Sa pagsulay
SELF-EXEC S/SH matag usa 28% ug 71%, sa SELF-EXEC D/DI - 23% ug 242% (tungod sa gipaayo nga multi-threading), sa SELF-EXEC D/SH sa 24% ug 234%, sa FAULTZF sa 17% ug 14%, sa DOCOMP sa 22% ug 42%,
sa NATIVEKERNEL sa 5.1% ug 8.1%; - Ang drayber sa DRM ug manager sa pagdumala sa panumduman sa video sa TTM alang sa mga video card sa AMD labi nga na-update. Gidugang nga suporta alang sa bag-ong Ryzen APUs. Gipauswag nga suporta sa framebuffer sa UEFI. Sa radeon/ttm, usa ka deadlock nga nakaapekto sa pasundayag ang giwagtang. Ang pagtakda sa mga paglangan sa panahon sa proseso sa pagkarga gi-refactor aron malikayan ang mga panagbangi tali sa i915 nga drayber ug sa X server. Gidugang ang DRM_IOCTL_GET_PCIINFO nga tawag aron mapaayo ang suporta sa mesa/libdrm. Daghang mga kasaypanan ug mga kasaypanan ang nawagtang;
- Ang kodigo sa pag-synchronize sa HAMMER2 file system kay gi-rewrit na, nga nakapauswag pag-ayo sa performance niini nga file system. Ang paghimo sa sunud-sunod nga mga operasyon sa pagsulat gipauswag usab.
Aron mapauswag ang pagtugot sa pag-crash, ang pagsubay sa pagsalig gidugang aron mawagtang ang pagbahin sa direktoryo / file sa panahon sa paghimo, pagbag-o sa ngalan, o pagtangtang sa mga operasyon. Ang code alang sa pagtrabaho sa mga snapshot gibag-o aron makunhuran ang mga paglangan ug masiguro ang pagkaparehas sa snapshot. Mas maayo nga pagdumala sa dungan nga pagsulat ug cache flush nga mga operasyon. Mas maayo nga pagpatuman sa umount operation. Ang sulod sa impormasyon sa mga mensahe mahitungod sa mga paglapas sa integridad (CRC errors) nadugangan.Girekomenda ang HAMMER2 isip default nga root filesystem. Ang suporta sa clustering dili pa magamit. Ang HAMMER2 FS nabantog sa mga gimbuhaton sama sa bulag nga pag-mount sa mga snapshot, pagsulat nga mga snapshot, mga quota sa lebel sa direktoryo, pagdugang nga salamin, suporta alang sa lainlaing mga algorithm sa kompresiyon sa datos, multi-master mirroring nga adunay pag-apod-apod sa datos sa daghang mga host;
- Gidugang inisyal nga suporta alang sa FUSE subsystem alang sa paghimo sa mga file system sa user space;
- Gipauswag nga performance sa PF packet filter sa multi-core system;
- Suporta alang sa SMAP (Supervisor Mode Access Prevention) ug SMEP (Supervisor Mode Execution Prevention) nga mga mekanismo sa pagpanalipod gipatuman kung gisuportahan sa CPU. Gitugotan ka sa SMAP nga babagan ang pag-access sa data sa espasyo sa gumagamit gikan sa pribilihiyo nga code nga nagdagan sa lebel sa kernel. Ang SMEP wala magtugot sa pagbalhin gikan sa kernel mode ngadto sa pagpatuman sa code nga nahimutang sa lebel sa user, nga nagpaposible nga babagan ang pagpahimulos sa daghang mga kahuyangan sa kernel (ang shell code dili ipatuman, tungod kay kini anaa sa user space);
- Gidugang blocking code MDS (Microarchitectural Data Sampling) nga klase sa mga processor sa Intel. Nagkinahanglan og updated nga microcode aron mogana. Pinaagi sa default, ang proteksyon gi-disable ug gipagana pinaagi sa 'sysctl machdep.mds_mitigation=MD_CLEAR'. Ang pagpaandar niini nagpaila sa dugang nga 250ns latency kung ang konteksto nga pagbalhin tali sa user ug kernel space;
- Ang kernel gitukod pinaagi sa default nga adunay proteksyon sa retpoline batok sa mga pag-atake sa Spectre.
- Daghang mga utilities gikan sa base system ang nakabig aron magamit ang LibreSSL;
- Gi-update nga mga bersyon sa ikatulo nga partido nga mga sangkap, lakip ang xz 5.2.4,
libarchive 3.3.3, libressl 2.9.1, openssh 8.0, ldns 1.7.0,
libre 2019-03-24. evdev, makefs, ministat, libfetch,
dd. Ang mga tawag nga reallocarray(), timing_safe*(), freezero(), dup3(), recallocarray(), aligned_alloc(), explicit_bzero() gibalhin gikan sa OpenBSD ngadto sa libc. Sa kasagaran, ang gcc-5 compiler gigamit alang sa pagtukod inay sa gcc-8.
Source: opennet.ru
