Në çdo pesë paketa në gjuhën Rust, përdoret skema unsafe.

Organizata Rust Foundation publikoi statistikën sipas të cilës nga 127 mijë paketa të rëndësishme të paraqitura në katalogun crates.io, më shumë se 24 mijë (19.11%) përdorin fjalën kyçe "unsafe" për të përfshirë mundësi që lejojnë punë të pasigurta me kujtesën në blloqe të veçanta kodi, siç janë dereferencimi i treguesve, thirrja e funksioneve të jashtme ose modifikimi i variablave statikë. 34.35% e paketave bëjnë thirrje të drejtpërdrejta të funksioneve nga paketa të tjera crate, në të cilat përdoret mënyra "unsafe".

Vërehet se në shumicën e rasteve përdorimi i mënyrës "unsafe" është i justifikuar për shkak të thirrjes së kodit të shkruar në gjuhë të tjera ose qasjes në biblioteka në C/C++. Paketa me numrin më të madh të thirrjeve në mënyrën "unsafe" është e zhvilluar nga kompaninë Microsoft, paketa crate windows, e cila shërben si një mbështetje mbi API-në e platformës Windows. Kjo paketë numëron 36 milion shkarkime. Unsafe gjithashtu përdoret në paketat më të njohura syn (470 milion shkarkime), proc-macro2 (354 milion shkarkime) dhe libc (345 milion shkarkime).

Për të identifikuar problemet në kodin që ekzekutohet në mënyrën "unsafe", projekti është duke zhvilluar një interpretues Miri, që lejon të identifikohen qasjet jashtë kufijve të buferave, përdorimi i kujtesës pas çlirimit të saj, përdorimi i të dhënave të pa inicializuara, shkelja e invariancës së tipeve bazë (p.sh., mos përputhshmëria e vlerave bool me 0 ose 1), shkelja e rregullave të pronësisë së objekteve, shfaqja e situatave të garës dhe rrjedhjeve të kujtesës.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster