Rust Foundation publiserte statistikk i henhold til at av de 127 tusen viktige pakkene presentert i crates.io-katalogen, bruker mer enn 24 tusen (19.11%) nĂžkkelordet "utrygge" for Ă„ aktivere funksjoner som tillater usikker drift av minnet i individuelle blokker av kode som for eksempel Ă„ referere pekere, kalle eksterne funksjoner eller endre statiske variabler. 34.35 % av pakkene ringer direkte til funksjoner fra andre kassepakker som bruker "utrygg" modus.
Det bemerkes at bruken av «usikker» modus i de fleste tilfeller skyldes kall til kode skrevet pÄ andre sprÄk eller C/C++-biblioteker. Pakken med det stÞrste antallet kall i «usikker» modus er Windows crate-pakken utviklet av Microsoft, som er en innpakning rundt plattformens API. WindowsDenne pakken har blitt nedlastet 36 millioner ganger. Unsafe brukes ogsÄ i de mest populÊre pakkene: syn (470 millioner nedlastinger), proc-macro2 (354 millioner nedlastinger) og libc (345 millioner nedlastinger).
For Ä identifisere problemer i kode utfÞrt i "usikker" modus, utvikler prosjektet Miri-tolken, som gjÞr det mulig Ä identifisere tilganger utenfor grensene til buffere, minnebruk etter at den er frigjort, feil bruk av uinitialiserte data, brudd pÄ invariansen til grunnleggende typer (for eksempel samsvarer ikke bool med verdiene 0 eller 1), brudd pÄ reglene for objekteierskap, forekomst av raseforhold og minnelekkasjer.
Kilde: opennet.ru
