FreeBSD 13.0 ngabebaskeun

Dua satengah taun sanggeus formasi cabang 12.x dibere sékrési FreeBSD 13.0, nu disiapkeun keur amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 na riscv64 arsitéktur. Salaku tambahan, gambar dihasilkeun pikeun sistem virtualisasi (QCOW2, VHD, VMDK, mentah) sareng lingkungan awan Amazon EC2, Google Compute Engine sareng Vagrant.

Inovasi utama:

  • Transisi kana palaksanaan Linux anu ngahijikeun sistem file ZFS tina proyék OpenZFS parantos dilakukeun. Diantara fitur anu sayogi dina FreeBSD saatos transisi ka OpenZFS: sistem kuota anu diperpanjang, énkripsi set data, pilihan misah tina kelas alokasi blok (kelas alokasi), panggunaan petunjuk prosesor vektor pikeun nyepetkeun palaksanaan RAIDZ sareng checksum. itungan, rojongan pikeun algoritma komprési ZSTD, mode multihost (MMP, Multi Modifier Protection), ningkat instrumentation garis paréntah, ngalereskeun loba bug patali kaayaan lomba na blocking.
  • Palabuhan pikeun arsitéktur ARM64 (AArch64) parantos dipindahkeun ka tingkat pangrojong munggaran (Tier 1), anu dirojong ku tim anu tanggung jawab pikeun ngaleungitkeun kerentanan, nyiapkeun pelepasan, sareng ngajaga palabuhan. Tingkat pangrojong munggaran ngalibatkeun nyiptakeun rakitan pamasangan, pembaruan binér sareng bungkusan anu siap-siap, ogé nyayogikeun jaminan pikeun ngarengsekeun masalah khusus sareng ngajaga ABI anu teu dirobih pikeun lingkungan pangguna sareng kernel (iwal sababaraha subsistem).
  • Arsitéktur i386 geus dipindahkeun ka tingkat kadua rojongan platform (Tier 2), dimana formasi rakitan instalasi, apdet binér jeung bungkusan siap-dijieun bakal neruskeun, tapi teu ngajamin solusi pikeun masalah husus. Jinis CPU standar (CPUTYPE) pikeun arsitéktur i386 parantos dirobih tina 486 ka 686 (upami hoyong, rakitan pikeun i486 sareng i586 tiasa didamel sacara mandiri).
  • Komponén clang, lld, lldb, compiler-rt, llvm, libunwind sareng libc ++ parantos diropéa kana versi 11.
  • Pangwangunan parantos dialihkeun tina sistem kontrol sumber terpusat Subversion ka sistem desentralisasi Git.
  • Sistem dasarna dibersihkeun tina aplikasi anu disebarkeun dina lisénsi GPL. Binutils 2.17 sarta gcc 4.2.1 geus dihapus tina tangkal sumber, sarta sakabeh arsitéktur dirojong geus dipindahkeun ka LLVM / clang toolkit. Kaasup versi anu dilisensikeun ku BSD tina utilitas grep sareng dtc (Device Tree Compiler), anu ngagentos versi anu dilisensikeun GPL. Proses mount otomatis AMD parantos dileungitkeun, fungsionalitasna ayeuna dilaksanakeun ngaliwatan autofs. Utilitas ctm geus dihapus, sarta eta disarankeun pikeun ngagunakeun misc / port ctm gantina.
  • Tumpukan routing geus ditulis ulang ngawengku rojongan pikeun objék nexthop nu nyimpen data kaayaan dipaké pikeun neraskeun pakét ka tujuan nu dipikahoyong. Ditambahkeun kamampuan pikeun nyambungkeun algoritma milarian rute anjeun nyalira. Ditambahkeun algoritma pilarian ruteu ti DPDK (Data Plane Development Kit) librte, ngamungkinkeun Anjeun pikeun ngaoptimalkeun karya kalawan tabel routing kacida gedéna. Pikeun requests proxyarp, panganteur fib dipaké. Ditambahkeun kamampuhan pikeun ngarobah angka fib on laleur via sysctl net.fibs. Pangrojong anu dilaksanakeun pikeun rute samentawis pikeun IPv4 sareng IPv6 (kalayan hirupna set).
  • rojongan routing multipath geus ditulis ulang tur dijieun leuwih scalable, nu waktos pilarian henteu gumantung kana ukuran daptar (O (1)). Palaksanaan Multipath anyar ayeuna dikaitkeun sareng parameter kernel ROUTE_MPATH, anu parantos ngagentos RADIX_MPATH sareng diaktipkeun sacara standar. Pikeun ngatur Multipath, sysctl net.route.multipath diajukeun.
  • Kerangka kriptografi anu dilaksanakeun dina tingkat kernel parantos didesain ulang, nambihan dukungan pikeun algoritma kriptografi modéren sareng nyederhanakeun antarmuka pikeun ngagunakeun enkripsi dina supir sareng komponén kernel sanés. Dipiceun algoritma luntur ARC4, Blowfish, CAST128, DES, DES, MD5-HMAC na Skipjack. IPsec sareng Kerberos henteu deui ngadukung algoritma anu dicabut ku RFC 8221 sareng RFC 6649/8429, kalebet 3DES. Dipiceun saméméhna ngumumkeun deprecated algoritma dina geli na cryptodev disk enkripsi subsistem.
  • Kernel GENERIC kalebet dukungan pikeun supir aesni sareng armv8crypto pikeun ngagancangkeun enkripsi disk basis geli nganggo petunjuk AES-NI pikeun arsitektur amd64/i386 sareng AES-XTS pikeun ARM64.
  • Ditambahkeun supir qat pikeun Intel QuickAssist (QAT) akselerator crypto jeung supir ossl kalawan palaksanaan prosedur enkripsi software gancangan ti OpenSSL, dioptimalkeun ngagunakeun kode basa assembly. Supir armv8crypto nambihan dukungan pikeun AES-XTS sareng AES-GCM nganggo petunjuk anu cocog pikeun prosesor ARMv8.
  • Ditambahkeun TLS (kTLS) palaksanaan ngajalankeun di tingkat kernel FreeBSD, anu ngamungkinkeun pikeun kanaékan signifikan dina kinerja enkripsi pikeun sockets TCP. Dirojong TLS versi 1.0 nepi ka 1.3. Pikeun enkripsi, supir crypto kernel anu ngadukung AES-CBC atanapi AES-GCM dianggo. Ngagunakeun kTLS dina spasi pamaké merlukeun rebuilding OpenSSL kalawan pilihan WITH_OPENSSL_KTLS.
  • Ditambahkeun tipe anyar jaringan panyangga, mbuf (jaringan data panyangga), nu bisa ngagambarkeun sababaraha kaca mémori fisik unmapped dina hiji panyangga, nu ngaronjatkeun kinerja sendfile (2) nelepon ku cara ngurangan ukuran daptar mbuf di stop kontak panyangga.
  • TCP tumpukan integrates rojongan pikeun algoritma pikeun ngurangan sabanding dina inténsitas ngirim pakét (Réduksi Laju sabanding, RFC 6937), nu ngidinan Anjeun pikeun gancang balikkeun parameter aliran optimal sanggeus masalah samentara jeung pangiriman data. Pikeun nganonaktipkeun PRR, sysctl net.inet.tcp.do_prr disadiakeun.
  • Kamampuhan hypervisor Bhyve parantos dilegaan: Ditambahkeun dukungan pikeun ngabagi file nganggo VirtIO-9p (VirtFS). Kamampuhan pikeun damel sareng snapshot tina mesin virtual parantos dilaksanakeun. Ditambahkeun dukungan pikeun alat PCI HDAudio sareng palabuhan serial tambahan COM3 sareng COM4. Dipiceun model alat bvmconsole na bvmdebug leungit. Ningkatkeun stabilitas pikeun klien VNC, kalebet aplikasi MacOS Screen Sharing.
  • Supir VirtIO parantos nambihan dukungan pikeun spésifikasi VirtIO V1, anu parantos ningkatkeun kasaluyuan tamu FreeBSD kalayan sagala rupa émulator sareng hypervisors.
  • Pikeun prosés napel lingkungan jail, konversi CPU bindings disadiakeun (cpuset mimitina kabeungkeut prosés bakal diganti nyokot kana akun cpuset jail urang jeung larangan set).
  • Ditambahkeun kamampuan ngawangun sistem dasar FreeBSD di lingkungan dumasar kana sistem operasi anu sanés. Kabutuhan pikeun ngawangun sistem operasi anu sanés kusabab kahayang ngagunakeun alat integrasi kontinyu dumasar kana Linux atanapi macOS pikeun nguji FreeBSD.
  • A MMC anyar / tumpukan SD diusulkeun, dumasar kana kerangka Cam sarta ngidinan Anjeun pikeun nyambungkeun alat jeung SDIO (Aman Digital I / The) panganteur. Contona, SDIO dipaké dina WiFi jeung modul Bluetooth pikeun loba dewan, kayaning buah prambus Pi 3. tumpukan anyar ogé ngamungkinkeun panganteur CAM dipaké pikeun ngirim paréntah SD ti aplikasi dina spasi pamaké, nu ngamungkinkeun pikeun nyieun alat. drivers nu beroperasi dina tingkat pamaké.
  • Ningkatkeun kinerja lapisan pikeun kasaluyuan sareng Linux. File DTS (Sumber Tangkal Alat) disingkronkeun sareng kernel Linux 5.8.
  • Ditambahkeun dukungan pikeun NFSv4.2 (RFC-7862) sareng ngalaksanakeun kamampuan ngoperasikeun NFS dina saluran komunikasi énkripsi dumasar kana TLS 1.3, tibatan nganggo Kerberos (detik = mode krb5p), anu dugi ka ngan ukur énkripsi pesen RPC sareng dilaksanakeun. ngan dina software.
  • Versi luntur tina debugger GDB, anu sateuacana dipasang dina diréktori /usr/libexec sareng dianggo dina utilitas crashinfo, parantos dihapus. Gantina GDB tos kapasang, pikeun ménta inpo wincik ngeunaan nyababkeun kacilakaan, ayeuna disarankan pikeun masang versi panganyarna tina GDB ti palabuhan atawa bungkusan. Rojongan pikeun prosés debugging via procfs geus dieureunkeun. Supir netgdb parantos ditambahkeun, ngamungkinkeun aksés ka debugger kernel dina jaringan.
  • The unsafe gets fungsi geus dihapus tina libc (dimimitian ti standar C11, fungsi ieu geus kaasup ti spésifikasi) jeung palabuhan anu masih ngagunakeun fungsi ieu geus disaluyukeun. Dipiceun cap_random fungsi (getrandom kudu dipake).
  • Ditambahkeun sistem anyar copy_file_range, cocog sareng palaksanaan ti kernel Linux Ubuntu jeung ngidinan Anjeun pikeun nyepetkeun nyalin data tina hiji file ka nu sejen ku ngajalankeun operasi ngan di sisi kernel tanpa mimitina maca data kana memori prosés. Sistim panggero ogé dipaké dina server NFSv4.2 pikeun ngalakukeun operasi salinan lokal dina server (tanpa mindahkeun ka klien nu).
  • Mesin I/O asinkron POSIX AIO ngenalkeun pangrojong pikeun fungsi vektor. Khususna, telepon sistem aio_writev sareng aio_readv parantos ditambihan, ngamungkinkeun palaksanaan sarimbag vectorized tina fungsi aio_read sareng aio_write.
  • Komponén spasi pamaké geus dieureunkeun pikeun ngarojong format file executable a.out dina sistem arsitektur i386. Utiliti elf2aout parantos dihapus.
  • Utiliti ping sareng ping6 parantos digabungkeun. Kamampuhan pikeun nyetél parameter kualitas jasa (QoS) via IP DSCP sareng Ethernet PCP parantos ditambahkeun kana ping.
  • Utilitas freebsd-update ayeuna nunjukkeun kamajuan undeuran file sareng nambihan paréntah siap-apdet sareng showconfig pikeun mariksa apdet sareng nunjukkeun konfigurasi.
  • Seueur padamelan anu parantos dilakukeun pikeun ningkatkeun dukungan pikeun sistem NUMA (Non-Uniform Memory Access).
  • Pembalap grafik anu diropéa sareng komponén tumpukan grafik. Masalah sareng operasi lingkungan dumasar kana protokol Wayland parantos direngsekeun.
  • Ditambahkeun subsistem lampu tukang pikeun nyieun supir kontrol lampu tukang. Ditambahkeun supir pwm-lampu tukang pikeun ngadalikeun Pinebook sareng lampu tukang Pinebook Pro.
  • Rojongan pikeun protokol SCTP kaasup dina modul misah sctp.ko, nu ditumpurkeun sacara standar dina kernel GENERIC.
  • Pikeun alat input, supir usbhid anyar parantos diajukeun anu nganggo kerangka hid pikeun dianggo sareng alat USB HID, tibatan supir ukbd, ums sareng uhid.
  • Supir cpufreq ngadukung téknologi Intel Speed ​​​​Shift.
  • Ditambahkeun dukungan pikeun papan énggal dumasar kana CPU ARMv64 8-bit, kalebet Broadcom BCM5871X sareng NXP LS1046A SoCs.
  • Pikeun arsitéktur AMD64, dukungan pikeun alamat virtual 57-bit (LA57) dilaksanakeun. Ditambahkeun dukungan pikeun cpu Cina x86 Hygon Dhyana dumasar kana téknologi AMD.
  • Palabuhan pikeun arsitéktur powerpc64 parantos dialihkeun pikeun nganggo LLVM sareng ELFv2 ABI (binari tina versi FreeBSD sateuacana moal tiasa dianggo dina FreeBSD 13). Drivers virtio, ixl, mrsas, aacraid, cpld geus porting pikeun powerpc64.
  • Supir pikeun adaptor Ethernet warisan parantos dihapus:
    • bm(4) BMAC
    • cs (4) Kristal Semikonduktor CS8900 / CS8920
    • de(4) DEC DC21x4x
    • ed(4) NE-2000 jeung WD-80×3
    • ep (4) 3Com Etherlink III (3c5x9) ISA
    • ex (4) Intel EtherExpress Pro / 10 jeung Pro / 10+
    • fe(4) Fujitsu MB86960A/MB86965A
    • hme (4) Panonpoé Microelectronics STP2002-STQ
    • pcn(4) AMD PCnet
    • sf (4) Starfire
    • sn(4) SMC 91Cxx
    • tl (4) Texas Instrumén ThunderLAN
    • tx(4) SMC 83c17x
    • txp(4) 3Com 3XP Topan/Sidewinder (3CR990)
    • vx (4) 3Com EtherLink III / Gancang EtherLink III (3c59x) PCI
    • wb(4) Winbond W89C840F
    • xe (4) Xircom PCMCIA
  • Dipiceun supir ubsec (Broadcom BCM58xx crypto akselerator), ufm (FM tuners kalawan panganteur USB), ctau (Cronix Tau), cx (Cronix sigma) sarta vpo (port paralel SCSI).

sumber: opennet.ru

Tambahkeun komentar