Den niende versjonen av Rust for Linux kommer og sier farvel til støtte for versjoner før Linux 3.2

Wow, jobben til Rustdriverstøtte for Linux er nå i gang og en ganske kontinuerlig utvikling har begynt, siden den ikke har mye til versjon 8 ble annonsert av lappene og det er det akkurat nå har vi versjon 9.

Og det er at i denne niende versjonen som er foreslått, er det verdt å nevne det som sådan det er en forenklet versjon av den åttende utgaven som ble utgitt for noen dager siden. Settet utmerker seg ved en betydelig reduksjon i størrelse og ved å etterlate bare det mest nødvendige minimum, nok til å bygge en kjernemodul skrevet i Rust.

Minimum patch er antatt vil gjøre det lettere å ta i bruk Rust-støtte i hovedkjernen. Etter å ha gitt minimal støtte, er det planlagt å gradvis øke eksisterende funksjonalitet, og overføre andre endringer fra Rust-for-Linux-grenen.

Dette er serien med patcher (v9) for å legge til støtte for Rust som andrespråk til Linux-kjernen ...

Som vanlig, en spesiell takk til ISRG (Internet Security Research Group) og Google for deres økonomiske støtte i dette arbeidet.

Sammenlignet med versjon 8 er størrelsen på oppdateringen redusert fra 40 000 til 13 000 linjer med kode. For eksempel inkluderer versjon 3 bare 500% av koden (60 linjer) til "kernel"-bokspakken og 32% av alloc-biblioteket, slik at du kan lage de enkleste kjernemodulene ved å bruke Vec-typen. og vise informasjon i kjerneloggen ved å bruke "pr_info!"-makroen.

Videre I forhold til Rust og Linux er det verdt å nevne at nylig Rustprosjektutviklere advarte til brukere om den forestående økningen i kravene til Linux-miljøet i kompilatoren, Cargo-pakkebehandlingen og libstd-standardbiblioteket.

Fra og med Rust 1.64, planlagt til 22. september 2022, vil minimumskravene for Glibc heves fra versjon 2.11 til 2.17 og Linux-kjernen fra 2.6.32 til 3.2. Restriksjonene gjelder også Rust-binærfiler bygget med libstd.

RHEL 7, SLES 12-SP5, Debian 8 og Ubuntu 14.04-distribusjoner oppfyller de nye kravene. Støtte for RHEL 6, SLES 11-SP4, Debian 7 og Ubuntu 12.04 vil bli avviklet. Årsaker til å avvikle støtte for eldre Linux-systemer inkluderer begrensede ressurser for å fortsette å støtte eldre miljøer.

Hvorfor øke kravene?
Vi ønsker at Rust og binærfilene som produseres av Rust skal være så utbredt som mulig. Samtidig har Rust-prosjektet kun begrensede ressurser for å opprettholde kompatibilitet med eldre miljøer.

Det er to deler til verktøykjedekravene: minimumskravene for å kjøre Rust-kompilatoren på et vertssystem, og minimumskravene for krysskompilerte binærfiler.

Minimumskravene for vertsverktøykjeder påvirker byggesystemet vårt. Rust CI produserer binære artefakter for dusinvis av forskjellige mål. Å bygge binærfiler som støtter eldre versjoner av glibc krever å bygge et operativsystem med eldre glibc (for native builds) eller bruke en build-rot med en eldre versjon av glibc (for cross-builds).

Spesielt kompatibilitet med eldre Glibcs ​​krever bruk av eldre verktøy når verifisert i et kontinuerlig integrasjonssystem, versus økte versjonskrav på LLVM og krysskompileringsverktøy. Økningen i krav til kjerneversjon skyldes libstds evne til å bruke nye systemanrop uten behov for å vedlikeholde lag for å sikre kompatibilitet med eldre kjerner.

Brukere som bruker Rust-skapte kjørbare filer i miljøer med eldre Linux-kjerner, anbefales å oppgradere systemene sine, forbli på eldre versjoner av kompilatoren eller vedlikeholde sin egen lagdelte libstd-gaffel for å opprettholde kompatibiliteten.

Til slutt, hvis du er interessert i å kunne vite mer om det, kan du se detaljene i følgende lenke.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.