Pagpagawas sa DragonFly BSD 5.8 operating system

Magamit buhian DragonFlyBSD 5.8, usa ka operating system nga adunay hybrid kernel, gibuhat 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 TAMALAYON, 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 mga kalamboangidugang sa DragonFlyBSD 5.8:

  • Ang nag-unang komposisyon naglakip sa utility dsynth, gidisenyo alang sa lokal nga asembliya ug pagmentinar sa imong kaugalingong DPort binary repository. Ang parallelization sa asembliya sa usa ka arbitraryong gidaghanon sa mga pantalan gisuportahan, nga gikonsiderar ang dependency tree. Sa pag-andam alang sa bag-ong pagpagawas, ang DPort naghimo usab og daghang mga pagbag-o nga gitumong sa pagpadali sa pagtukod sa daghang nagsalig nga mga pakete.
  • Ang libc nagpatuman ug usa ka epektibong mekanismo sa pag-mask sa signal, nga nagpaposible sa pagpanalipod sa malloc*() ug susamang mga gimbuhaton gikan sa mga problema tungod sa ilang pagkabalda sa usa ka signal. Alang sa hamubo nga pag-ali ug pag-unblock sa mga signal, ang sigblockall() ug sigunblockall() nga mga gimbuhaton gisugyot, nga molihok nga wala maghimo mga tawag sa sistema. Dugang pa, gipahiangay sa libc ang strtok() function para magamit sa multi-threaded nga mga aplikasyon, gidugang ang mga constants TABDLY, TAB0, TAB3 ug ang __errno_location function aron mapauswag ang suporta sa dports.
  • Ang mga sangkap sa interface sa DRM (Direct Rendering Manager) gi-synchronize sa Linux kernel 4.9, nga adunay pinili nga mga feature nga gi-port gikan sa 4.12 kernel nga gitumong sa pagpauswag sa suporta sa Wayland.
    Ang drm/i915 driver alang sa Intel GPUs gi-synchronize sa Linux kernel 4.8.17 nga adunay code nga gibalhin gikan sa 5.4 kernel aron suportahan ang bag-ong chips (Skylake, Coffelake, Amber Lake, Whiskey Lake ug Comet Lake). Ang drm/radeon driver alang sa AMD video card gi-synchronize sa Linux 4.9 kernel.

  • Ang mga algorithm sa paging sa virtual nga memorya labi nga gipauswag, nga gitugotan kami sa pagwagtang o pagminus sa mga problema sa pagtubag sa interface sa gumagamit kung adunay dili igo nga memorya. Nasulbad na ang mga problema sa pagyelo sa Chrome/Chromium tungod sa kakulang sa memorya sa sistema.
  • Gipauswag ang pag-scale sa kernel sa mga sistema nga adunay daghang mga cores sa processor. Gipakunhod ang oras sa paghangyo sa panid sa virtual memory. Gipakunhod ang panagbingkil sa SMP kung ubos ang memorya. Dugang nga kahusayan sa "open(... O_RDWR)" nga tawag.
  • Ang pseudo-random number generator sa kernel gidesinyo pag-usab. Ang drayber sa RDRAND gipahiangay aron makaipon sa entropy gikan sa tanan nga mga CPU. Gipakunhod ang intensity
    ug ang gidak-on sa RDRAND feed, nga kaniadto mikuha sa 2-3% sa oras sa CPU sa panahon nga walay trabaho.

  • Gidugang ang bag-ong sistema nga nagtawag sa realpath, getrandom ug lwp_getname (gitugotan ang pagpatuman sa pthread_get_name_np).
  • Gidugang nga suporta alang sa SMAP (Supervisor Mode Access Prevention) ug SMEP (Supervisor Mode Execution Prevention) nga mekanismo sa pagpanalipod. 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);
  • Gibag-o nga mga variable sa sysctl alang sa pag-configure sa Jail. Gidugang ang abilidad sa pag-mount nullfs ug tmpfs gikan sa Jail.
  • Gidugang nga emergency mode alang sa HAMMER2 file system, nga magamit sa panahon sa pagkaayo pagkahuman sa pagkapakyas. Sa kini nga mode, posible nga gub-on ang mga snapshot kung gi-update ang inode sa lokal (gitugotan ka sa pagtangtang sa mga file ug mga direktoryo kung wala’y libre nga wanang sa disk, kung imposible nga magamit ang mekanismo sa copy-on-write). Mahinungdanon nga gipauswag ang pasundayag pinaagi sa pag-rework sa suporta sa pagpadala sa thread sa HAMMER2. Ang proseso sa pag-flush sa mga buffer labi nga gipauswag.
  • Gipauswag ang kasaligan ug pasundayag sa TMPFS. Dugang nga operating efficiency kung adunay kakulang sa libre nga memorya sa sistema.
  • Ang IPv4 network stack karon nagsuporta sa /31 prefixes (RFC 3021).
    Ang pag-tap nakapauswag sa pagdumala sa SIOCSIFMTU ioctl aron suportahan ang MTU > 1500. Gidugang nga suporta alang sa SIOCSIFINFO_IN6 ug SO_RERROR.

  • Ang iwm driver gi-synchronize sa FreeBSD nga adunay suporta alang sa Intel wireless chips (gidugang nga suporta alang sa iwm-9000 ug iwm-9260).
  • Gidugang ang Linux-compatible basename() ug dirname() functions aron mapalambo ang port compatibility.
  • Gibalhin ang fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 gikan sa FreeBSD ngadto sa libc/getaddrinfo(), kalendaryo(1), rcorder-visualize.sh. Ang mga gimbuhaton gikan sa math.h gibalhin gikan sa OpenBSD.
  • Gi-update nga mga bersyon sa ikatulo nga partido nga mga sangkap, lakip ang Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3. Ang default compiler mao ang gcc-8.

Source: opennet.ru

Idugang sa usa ka comment