NetBSD 9.0 işletim sisteminin piyasaya sürülmesi

Mevcut büyük işletim sistemi sürümü NetBSD9.0, yeni özelliklerin bir sonraki bölümünün uygulandığı yer. Yükleme için hazır kurulum görselleri 470 MB boyutunda. NetBSD 9.0 sürümü resmi olarak şu sürümlerde mevcuttur: 57 sistem mimarisi ve 15 farklı CPU ailesi.

Ayrı olarak, NetBSD'nin geliştirme stratejisinin temelini oluşturan öncelikli olarak desteklenen 8 bağlantı noktası vardır: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 ve xen. Alpha, hppa, m49, m68010k, sh68, sparc ve vax gibi CPU'larla ilişkili 3 bağlantı noktası ikinci kategoride sınıflandırılır, yani. hala desteklenmektedir ancak ilgilerini kaybetmiştir veya bunların geliştirilmesiyle ilgilenen yeterli sayıda geliştiriciye sahip değildir. Bir bağlantı noktası (acorn26), geliştirilmesiyle ilgilenen meraklıların olmaması durumunda kaldırılmaya uygun, çalışmayan bağlantı noktalarını içeren üçüncü kategoriye dahil edilmiştir.

Anahtar iyileştirmeler NetBSD 9.0:

  • Yeni hipervizör eklendi NVMMAMD CPU'lar için donanım sanallaştırma mekanizmalarını (SVM) ve Intel CPU'lar için VMX'i destekler. NVMM'nin özel bir özelliği, çekirdek düzeyinde, donanım sanallaştırma mekanizmaları çevresinde yalnızca gereken minimum bağlantı kümesinin gerçekleştirilmesi ve tüm donanım öykünme kodunun çekirdekten kullanıcı alanına taşınmasıdır. Sanal makineleri yönetmek için libnvmm kitaplığını temel alan araçların yanı sıra NVMM kullanarak konuk sistemleri çalıştırmak için qemu-nvmm paketi de hazırlandı. Libnvmm API, sanal makine oluşturma ve çalıştırma, konuk sisteme bellek ayırma ve VCPU'ları ayırma gibi işlevleri kapsar. Bununla birlikte, libnvmm emülatör işlevlerini içermez, yalnızca NVMM desteğini QEMU gibi mevcut emülatörlere entegre etmenize olanak tanıyan bir API sağlar;
  • ARM uyumlu sunucu sistemleri de dahil olmak üzere 64 bit AArch64 mimarisi (ARMv8-A) için destek sağlar Sunucuya Hazır (SBBR+SBSA) ve big.LITTLE sistemleri (güçlü ancak enerji tüketen çekirdekler ile daha az üretken ancak enerji açısından daha verimli çekirdeklerin tek bir çipte birleşimi). COMPAT_NETBSD32 kullanımıyla 64 bit ortamda 32 bit uygulamaların çalıştırılmasını destekler. En fazla 256 CPU kullanılabilir. QEMU emülatöründe ve SoC'de çalışmak desteklenir:
    • Tüm kazanan 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 gibi SBSA/SBBR sunucu anakartları.
  • ARMv7-A mimarisini temel alan cihazlara yönelik destek genişletildi. big.LITTLE sistemleri ve UEFI aracılığıyla önyükleme desteği eklendi. En fazla 8 CPU kullanılabilir. SoC desteği eklendi:
    • Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Amlogic S805
    • Kol Çok Yönlü Ekspres 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'lar (Intel Kabylake için ek destek), x86 sistemleri için NVIDIA ve AMD için güncellenmiş grafik sürücüleri. DRM/KMS alt sistemi Linux 4.4 çekirdeğiyle senkronize edilmiştir. Allwinner DE2, Rockchip VOP ve TI AM335x LCDC için DRM/KMS sürücüleri, ARM PrimeCell PL111 ve TI OMAP3 DSS için çerçeve tampon sürücüsü dahil olmak üzere ARM sistemlerinde kullanılan yeni GPU sürücüleri eklendi;
  • NetBSD'yi konuk işletim sistemi olarak çalıştırmak için geliştirilmiş destek. Fw_cfg cihazı (QEMU Firmware Yapılandırması), Virtio MMIO ve ARM için PCI desteği eklendi. x86 için HyperV desteği sağlandı;
  • Performansı izlemek için sayaçlar uygulanmıştır; bu sayede çekirdek ve kullanıcı uygulamalarının performansını anında analiz edebilirsiniz. Kontrol tprof komutu ile yapılır. Armv7, Armv8 ve x86 (AMD ve Intel) platformları desteklenir;
  • x86_64 mimarisi için katma çekirdek adres alanını rastgele hale getirmeye yönelik bir mekanizma (KASLR, Çekirdek Adres Alanı Düzeni Rastgeleleştirme), her önyüklemede bellekteki çekirdek kodunun rastgele bir düzenini oluşturarak çekirdekteki güvenlik açıklarından yararlanan belirli saldırı türlerine karşı direnci artırmanıza olanak tanır;
  • x86_64 mimarisi için destek eklendi KAÇAKçekirdekteki 25'ten fazla hatayı bulmamıza ve düzeltmemize olanak tanıyan, çekirdek belleği sızıntılarını tespit etmeye yönelik bir teknik;
  • x86_64 ve Aarch64 mimarileri için, halihazırda serbest bırakılmış bellek bloklarına erişim ve arabellek taşmaları gibi bellek hatalarını tanımlamanıza olanak tanıyan KASan (Çekirdek adresi temizleme) hata ayıklama mekanizması uygulanır;
  • Çekirdekteki tanımsız davranış durumlarını tespit etmek için KUBSAN (Çekirdek Tanımsız Davranış Temizleyici) mekanizması eklendi
  • x86_64 mimarisi için, çekirdek kodu kapsamını analiz etmek üzere KCOV (Çekirdek Kapsamı) sürücüsü uygulanmıştır;
  • Uygulamaları kullanıcı alanında çalıştırırken hataları ve anormallikleri tespit etmek için Userland Sanitizer eklendi;
  • Yığını belirli türdeki bellek hatalarından korumak için KHH (Çekirdek Yığın Sertleştirme) mekanizması eklendi;
  • Yürütülen ağ yığını güvenlik denetimi;
  • Geliştirilmiş ptrace hata ayıklama araçları;
  • Çekirdek, NETISDN (daic, iavc, ifpci, ifritz, iwic, isic sürücüleri), NETNATM, NDIS, SVR3, SVR4, n8, vm86 ve ipkdb gibi eski ve bakımı yapılmayan alt sistemlerden temizlendi;
  • Paket filtresinin yetenekleri genişletildi ve performans optimize edildi NPFartık varsayılan olarak etkindir;
  • ZFS dosya sistemi uygulaması, günlük kullanıma uygun hale getirilecek şekilde güncellendi. ZFS'den önyükleme yapma ve ZFS'yi kök bölümde kullanma yeteneği henüz desteklenmemektedir;
  • Broadcom kablosuz aygıtları (Full-MAC) için bwfm, Amazon Elastic Network Adapter için ena ve Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN Ethernet adaptörleri için mcx dahil olmak üzere yeni sürücüler eklendi ;
  • SATA alt sistemi yeniden tasarlandı; NCQ desteği eklendi ve sürücü tarafından oluşturulan hata yönetimi iyileştirildi;
  • Önerilen USB arayüzlü Ethernet adaptörleri için sürücüler oluşturmaya yönelik yeni usbnet çerçevesi;
  • GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 ve SQLite 3.26.0 dahil olmak üzere üçüncü taraf bileşenlerin güncellenmiş sürümleri.

    Kaynak: opennet.ru

Yorum ekle