De negende versie van Rust voor Linux arriveert en neemt afscheid van ondersteuning voor versies vóór Linux 3.2

Wauw, het werk van Rust-stuurprogrammaondersteuning voor Linux is nu aan de gang en een vrij continue ontwikkeling is begonnen, omdat het niet veel te versie 8 is aangekondigd van de patches en dat is het nu hebben we versie 9.

En het is dat in deze negende versie die is voorgesteld, het de moeite waard is om te vermelden dat als zodanig het is een vereenvoudigde versie van de achtste editie die een paar dagen geleden is gepubliceerd. De kit onderscheidt zich door een aanzienlijke reductie in grootte en door alleen het meest noodzakelijke minimum over te laten, genoeg om een ​​kernelmodule te bouwen die in Rust is geschreven.

De minimale patch wordt verondersteld zal het gemakkelijker maken om Rust-ondersteuning in de hoofdkernel te adopteren. Na minimale ondersteuning te hebben geboden, is het de bedoeling om de bestaande functionaliteit geleidelijk uit te breiden en andere wijzigingen van de Rust-for-Linux-tak over te dragen.

Dit is de reeks patches (v9) om Rust als tweede taal aan de Linux-kernel toe te voegen...

Zoals gewoonlijk een speciale dank aan ISRG (Internet Security Research Group) en Google voor hun financiële steun bij deze inspanning.

In vergelijking met versie 8 is de grootte van de patch teruggebracht van 40 naar 000 regels code. Versie 3 bevat bijvoorbeeld slechts 500% van de code (60 regels) van het "kernel"-boxpakket en 32% van de alloc-bibliotheek, waardoor je de eenvoudigste kernelmodules kunt maken met het Vec-type. en het weergeven van informatie in het kernellogboek met behulp van de macro "pr_info!".

Daarnaast is Met betrekking tot Rust en Linux is het vermeldenswaard dat onlangs de Rust-projectontwikkelaars gewaarschuwd aan gebruikers over de op handen zijnde toename van de eisen voor de Linux-omgeving in de compiler, de Cargo-pakketbeheerder en de libstd-standaardbibliotheek.

Vanaf Rust 1.64, gepland voor 22 september 2022, worden de minimumvereisten voor Glibc verhoogd van versie 2.11 naar 2.17 en de Linux-kernel van 2.6.32 naar 3.2. De beperkingen zijn ook van toepassing op Rust-binaire bestanden die zijn gebouwd met libstd.

De distributies RHEL 7, SLES 12-SP5, Debian 8 en Ubuntu 14.04 voldoen aan de nieuwe vereisten. Ondersteuning voor RHEL 6, SLES 11-SP4, Debian 7 en Ubuntu 12.04 wordt stopgezet. Redenen om de ondersteuning voor oudere Linux-systemen af ​​te schaffen, zijn onder meer beperkte middelen om oudere omgevingen te blijven ondersteunen.

Waarom de eisen verhogen?
We willen dat Rust en de door Rust geproduceerde binaries zo breed mogelijk inzetbaar zijn. Tegelijkertijd heeft het Rust-project slechts beperkte middelen om de compatibiliteit met oudere omgevingen te behouden.

De vereisten voor de toolchain bestaan ​​uit twee delen: de minimumvereisten voor het uitvoeren van de Rust-compiler op een hostsysteem en de minimumvereisten voor cross-gecompileerde binaire bestanden.

De minimumvereisten voor host-toolchains zijn van invloed op ons bouwsysteem. Rust CI produceert binaire artefacten voor tientallen verschillende doelen. Het bouwen van binaire bestanden die oudere versies van glibc ondersteunen, vereist het bouwen van een besturingssysteem met oudere glibc (voor native builds) of het gebruik van een build-root met een oudere versie van glibc (voor cross-builds).

En in het bijzonder, compatibiliteit met oudere Glibcs ​​vereist het gebruik van oudere tools wanneer geverifieerd in een continu integratiesysteem, versus verhoogde versievereisten voor LLVM- en cross-compiling-hulpprogramma's. De toename in kernelversievereisten is te wijten aan het vermogen van libstd om nieuwe systeemaanroepen te gebruiken zonder de noodzaak om lagen te onderhouden om compatibiliteit met oudere kernels te garanderen.

Gebruikers die door Rust gemaakte uitvoerbare bestanden gebruiken in omgevingen met oudere Linux-kernels wordt geadviseerd om hun systemen te upgraden, op oudere versies van de compiler te blijven of hun eigen gelaagde libstd-vork te behouden om compatibiliteit te behouden.

Tot slot, als u er meer over wilt weten, kunt u de details raadplegen in de volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.