Ukukhishwa kohlelo lokusebenza lwe-DragonFly BSD 5.8

Iyatholakala ukukhululwa I-DragonFlyBSD 5.8, isistimu yokusebenza ene-hybrid kernel, kudaliwe ngo-2003 ngenjongo yokuthuthukisa enye indlela yegatsha le-FreeBSD 4.x. Phakathi kwezici ze-DragonFly BSD, singagqamisa uhlelo lwefayela olusabalalisiwe UHAMMER, ukusekelwa kokulayisha izikhwebu zesistimu “ezibonakalayo” njengezinqubo zomsebenzisi, ikhono lokugcina idatha ye-FS kanye nemethadatha kumadrayivu e-SSD, izixhumanisi ezingokomfanekiso ezizwela umongo, ikhono lokumisa izinqubo kuyilapho ulondoloza isimo sazo kudiski, i-hybrid kernel esebenzisa imicu engasindi (LWKT) .

main ukuthuthukiswaingezwe ku-DragonFlyBSD 5.8:

  • Ukwakhiwa okuyinhloko kuhlanganisa insiza i-dsynth, eklanyelwe ukuhlanganiswa kwendawo kanye nokunakekelwa kwamakhosombe akho kanambambili we-DPort. Ukufana kokuhlanganiswa kwenombolo engafanele yamachweba kuyasekelwa, kucatshangelwa isihlahla sokuncika. Ukulungiselela ukukhishwa okusha, i-DPort yenze nenani elikhulu lezinguquko ezihloselwe ukusheshisa ukwakhiwa kwamaphakheji amaningana ancike.
  • i-libc isebenzisa indlela esebenzayo yokufihla isignali, eyenza kube nokwenzeka ukuvikela i-malloc*() nemisebenzi efanayo ezinkingeni ngenxa yokuphazanyiswa kwayo isignali. Ngokuvinjwa kwesikhathi esifushane kanye nokuvula amasignali, imisebenzi ye-sigblockall() kanye ne-sigunblockall() iyaphakanyiswa, esebenza ngaphandle kokwenza amakholi esistimu. Ngaphezu kwalokho, i-libc iguqule umsebenzi we-strtok() ukuze isetshenziswe kuzinhlelo zokusebenza ezinezintambo eziningi, yengeza ama-constants TABDLY, TAB0, TAB3 kanye nomsebenzi we-__errno_location ukuthuthukisa ukusekelwa kwe-dports.
  • Izingxenye zesixhumi esibonakalayo se-DRM (Direct Rendering Manager) zivumelaniswa ne-Linux kernel 4.9, nezici ezikhethiwe ezifakwe ku-4.12 kernel okuhloswe ngayo ukuthuthukisa ukwesekwa kwe-Wayland.
    Umshayeli we-drm/i915 we-Intel GPUs uvunyelaniswe ne-Linux kernel 4.8.17 nekhodi edluliswa isuka ku-5.4 kernel ukusekela ama-chips amasha (i-Skylake, i-Coffelake, i-Amber Lake, i-Whisky Lake ne-Comet Lake). Umshayeli we-drm/radeon wamakhadi wevidiyo we-AMD uvumelaniswa ne-Linux 4.9 kernel.

  • Ama-algorithms okupheqa inkumbulo athuthukisiwe kakhulu, okusivumela ukuthi sisuse noma sinciphise izinkinga zokusabela kusixhumi esibonakalayo somsebenzisi uma kunenkumbulo enganele. Izinkinga ngokufriza kwe-Chrome/Chromium ngenxa yememori enganele yesistimu zixazululiwe.
  • Ukukala kwe-kernel okuthuthukisiwe kumasistimu anenani elikhulu lama-processor cores. Isikhathi esincishisiwe sekhasi lememori ebonakalayo. Kwehlisiwe umbango we-SMP lapho inkumbulo iphansi. Ukwenyuka ukusebenza kahle kwekholi ethi "open(... O_RDWR)".
  • Ijeneretha yenombolo-mbumbulu ku-kernel isiklanywe kabusha. Umshayeli we-RDRAND uguqulelwe ukuze aqongelele i-entropy kuwo wonke ama-CPU. Ukuqina okuncishisiwe
    kanye nosayizi wokuphakelayo kwe-RDRAND, ngaphambilini ethathe u-2-3% wesikhathi se-CPU phakathi nesikhathi sokungenzi lutho.

  • Kwengezwe isistimu entsha ishayela i-realpath, getrandom kanye ne-lwp_getname (ivumele ukuqaliswa kwe-pthread_get_name_np).
  • Ukwesekwa okwengeziwe kwe-SMAP (Ukuvimbela Ukufinyelela Kwemodi Yomphathi) kanye ne-SMEP (Ukuvimbela Ukwenziwa Kwemodi Yomphathi) izindlela zokuvikela. I-SMAP ikuvumela ukuthi uvimbe ukufinyelela kudatha yesikhala somsebenzisi kusuka kukhodi eyinhlanhla esebenza kuleveli ye-kernel. I-SMEP ayikuvumeli ukuguqulwa kusuka kumodi ye-kernel kuya ekusetshenzisweni kwekhodi etholakala ezingeni lomsebenzisi, okwenza kube nokwenzeka ukuvimba ukuxhashazwa kobuthakathaka obuningi ku-kernel (ikhodi yegobolondo ngeke isetshenziswe, njengoba isendaweni yomsebenzisi);
  • Kusetshenziswe kabusha okuguquguqukayo kwe-sysctl ukuze kulungiselelwe iJail. Kwengezwe amandla okufaka ama-nullfs nama-tmpfs avela eJele.
  • Kungezwe imodi ephuthumayo yohlelo lwefayela le-HAMMER2, elingasetshenziswa phakathi nokululama ngemva kokwehluleka. Kule modi, kungenzeka ukucekela phansi izifinyezo lapho ubuyekeza i-inode endaweni (ikuvumela ukuthi ususe amafayela nezinkomba lapho singekho isikhala sediski samahhala, lapho kungenakwenzeka ukusebenzisa indlela yokukopisha-ngokubhala). Ukusebenza okuthuthuke kakhulu ngokulungisa kabusha usekelo lokuthunyelwa kwentambo ku-HAMMER2. Inqubo yokugudluza amabhafa isithuthukiswe kakhulu.
  • Ukuthembeka nokusebenza okuthuthukisiwe kwe-TMPFS. Ukwandisa ukusebenza kahle lapho kuntuleka inkumbulo yamahhala ohlelweni.
  • Isitaki senethiwekhi ye-IPv4 manje sisekela /31 iziqalo (RFC 3021).
    Ukuthepha kuthuthukise ukuphathwa kwe-ioctl kwe-SIOCSIFMTU ukuze kusekelwe i-MTU > 1500. Kungezwe usekelo lwe-SIOCSIFINFO_IN6 ne-SO_RERROR.

  • Umshayeli we-iwm uvunyelaniswe ne-FreeBSD ngokusekelwa kwe-Intel wireless chips (usekelo olungeziwe lwe-iwm-9000 ne-iwm-9260).
  • Kwengezwe i-basename() ehambisana ne-Linux kanye nemisebenzi ye-dirname() ukuze kuthuthukiswe ukusebenzisana kwembobo.
  • Kuhanjiswe i-fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 isuka ku-FreeBSD yayiswa ku-libc/getaddrininfo(), ikhalenda(1), rcorder-visualize.sh. Imisebenzi evela ku-math.h isusiwe ku-OpenBSD.
  • Izinguqulo ezibuyekeziwe zezingxenye zenkampani yangaphandle, okuhlanganisa i-Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3. Umhlanganisi ozenzakalelayo yi-gcc-8.

Source: opennet.ru

Engeza amazwana