Phát hành hệ điều hành NetBSD 9.0

Có sẵn phát hành hệ điều hành lớn NetBSD 9.0, trong đó phần tiếp theo của các tính năng mới được triển khai. Để nạp chuẩn bị hình ảnh cài đặt có kích thước 470 MB. Bản phát hành NetBSD 9.0 đã chính thức có sẵn trong các bản dựng dành cho 57 kiến ​​trúc hệ thống và 15 họ CPU khác nhau.

Riêng biệt, có 8 cổng được hỗ trợ chủ yếu tạo thành cốt lõi trong chiến lược phát triển của NetBSD: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 và xen. 49 cổng liên kết với CPU như alpha, hppa, m68010, m68k, sh3, sparc và vax được phân loại vào loại thứ hai, tức là. vẫn được hỗ trợ nhưng không còn phù hợp hoặc không có đủ số lượng nhà phát triển quan tâm đến sự phát triển của chúng. Một cổng (acorn26) được bao gồm trong danh mục thứ ba, chứa các cổng không hoạt động có đủ điều kiện để loại bỏ nếu không có người đam mê quan tâm đến sự phát triển của chúng.

Chìa khóa cải tiến NetBSD 9.0:

  • Trình ảo hóa mới được thêm vào NVMM, hỗ trợ cơ chế ảo hóa phần cứng SVM cho CPU AMD và VMX cho CPU Intel. Một tính năng đặc biệt của NVMM là ở cấp hạt nhân chỉ có bộ liên kết cần thiết tối thiểu xung quanh các cơ chế ảo hóa phần cứng được thực hiện và tất cả mã mô phỏng phần cứng được chuyển ra khỏi hạt nhân vào không gian người dùng. Để quản lý máy ảo, các công cụ dựa trên thư viện libnvmm đã được chuẩn bị cũng như gói qemu-nvmm để chạy hệ thống khách bằng NVMM. API libnvmm bao gồm các chức năng như tạo và chạy máy ảo, phân bổ bộ nhớ cho hệ thống khách và phân bổ VCPU. Tuy nhiên, libnvmm không chứa các chức năng giả lập mà chỉ cung cấp API cho phép bạn tích hợp hỗ trợ NVMM vào các trình giả lập hiện có như QEMU;
  • Cung cấp hỗ trợ cho kiến ​​trúc AArch64 64-bit (ARMv8-A), bao gồm các hệ thống máy chủ tương thích với ARM Máy chủ đã sẵn sàng (SBBR+SBSA) và các hệ thống big.LITTLE (sự kết hợp giữa các lõi mạnh mẽ nhưng tiêu tốn năng lượng và các lõi kém năng suất hơn nhưng tiết kiệm năng lượng hơn trong một chip). Nó hỗ trợ chạy các ứng dụng 32 bit trong môi trường 64 bit thông qua việc sử dụng COMPAT_NETBSD32. Có thể sử dụng tới 256 CPU. Chạy trong trình mô phỏng QEMU và SoC được hỗ trợ:
    • Allwinner A64, H5, H6
    • Amlogic S905, S805X, S905D, S905W, S905X
    • Broadcom BCM2837
    • NVIDIA Tegra X1 (T210)
    • Rockchip RK3328, RK3399
    • Các bo mạch máy chủ SBSA/SBBR như Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
  • Hỗ trợ cho các thiết bị dựa trên kiến ​​trúc ARMv7-A đã được mở rộng. Đã thêm hỗ trợ cho hệ thống big.LITTLE và khởi động qua UEFI. Có thể sử dụng tối đa 8 CPU. Đã thêm hỗ trợ SoC:
    • Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Amlogic S805
    • Arm đa năng Express V2P-CA15
    • Broadcom BCM2836, BCM2837
    • Intel Cyclone V SoC FPGA
    • NVIDIA Tegra K1 (T124)
    • Samsung Exynos 5422
    • TI AM335x, OMAP3
    • Xilinx Zynq 7000
  • Cập nhật trình điều khiển đồ họa cho GPU Intel (hỗ trợ thêm cho Intel Kabylake), NVIDIA và AMD cho hệ thống x86. Hệ thống con DRM/KMS được đồng bộ hóa với nhân Linux 4.4. Đã thêm trình điều khiển GPU mới được sử dụng trên hệ thống ARM, bao gồm trình điều khiển DRM/KMS cho Allwinner DE2, Rockchip VOP và TI AM335x LCDC, trình điều khiển bộ đệm khung cho ARM PrimeCell PL111 và TI OMAP3 DSS;
  • Cải thiện hỗ trợ để chạy NetBSD dưới dạng hệ điều hành khách. Đã thêm hỗ trợ cho thiết bị fw_cfg (Cấu hình chương trình cơ sở QEMU), Virtio MMIO và PCI cho ARM. Cung cấp hỗ trợ cho HyperV cho x86;
  • Bộ đếm đã được triển khai để theo dõi hiệu suất, cho phép bạn phân tích hiệu suất của kernel và ứng dụng người dùng một cách nhanh chóng. Việc điều khiển được thực hiện thông qua lệnh tprof. Các nền tảng Armv7, Armv8 và x86 (AMD và Intel) được hỗ trợ;
  • Đối với kiến ​​trúc x86_64 thêm một cơ chế ngẫu nhiên hóa không gian địa chỉ hạt nhân (KASLR, Ngẫu nhiên hóa bố cục không gian địa chỉ hạt nhân), cho phép bạn tăng khả năng chống lại một số loại tấn công nhất định khai thác lỗ hổng trong hạt nhân bằng cách tạo bố cục ngẫu nhiên của mã hạt nhân trong bộ nhớ mỗi lần khởi động;
  • Đã thêm hỗ trợ cho kiến ​​trúc x86_64 KLEAK, một kỹ thuật phát hiện rò rỉ bộ nhớ kernel, cho phép chúng tôi tìm và sửa hơn 25 lỗi trong kernel;
  • Đối với kiến ​​trúc x86_64 và Aarch64, cơ chế gỡ lỗi KASan (Khử trùng địa chỉ hạt nhân) được triển khai, cho phép bạn xác định các lỗi bộ nhớ, chẳng hạn như quyền truy cập vào các khối bộ nhớ đã được giải phóng và lỗi tràn bộ đệm;
  • Đã thêm cơ chế KUBSAN (Bộ khử trùng hành vi không xác định hạt nhân) để phát hiện các trường hợp hành vi không xác định trong hạt nhân
  • Đối với kiến ​​trúc x86_64, trình điều khiển KCOV (Kernel Coverage) đã được triển khai để phân tích phạm vi bao phủ mã kernel;
  • Đã thêm Userland Sanitizer để phát hiện lỗi và sự bất thường khi chạy ứng dụng trong không gian người dùng;
  • Đã thêm cơ chế KHH (Kernel Heap Hardening) để bảo vệ vùng heap khỏi một số loại lỗi bộ nhớ nhất định;
  • Tiến hành kiểm tra an ninh ngăn xếp mạng;
  • Cải thiện công cụ gỡ lỗi ptrace;
  • Nhân đã được làm sạch khỏi các hệ thống con cũ và không được bảo trì, chẳng hạn như NETISDN (trình điều khiển daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 và ipkdb;
  • Khả năng của bộ lọc gói đã được mở rộng và tối ưu hóa hiệu suất NPF, hiện được bật theo mặc định;
  • Việc triển khai hệ thống tệp ZFS đã được cập nhật để phù hợp với việc sử dụng hàng ngày. Khả năng khởi động từ ZFS và sử dụng ZFS trên phân vùng gốc chưa được hỗ trợ;
  • Các trình điều khiển mới đã được thêm vào, bao gồm bwfm cho các thiết bị không dây Broadcom (Full-MAC), ena cho Amazon Elastic Network Adapter và mcx cho các bộ điều hợp Ethernet Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN ;
  • Hệ thống con SATA đã được thiết kế lại, bổ sung hỗ trợ cho NCQ và cải thiện khả năng xử lý lỗi do ổ đĩa tạo ra;
  • Đề xuất khung usbnet mới để tạo trình điều khiển cho bộ điều hợp Ethernet có giao diện USB;
  • Phiên bản cập nhật của các thành phần bên thứ ba, bao gồm GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 và SQLite 3.26.0.

    Nguồn: opennet.ru

Thêm một lời nhận xét