Frigivning av FreeBSD 13.0

Efter tvÄ och ett halvt Är efter att grenen 12.x inrÀttades presenteras frigivningen av FreeBSD 13.0, som har förberetts för arkitekturerna amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 och riscv64. Dessutom har bilder skapats för virtualiseringssystem (QCOW2, VHD, VMDK, raw) och molnmiljöer via Amazon EC2, Google Compute Engine och Vagrant.

Huvudsakliga nyheter:

  • ÖvergĂ„ngen har genomförts till en förenad Linux-implementering av filsystemet ZFS frĂ„n projektet OpenZFS. Bland de möjligheter som blivit tillgĂ€ngliga i FreeBSD efter övergĂ„ngen till OpenZFS finns: utvidgat kvotsystem, kryptering av datamĂ€ngder, separat val av blockallokeringsklasser, anvĂ€ndning av vektorprocessorinstruktioner för att pĂ„skynda implementeringen av RAIDZ och berĂ€kningen av kontrollsummor, stöd för komprimeringsalgoritmen ZSTD, multihost-lĂ€ge (MMP, Multi Modifier Protection), förbĂ€ttrade kommandoradsverktyg, samt Ă„tgĂ€rdande av mĂ„nga fel relaterade till kapplöpningar och lĂ„sningar.
  • Porten för arkitekturen ARM64 (AArch64) har övergĂ„tt till första stödnivĂ„n (Tier 1), som omfattas av team som ansvarar för att Ă„tgĂ€rda sĂ„rbarheter, förbereda frigivningar och underhĂ„lla portar. Första stödnivĂ„n innebĂ€r skapande av installationspaket, binĂ€ra uppdateringar och fĂ€rdiga paket, samt garanterar lösningar pĂ„ specifika problem och upprĂ€tthĂ„llande av ABI:s oförĂ€ndradhet för anvĂ€ndarmiljö och kĂ€rna (med undantag för vissa delsystem).
  • Arkitekturen i386 har övergĂ„tt till den andra stödnivĂ„n för plattformar (Tier 2), dĂ€r skapandet av installationspaket, binĂ€ra uppdateringar och fĂ€rdiga paket kommer att fortsĂ€tta, men inte garanterar lösningar pĂ„ specifika problem. CPU-typ (CPUTYPE) för arkitekturen i386 har som standard Ă€ndrats frĂ„n 486 till 686 (om sĂ„ önskas kan paket för i486 och i586 skapas sjĂ€lvstĂ€ndigt).
  • Komponenterna clang, lld, lldb, compiler-rt, llvm, libunwind och libc++ har uppdaterats till version 11.
  • Utvecklingen har överförts frĂ„n det centraliserade versionshanteringssystemet Subversion till ett decentraliserat Git-system.
  • Grunden har rensats frĂ„n applikationer som distribueras under GPL-licens. Binutils 2.17 och gcc 4.2.1 har tagits bort frĂ„n kĂ€llkodstrĂ€det, och alla stödda arkitekturer har uppgraderats till LLVM/clang-verktyg. BSD-licensierade alternativ till grep och dtc (Device Tree Compiler) har lagts till och ersĂ€tter de GPL-versioner. Automatisk montering av amd har tagits bort, och dess funktionalitet Ă€r nu implementerad genom autofs. Verktyget ctm har tagits bort, och istĂ€llet rekommenderas att anvĂ€nda porten misc/ctm.
  • Routingstacken har skrivits om, vilket nu har stöd för nexthop-objekt som lagrar information om tillstĂ„ndet som anvĂ€nds för att skicka paket till önskad destination. Möjlighet att ansluta egna rutningsalgoritmer har lagts till. Rutningsalgoritmer frĂ„n DPDK (Data Plane Development Kit) librte har lagts till, vilket gör det möjligt att optimera arbetet med mycket stora routingtavlor. FIB-grĂ€nssnittet anvĂ€nds för proxyarp-förfrĂ„gningar. Möjlighet att dynamiskt Ă€ndra antalet fib genom sysctl net.fibs har ocksĂ„ lagts till. Stöd för temporĂ€ra rutter för IPv4 och IPv6 (med angiven livstid) har implementerats.
  • Stödet för multipath-routing har skrivits om och gjorts mer skalbart, dĂ€r söktiden inte beror pĂ„ listans storlek (O(1)). Den nya multipath-implementationen Ă€r kopplad till kĂ€rnparametern ROUTE_MPATH, som har ersatt RADIX_MPATH och Ă€r aktiverad som standard. För hantering av multipath föreslĂ„s sysctl net.route.multipath.
  • Det kryptografiska ramverket implementerat pĂ„ kĂ€rnnivĂ„ har omarbetats, med stöd för moderna kryptografiska algoritmer och ett förenklat grĂ€nssnitt för anvĂ€ndning av kryptering i drivrutiner och andra komponenter i kĂ€rnan. FörĂ„ldrade algoritmer som ARC4, Blowfish, CAST128, DES, MD5-HMAC och Skipjack har tagits bort. I IPsec och Kerberos har stödet för algoritmer som har förklarats förĂ„ldrade i RFC 8221 och RFC 6649/8429, inklusive 3DES, avslutats. Tidigare förklarade förĂ„ldrade algoritmer i underavdelningen för disk-kryptering geli och cryptodev har tagits bort.
  • KĂ€rnan GENERIC har inkluderat stöd för drivrutiner aesni och armv8crypto för att pĂ„skynda disk-kryptering baserat pĂ„ geli med hjĂ€lp av AES-NI-instruktioner för amd64/i386-arkitekturer och AES-XTS för ARM64.
  • Drivrutin för Intel QuickAssist (QAT) kryptotillbehör har lagts till, samt ossl-drivrutinen med implementering avaccelererade programvaruprocesser för kryptering frĂ„n OpenSSL, optimerade med assemblerkod. I armv8crypto-drivrutinen har stöd för AES-XTS och AES-GCM lagts till med hjĂ€lp av motsvarande ARMv8-processorinstruktioner.
  • Implementation av TLS (kTLS) har lagts till, som arbetar pĂ„ kĂ€rnnivĂ„ i FreeBSD och möjliggör en betydande prestandaökning vid kryptering för TCP-socketar. Stöd för TLS-versioner frĂ„n 1.0 till 1.3. Krypteringen anvĂ€nder kĂ€rndrivrutiner som stöder AES-CBC eller AES-GCM. För att anvĂ€nda kTLS i anvĂ€ndarutrymmet krĂ€vs en nykompilering av OpenSSL med alternativet WITH_OPENSSL_KTLS.
  • En ny typ av nĂ€tverksbuffrar (mbuf) har lagts till, som kan representera flera oreflekterade fysiska minnessidor i en enda buffer, vilket gör att prestandan för anropet sendfile(2) kan öka genom att minska storleken pĂ„ mbuf-listorna i socketbuffrar.
  • Stödet för algoritmen Proportional Rate Reduction (RFC 6937) har integrerats i TCP-stacken, vilket gör att optimala parametrar för flödet kan Ă„terstĂ€llas snabbare efter tillfĂ€lliga överföringsproblem. För att stĂ€nga av PRR finns sysctl net.inet.tcp.do_prr.
  • Möjligheterna i hypervisorn Bhyve har utvidgats: Stöd för delad filĂ„tkomst med VirtIO-9p (VirtFS) har lagts till. Möjligheten att arbeta med snapshots har implementerats. virtuella maskinerStöd för PCI HDAudio-enheter och ytterligare seriella portar COM3 och COM4 har lagts till. FörĂ„ldrade enhetsmodeller som bvmconsole och bvmdebug har tagits bort. Stabiliteten för VNC-klienter har förbĂ€ttrats, inklusive macOS-appen "SkĂ€rmdelning".
  • I VirtIO-drivrutinerna har stöd för specifikationen VirtIO V1 lagts till, vilket har förbĂ€ttrat kompatibiliteten för gĂ€stsystem med FreeBSD med olika emulatorer och hypervisorer.
  • För processer kopplade till jail-miljöer har bindningar till CPU omvandlats (initialt bindningen till processen cpuset kommer att bytas ut med beaktande av cpuset för jail och uppstĂ€llda begrĂ€nsningar).
  • En funktion för att bygga grundsystemet FreeBSD i miljöer baserade pĂ„ andra operativsystem har lagts till. Behovet av att bygga i andra operativsystem beror pĂ„ önskemĂ„let att utnyttja verktyg för kontinuerlig integration kopplade till Linux eller macOS för att testa FreeBSD.
  • En ny MMC/SD-stack, baserad pĂ„ CAM-ramverket, har föreslagits och möjliggör anslutning av enheter med SDIO (Secure Digital I/O) grĂ€nssnitt. Till exempel anvĂ€nds SDIO i WiFi och Bluetooth-moduler för mĂ„nga kort, sĂ„som Raspberry Pi 3. Den nya stacken gör det ocksĂ„ möjligt att anvĂ€nda CAM-grĂ€nssnittet för att skicka SD-kommandon frĂ„n anvĂ€ndarutrymmet, vilket möjliggör skapandet av enhetsdrivrutiner som fungerar i anvĂ€ndarutrymmet.
  • Arbetet med lager för kompatibilitet med Linux har förbĂ€ttrats. DTS-filer (Device Tree Sources) har synkroniserats med Linux-kĂ€rnan 5.8.
  • Stödet för NFSv4.2 (RFC-7862) har lagts till och möjligheten att anvĂ€nda NFS över krypterad kommunikationskanal baserad pĂ„ TLS 1.3 har implementerats, istĂ€llet för att anvĂ€nda Kerberos (lĂ€ge sec=krb5p), vilket var begrĂ€nsat till att kryptera RPC-meddelanden och endast var implementerat programmĂ€ssigt.
  • Den Ă€ldre versionen av debuggern GDB, som tidigare var installerad i katalogen /usr/libexec och anvĂ€ndes i crashinfo-verktyget, har tagits bort. IstĂ€llet för den förinstallerade GDB föreslĂ„s nu att installera en ny version av GDB frĂ„n portar eller paket för att fĂ„ detaljerad information om orsaken till krascher. Stödet för att debugga processer via procfs har upphört. En driver för netgdb har lagts till, vilket möjliggör fjĂ€rrĂ„tkomst till kĂ€rnans debugger.
  • Den osĂ€kra funktionen gets har tagits bort frĂ„n libc (denna funktion har exkluderats frĂ„n specifikationen sedan C11-standarden) och justeringar har gjorts för portar som fortfarande anvĂ€nder denna funktion. Funktionerna cap_random har tagits bort (anvĂ€nd getrandom istĂ€llet).
  • Ett nytt systemanrop, copy_file_range, har lagts till, som Ă€r kompatibelt med implementationen frĂ„n Linux-kĂ€rnan och gör det möjligt att snabba upp kopieringen av data frĂ„n en fil till en annan, tack vare att operationen endast utförs pĂ„ kĂ€rnsidan utan att data först behöver lĂ€sas in i processminnet. Systemanropet anvĂ€nds ocksĂ„ i servern NFSv4.2 för lokal utförande av kopieringsoperationer pĂ„ servern (utan överföring till klienten).
  • I mekanismen för asynkron in-/utdata POSIX AIO ingĂ„r stöd för vektoriserade funktioner. SĂ€rskilt har systemanropen aio_writev och aio_readv lagts till, vilket möjliggör att implementera vektoriserade motsvarigheter till funktionerna aio_read och aio_write.
  • Stödet för anvĂ€ndarutrymmeskomponenter för a.out-formatet pĂ„ i386-arkitekturer har upphört. Verktyget elf2aout har tagits bort.
  • Verktygen ping och ping6 har slĂ„s samman. Funktionen ping har fĂ„tt möjlighet att stĂ€lla in kvalitetsserviceparametrar (QoS) via IP DSCP och Ethernet PCP.
  • I verktyget freebsd-update har visning av nedladdningsprognos lagts till, och kommandona updatesready och showconfig har lagts till för att kontrollera uppdateringar och visa konfiguration.
  • Stort arbete har gjorts för att förbĂ€ttra stödet för NUMA-system (Non-Uniform Memory Access).
  • Grafikdrivrutiner och komponenter i grafikstacken har uppdaterats. Problem med miljöer baserade pĂ„ Wayland-protokollet har Ă„tgĂ€rdats.
  • En backlight-subsystem har lagts till för att skapa drivrutiner för belysningskontroll. En drivrutin pwm-backlight har lagts till för att styra belysningen pĂ„ Pinebook och Pinebook Pro.
  • Stöd för SCTP-protokollet har flyttats till modulen sctp.ko, som Ă€r avstĂ€ngd som standard i GENERIC-kĂ€rnan.
  • En ny drivrutin usbhid har föreslagits för inmatningsenheter, som anvĂ€nder hid-ramverket för att arbeta med USB HID-enheter, istĂ€llet för drivrutinerna ukbd, ums och uhid.
  • I cpufreq-drivrutinen har stöd för Intel Speed Shift-teknologin implementerats.
  • Stöd för nya kort baserade pĂ„ 64-bitars CPU ARMv8 har lagts till, inklusive SoC Broadcom BCM5871X och NXP LS1046A.
  • För AMD64-arkitekturen har stöd för 57-bitars virtuella adresser (LA57) implementerats. Stöd för kinesiska x86-CPU Hygon Dhyana baserat pĂ„ AMD-teknologier har lagts till.
  • Porten för powerpc64-arkitekturen har överförts till att anvĂ€nda LLVM och ABI ELFv2 (binaries frĂ„n tidigare versioner av FreeBSD kommer inte lĂ€ngre att kunna anvĂ€ndas i FreeBSD 13). För powerpc64 har drivrutinerna virtio, ixl, mrsas, aacraid, cpld portats.
  • Drivrutiner för förĂ„ldrade Ethernet-adaptrar har tagits bort:
    • bm(4) BMAC
    • cs(4) Crystal Semiconductor CS8900/CS8920
    • de(4) DEC DC21x4x
    • ed(4) NE-2000 och WD-80×3
    • ep(4) 3Com Etherlink III (3c5x9) ISA
    • ex(4) Intel EtherExpress Pro/10 och Pro/10+
    • fe(4) Fujitsu MB86960A/MB86965A
    • hme(4) Sun Microelectronics STP2002-STQ
    • pcn(4) AMD PCnet
    • sf(4) Starfire
    • sn(4) SMC 91Cxx
    • tl(4) Texas Instruments ThunderLAN
    • tx(4) SMC 83c17x
    • txp(4) 3Com 3XP Typhoon/Sidewinder (3CR990)
    • vx(4) 3Com EtherLink III / Fast EtherLink III (3c59x) PCI
    • wb(4) Winbond W89C840F
    • xe(4) Xircom PCMCIA
  • Drivrutinerna ubsec (kryptoacceleratorer Broadcom BCM58xx), ufm (FM-tuners med USB-grĂ€nssnitt), ctau (Cronix Tau), cx (Cronix Sigma) och vpo (parallellport SCSI) har tagits bort.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster