DragonFly BSD 5.8 үйлдлийн системийг гаргасан

Боломжтой суллах DragonFlyBSD 5.8, эрлийз цөм бүхий үйлдлийн систем, үүсгэсэн 2003 онд FreeBSD 4.x салбарыг өөр хувилбараар хөгжүүлэх зорилгоор. DragonFly BSD-ийн онцлогуудын дотроос бид тараагдсан файлын системийг онцолж болно ХАМАГ, "виртуал" системийн цөмүүдийг хэрэглэгчийн процесс болгон ачаалах дэмжлэг, SSD хөтчүүд дээр FS өгөгдөл болон мета өгөгдлийг кэш хийх чадвар, контекст мэдрэмтгий хувилбарт симбол холбоосууд, дискэн дээрх төлөвийг хадгалах явцад процессуудыг царцаах чадвар, хөнгөн урсгалтай эрлийз цөм. (LWKT) .

Үндсэн сайжруулалтDragonFlyBSD 5.8 дээр нэмсэн:

  • Үндсэн найрлагад хэрэгсэл орно синт, өөрийн DPort хоёртын репозиторуудыг орон нутгийн угсралт, засвар үйлчилгээ хийхэд зориулагдсан. Хамааралтай модыг харгалзан дурын тооны портуудын угсралтыг параллель болгохыг дэмждэг. Шинэ хувилбарт бэлтгэхийн тулд DPort нь хэд хэдэн хамааралтай багцуудыг бүтээх ажлыг хурдасгахад чиглэсэн олон тооны өөрчлөлтүүдийг хийсэн.
  • libc нь дохиог далдлах үр дүнтэй механизмыг хэрэгжүүлдэг бөгөөд энэ нь malloc*() болон үүнтэй төстэй функцуудыг дохиогоор тасалдсанаас үүсэх асуудлаас хамгаалах боломжийг олгодог. Богино хугацаанд дохиог хаах, блокоос гаргахын тулд системийн дуудлага хийхгүйгээр ажилладаг sigblockall() болон sigunblockall() функцуудыг санал болгож байна. Нэмж дурдахад libc нь strtok() функцийг олон урсгалтай програмуудад ашиглахад тохируулан, dports-ийн дэмжлэгийг сайжруулахын тулд TABDLY, TAB0, TAB3 тогтмолууд болон __errno_location функцийг нэмсэн.
  • DRM (Direct Rendering Manager) интерфэйсийн бүрэлдэхүүн хэсгүүд нь Linux цөм 4.9-тэй синхрончлогдсон бөгөөд Wayland-ийн дэмжлэгийг сайжруулахад чиглэгдсэн 4.12 цөмөөс сонгогдсон функцуудтай.
    Intel GPU-д зориулсан drm/i915 драйвер нь шинэ чипүүдийг (Skylake, Coffelake, Amber Lake, Whiskey Lake, Comet Lake) дэмжихийн тулд 4.8.17 цөмөөс шилжүүлсэн код бүхий Linux цөм 5.4-тэй синхрончлогдсон. AMD видео картуудын drm/radeon драйвер нь Linux 4.9 цөмтэй синхрончлогдсон.

  • Виртуал санах ойн пейжерийн алгоритмууд мэдэгдэхүйц сайжирч, санах ой хангалтгүй үед хэрэглэгчийн интерфэйс дэх хариу үйлдэлтэй холбоотой асуудлуудыг арилгах эсвэл багасгах боломжийг бидэнд олгосон. Системийн санах ой хангалтгүйгээс Chrome/Chromium-ийн хөлдөлттэй холбоотой асуудлууд шийдэгдсэн.
  • Олон тооны процессорын цөмтэй системүүдийн цөмийн масштабыг сайжруулсан. Виртуал санах ойн хуудасны хүсэлтийн хугацааг багасгасан. Санах ой бага байх үед SMP маргааныг багасгасан. "Нээлттэй(... O_RDWR)" дуудлагын үр ашгийг нэмэгдүүлсэн.
  • Цөм дэх псевдо санамсаргүй тоо үүсгэгчийг дахин зохион бүтээсэн. RDRAND драйвер нь бүх CPU-ээс энтропи хуримтлуулахад зориулагдсан. Багассан эрчим
    мөн RDRAND тэжээлийн хэмжээ, өмнө нь сул зогсолтын үед CPU-ийн цагийн 2-3%-ийг авдаг байсан.

  • realpath, getrandom болон lwp_getname шинэ системийн дуудлагуудыг нэмсэн (pthread_get_name_np-г хэрэгжүүлэхийг зөвшөөрсөн).
  • SMAP (Supervisor Mode Access Prevention) болон SMEP (Supervisor Mode Execution Prevention) хамгаалах механизмуудад нэмэлт дэмжлэг үзүүлэв. SMAP нь цөмийн түвшинд ажиллаж байгаа давуу эрхтэй кодоос хэрэглэгчийн орон зайн өгөгдөлд хандах хандалтыг хаах боломжийг танд олгоно. SMEP нь цөмийн горимоос хэрэглэгчийн түвшинд байрлах кодын гүйцэтгэлд шилжихийг зөвшөөрдөггүй бөгөөд энэ нь цөмийн олон эмзэг байдлын ашиглалтыг хаах боломжийг олгодог (хэрэглэгчийн орон зайд байгаа тул бүрхүүлийн кодыг гүйцэтгэхгүй);
  • Jail-г тохируулах sysctl хувьсагчдыг дахин боловсруулсан. Шорон дахь nullfs болон tmpfs холбох чадварыг нэмсэн.
  • HAMMER2 файлын системийн яаралтай тусламжийн горимыг нэмсэн бөгөөд алдаа гарсаны дараа сэргээх үед ашиглах боломжтой. Энэ горимд инодыг дотооддоо шинэчлэх үед агшин зуурын зургийг устгах боломжтой (бичих дээр хуулбарлах механизмыг ашиглах боломжгүй тохиолдолд дискний хоосон зай байхгүй тохиолдолд файл, санг устгах боломжтой). HAMMER2 дээр утас дамжуулах дэмжлэгийг дахин боловсруулснаар гүйцэтгэлийг мэдэгдэхүйц сайжруулсан. Буферийг угаах үйл явц мэдэгдэхүйц сайжирсан.
  • TMPFS-ийн найдвартай байдал, гүйцэтгэл сайжирсан. Системд сул санах ой дутагдсан тохиолдолд үйл ажиллагааны үр ашгийг нэмэгдүүлнэ.
  • IPv4 сүлжээний стек одоо /31 угтварыг (RFC 3021).
    Tap нь MTU > 1500-г дэмжихийн тулд SIOCSIFMTU ioctl зохицуулалтыг сайжруулсан. SIOCSIFINFO_IN6 болон SO_RERROR-ын дэмжлэгийг нэмсэн.

  • Iwm драйвер нь Intel утасгүй чипүүдийн дэмжлэгтэйгээр FreeBSD-тэй синхрончлогдсон (iwm-9000 болон iwm-9260-ийн дэмжлэг нэмэгдсэн).
  • Портын нийцтэй байдлыг сайжруулахын тулд Linux-тэй нийцтэй basename() болон dirname() функцуудыг нэмсэн.
  • fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6-г FreeBSD-с libc/getaddrinfo(), calendar(1), rcorder-visualize.sh руу зөөв. math.h-ийн функцуудыг OpenBSD-ээс зөөсөн.
  • Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3 зэрэг гуравдагч талын бүрэлдэхүүн хэсгүүдийн шинэчилсэн хувилбарууд. Анхдагч хөрвүүлэгч нь gcc-8 юм.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх