NetBSD 9.0 операциялық жүйесінің шығарылымы

Қол жетімді негізгі операциялық жүйенің шығарылымы NetBSD 9.0, онда жаңа мүмкіндіктердің келесі бөлігі жүзеге асырылады. Жүктеу үшін дайындалды 470 МБ өлшемдегі орнату кескіндері. NetBSD 9.0 шығарылымы ресми түрде құрастырылған 57 жүйелік архитектура және 15 түрлі CPU отбасылары.

Сонымен қатар, NetBSD даму стратегиясының өзегін құрайтын негізінен қолдау көрсетілетін 8 порт бар: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 және xen. Alpha, hppa, m49, m68010k, sh68, sparc және vax сияқты процессорлармен байланысты 3 порт екінші санатқа жіктеледі, яғни. әлі де қолдау көрсетіледі, бірақ өзектілігін жоғалтты немесе олардың дамуына мүдделі әзірлеушілердің жеткілікті саны жоқ. Бір порт (acorn26) үшінші санатқа кіреді, онда олардың дамуына мүдделі энтузиастар болмаса, жоюға жарамды жұмыс істемейтін порттар бар.

Кілт жақсартулар NetBSD 9.0:

  • Жаңа гипервизор қосылды NVMM, ол AMD процессорлары үшін SVM және Intel процессорлары үшін VMX аппараттық виртуалдандыру механизмдерін қолдайды. NVMM ерекшелігі ядро ​​деңгейінде аппараттық виртуалдандыру механизмдерінің айналасындағы байланыстырулардың ең аз қажетті жиынтығы ғана орындалады және барлық аппараттық эмуляция коды ядродан пайдаланушы кеңістігіне жылжытылады. Виртуалды машиналарды басқару үшін libnvmm кітапханасына негізделген құралдар, сондай-ақ NVMM көмегімен қонақтық жүйелерді іске қосу үшін qemu-nvmm пакеті дайындалды. libnvmm API виртуалды машинаны жасау және іске қосу, қонақтық жүйеге жадты бөлу және VCPU бөлу сияқты функцияларды қамтиды. Дегенмен, libnvmm эмулятор функцияларын қамтымайды, бірақ тек NVMM қолдауын QEMU сияқты бар эмуляторларға біріктіруге мүмкіндік беретін API ұсынады;
  • 64-биттік AArch64 архитектурасына (ARMv8-A), соның ішінде ARM-үйлесімді сервер жүйелеріне қолдау көрсетеді. ServerReady (SBBR+SBSA) және big.LITTLE жүйелері (қуатты, бірақ энергияны тұтынатын және өнімділігі аз, бірақ бір чиптегі энергияны үнемдейтін ядролардың үйлесімі). Ол COMPAT_NETBSD32 арқылы 64 биттік ортада 32 биттік қолданбаларды іске қосуды қолдайды. 256 процессорға дейін пайдалануға болады. QEMU эмуляторында және SoC жүйесінде іске қосуға қолдау көрсетіледі:
    • Allwinner A64, H5, H6
    • Amlogic S905, S805X, S905D, S905W, S905X
    • Broadcom BCM2837
    • NVIDIA Tegra X1 (T210)
    • Rockchip RK3328, RK3399
    • Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040 сияқты SBSA/SBBR серверлік тақталары.
  • ARMv7-A архитектурасына негізделген құрылғыларды қолдау кеңейтілді. big.LITTLE жүйелеріне және UEFI жүктеуіне қолдау қосылды. 8 процессорға дейін пайдалануға болады. Қосылған SoC қолдауы:
    • Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Амлогиялық S805
    • Arm Versile Express V2P-CA15
    • Broadcom BCM2836, BCM2837
    • Intel Cyclone V SoC FPGA
    • NVIDIA Tegra K1 (T124)
    • Samsung Exynos 5422
    • TI AM335x, OMAP3
    • Xilinx Zynq 7000
  • Intel GPU (Intel Kabylake үшін қосымша қолдау), x86 жүйелері үшін NVIDIA және AMD үшін жаңартылған графикалық драйверлер. DRM/KMS ішкі жүйесі Linux 4.4 ядросымен синхрондалған. ARM жүйелерінде қолданылатын жаңа GPU драйверлері, соның ішінде Allwinner DE2, Rockchip VOP және TI AM335x LCDC үшін DRM/KMS драйверлері, ARM PrimeCell PL111 және TI OMAP3 DSS үшін фреймбуфер драйвері қосылды;
  • NetBSD жүйесін қонақ ОЖ ретінде іске қосу үшін жақсартылған қолдау. fw_cfg құрылғысына (QEMU микробағдарлама конфигурациясы), Virtio MMIO және ARM үшін PCI қолдауы қосылды. x86 үшін HyperV қолдауымен қамтамасыз етілген;
  • Жұмысты бақылау үшін есептегіштер енгізілді, бұл ядро ​​мен пайдаланушы қолданбаларының өнімділігін жылдам талдауға мүмкіндік береді. Басқару tprof командасы арқылы жүзеге асырылады. Armv7, Armv8 және x86 (AMD және Intel) платформаларына қолдау көрсетіледі;
  • x86_64 архитектурасы үшін қосылды ядроның адрестік кеңістігін рандомизациялау механизмі (KASLR, Kernel Address Space Layout Randomization), ол әрбір жүктеу кезінде жадтағы ядро ​​​​кодының кездейсоқ орналасуын генерациялау арқылы ядродағы осалдықтарды пайдаланатын шабуылдардың белгілі бір түрлеріне қарсы тұруды арттыруға мүмкіндік береді;
  • x86_64 архитектурасына қолдау қосылды KLEAK, ядродағы 25-тен астам қателерді табуға және түзетуге мүмкіндік беретін ядро ​​жадысының ағып кетуін анықтау әдістемесі;
  • x86_64 және Aarch64 архитектуралары үшін қазірдің өзінде босатылған жад блоктарына қол жеткізу және буфердің толып кетуі сияқты жад қателерін анықтауға мүмкіндік беретін KASan (ядро мекенжайын санитарлық тазарту) жөндеу механизмі жүзеге асырылады;
  • Ядродағы анықталмаған мінез-құлық жағдайларын анықтау үшін KUBSAN (ядро анықталмаған мінез-құлық тазартқыш) механизмі қосылды.
  • x86_64 архитектурасы үшін ядро ​​кодын қамтуды талдау үшін KCOV (Ядро қамту) драйвері іске қосылды;
  • Пайдаланушы кеңістігінде қолданбаларды іске қосу кезінде қателер мен ауытқуларды анықтау үшін Userland Sanitizer қосылды;
  • Үйіндіні жад қателерінің белгілі бір түрінен қорғау үшін KHH (ядро үйіндісін қатайту) механизмі қосылды;
  • Өткізілген желілік стек қауіпсіздігінің аудиті;
  • Жақсартылған ptrace жөндеу құралдары;
  • Ядро NETISDN (драйверлер daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 және ipkdb сияқты ескі және жөндеу көрмеген ішкі жүйелерден тазартылды;
  • Пакет сүзгісінің мүмкіндіктері кеңейтілді және өнімділігі оңтайландырылды NPF, ол қазір әдепкі бойынша қосылған;
  • ZFS файлдық жүйесін енгізу оны күнделікті қолдануға жарамды ету үшін жаңартылды. ZFS жүйесінен жүктеу және түбірлік бөлімде ZFS пайдалану мүмкіндігіне әлі қолдау көрсетілмейді;
  • Broadcom сымсыз құрылғыларына арналған bwfm (Full-MAC), Amazon Elastic Network Adapter үшін ena және Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN Ethernet адаптерлеріне арналған mcx қоса, жаңа драйверлер қосылды. ;
  • SATA ішкі жүйесі NCQ қолдауын қосып, дискіден жасалған қателерді өңдеуді жақсартатын қайта жасақталды;
  • Ұсынылған USB интерфейсі бар Ethernet адаптерлеріне арналған драйверлерді жасауға арналған жаңа usbnet құрылымы;
  • GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 және SQLite 3.26.0 қоса алғанда, үшінші тарап құрамдастарының жаңартылған нұсқалары.

    Ақпарат көзі: opennet.ru

пікір қалдыру