Rilis sistem operasi NetBSD 9.0

Tersedia rilis sistem operasi utama NetBSD 9.0, di mana bagian berikutnya dari fitur-fitur baru diimplementasikan. Untuk memuat siap gambar instalasi berukuran 470 MB. Rilis NetBSD 9.0 secara resmi tersedia dalam versi build 57 arsitektur sistem dan 15 keluarga CPU yang berbeda.

Secara terpisah, terdapat 8 port utama yang didukung dan menjadi inti strategi pengembangan NetBSD: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 dan xen. 49 port yang terkait dengan CPU seperti alpha, hppa, m68010, m68k, sh3, sparc dan vax diklasifikasikan dalam kategori kedua, yaitu. masih didukung, tetapi telah kehilangan relevansinya atau tidak memiliki cukup banyak pengembang yang tertarik dengan pengembangannya. Satu pelabuhan (acorn26) termasuk dalam kategori ketiga, yang berisi pelabuhan-pelabuhan yang tidak beroperasi dan layak untuk dihapus jika tidak ada peminat yang tertarik dengan pengembangannya.

Kunci perbaikan NetBSD 9.0:

  • Hypervisor baru ditambahkan NVMM, yang mendukung mekanisme virtualisasi perangkat keras SVM untuk CPU AMD dan VMX untuk CPU Intel. Fitur khusus NVMM adalah pada level kernel, hanya set pengikatan minimum yang diperlukan di sekitar mekanisme virtualisasi perangkat keras yang dilakukan, dan semua kode emulasi perangkat keras dipindahkan dari kernel ke ruang pengguna. Untuk mengelola mesin virtual, alat berbasis perpustakaan libnvmm telah disiapkan, serta paket qemu-nvmm untuk menjalankan sistem tamu menggunakan NVMM. API libnvmm mencakup fungsi seperti membuat dan menjalankan mesin virtual, mengalokasikan memori ke sistem tamu, dan mengalokasikan VCPU. Namun, libnvmm tidak berisi fungsi emulator, tetapi hanya menyediakan API yang memungkinkan Anda mengintegrasikan dukungan NVMM ke dalam emulator yang ada seperti QEMU;
  • Memberikan dukungan untuk arsitektur AArch64 64-bit (ARMv8-A), termasuk sistem server yang sesuai dengan ARM ServerSiap (SBBR+SBSA), dan sistem big.LITTLE (kombinasi inti yang bertenaga, namun memakan energi, dan inti yang kurang produktif, namun lebih hemat energi dalam satu chip). Mendukung menjalankan aplikasi 32-bit di lingkungan 64-bit melalui penggunaan COMPAT_NETBSD32. Hingga 256 CPU dapat digunakan. Berjalan di emulator QEMU dan SoC didukung:
    • Semua pemenang A64, H5, H6
    • Amlogic S905, S805X, S905D, S905W, S905X
    • Broadcom BCM2837
    • NVIDIA Tegra X1 (T210)
    • Rockchip RK3328, RK3399
    • Papan server SBSA/SBBR seperti Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
  • Dukungan untuk perangkat berdasarkan arsitektur ARMv7-A telah diperluas. Menambahkan dukungan untuk sistem big.LITTLE dan booting melalui UEFI. Hingga 8 CPU dapat digunakan. Menambahkan dukungan SoC:
    • Semua pemenang A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Amlogic S805
    • Lengan Serbaguna Express V2P-CA15
    • Broadcom BCM2836, BCM2837
    • Intel Siklon V SoC FPGA
    • NVIDIA Tegra K1 (T124)
    • Samsung Exynos 5422
    • TI AM335x, OMAP3
    • Xilinx Zynq 7000
  • Driver grafis yang diperbarui untuk GPU Intel (menambahkan dukungan untuk Intel Kabylake), NVIDIA dan AMD untuk sistem x86. Subsistem DRM/KMS disinkronkan dengan kernel Linux 4.4. Menambahkan driver GPU baru yang digunakan pada sistem ARM, termasuk driver DRM/KMS untuk Allwinner DE2, Rockchip VOP dan TI AM335x LCDC, driver framebuffer untuk ARM PrimeCell PL111 dan TI OMAP3 DSS;
  • Peningkatan dukungan untuk menjalankan NetBSD sebagai OS tamu. Menambahkan dukungan untuk perangkat fw_cfg (Konfigurasi Firmware QEMU), Virtio MMIO dan PCI untuk ARM. Memberikan dukungan untuk HyperV untuk x86;
  • Penghitung telah diterapkan untuk memantau kinerja, memungkinkan Anda menganalisis kinerja kernel dan aplikasi pengguna dengan cepat. Kontrol dilakukan melalui perintah tprof. Platform Armv7, Armv8, dan x86 (AMD dan Intel) didukung;
  • Untuk arsitektur x86_64 ditambahkan mekanisme untuk mengacak ruang alamat kernel (KASLR, Kernel Address Space Layout Randomization), yang memungkinkan Anda meningkatkan ketahanan terhadap jenis serangan tertentu yang mengeksploitasi kerentanan di kernel dengan menghasilkan tata letak acak kode kernel di memori pada setiap boot;
  • Menambahkan dukungan untuk arsitektur x86_64 KLEAK, sebuah teknik untuk mendeteksi kebocoran memori kernel, yang memungkinkan kami menemukan dan memperbaiki lebih dari 25 kesalahan di kernel;
  • Untuk arsitektur x86_64 dan Aarch64, mekanisme debugging KASan (Kernel address sanitizer) diterapkan, yang memungkinkan Anda mengidentifikasi kesalahan memori, seperti akses ke blok memori yang sudah dibebaskan dan buffer overflows;
  • Menambahkan mekanisme KUBSAN (Kernel Undefinisi Behavior Sanitizer) untuk mendeteksi kasus perilaku tidak terdefinisi di kernel
  • Untuk arsitektur x86_64, driver KCOV (Kernel Coverage) telah diimplementasikan untuk menganalisis cakupan kode kernel;
  • Menambahkan Userland Sanitizer untuk mendeteksi kesalahan dan anomali saat menjalankan aplikasi di ruang pengguna;
  • Menambahkan mekanisme KHH (Kernel Heap Hardening) untuk melindungi heap dari jenis kesalahan memori tertentu;
  • Diadakan audit keamanan tumpukan jaringan;
  • Alat debugging ptrace yang ditingkatkan;
  • Kernel dibersihkan dari subsistem lama dan tidak terawat, seperti NETISDN (driver daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 dan ipkdb;
  • Kemampuan filter paket telah diperluas dan kinerjanya dioptimalkan NPF, yang sekarang diaktifkan secara default;
  • Implementasi sistem file ZFS telah diperbarui agar cocok untuk penggunaan sehari-hari. Kemampuan untuk melakukan booting dari ZFS dan menggunakan ZFS pada partisi root belum didukung;
  • Driver baru telah ditambahkan, termasuk bwfm untuk perangkat nirkabel Broadcom (Full-MAC), ena untuk Amazon Elastic Network Adapter dan mcx untuk adaptor Ethernet Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN ;
  • Subsistem SATA telah didesain ulang, menambahkan dukungan untuk NCQ dan meningkatkan penanganan kesalahan yang dihasilkan oleh drive;
  • Diajukan kerangka usbnet baru untuk membuat driver untuk adaptor Ethernet dengan antarmuka USB;
  • Versi komponen pihak ketiga yang diperbarui, termasuk GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0, dan SQLite 3.26.0.

    Sumber: opennet.ru

Tambah komentar