Rust - jetzt auf Android

Die Richtigkeit des Codes auf der Android-Plattform ist der wichtigste Aspekt im Zusammenhang mit der Sicherheit, Stabilität und Qualität jeder Android-Version. Speichersicherheitsfehler in C- und C ++ - Code sind immer noch am schwierigsten zu beseitigen. Google investiert enorme Anstrengungen und Ressourcen in die Erkennung, Beseitigung von Fehlern dieser Art sowie in die Reduzierung des Schadens, indem versucht wird, Fehler in Android-Versionen so gering wie möglich zu halten. Trotz all dieser Maßnahmen bleiben Fehler im Zusammenhang mit der Speichersicherheit die Hauptursache für Stabilitätsprobleme. Sie machen ausnahmslos ~ 70% der schwerwiegendsten Android-Schwachstellen aus.





Neben den laufenden  und  geplanten  Bemühungen zur Verbesserung der Erkennung von Speicherfehlern verstärkt Google auch seine Bemühungen, diese zu verhindern. Speichersichere Sprachen sind das effizienteste und kostengünstigste Mittel zur Lösung dieses Problems. Das Android Open Source Project (AOSP) unterstützt jetzt die speichersicheren Java- und Kotlin-Sprachen Rust für die Entwicklung des Betriebssystems.





Systemprogrammierung

Verwaltete Sprachen wie Java und Kotlin eignen sich am besten für die Entwicklung von Android-Anwendungen. Diese Sprachen wurden im Hinblick auf Benutzerfreundlichkeit, Portabilität und Sicherheit entwickelt. Die Android Runtime (ART)  verwaltet den vom Entwickler angegebenen Speicher. Das Android-Betriebssystem verwendet Java in großem Umfang und schützt so große Teile der Android-Plattform effektiv vor Speicherfehlern. Leider sind Java und Kotlin bei niedrigen Android-Betriebssystemen machtlos.  





, C, C++ Rust. . . , .



C C++ . , ,  .





Rust , , , . , , C C++.





C C++ , Rust, . Android , , , . : , .  





Android , , C/C++ , .   , , . – ; ,   , . , , .





, , , Rust, :





  1. , .





  2. , , .





C++?

, , C/C++.





, ( ) , Android ,  C/C++. , , 50% .





, , , . , , , , , . , .





   , , Rust. , – , , . , , , .





,   , . . – .





, , . C/C++, , , ,  .





, , , . , .





Rust , :





  •   .





  • –  . , , Rust  « ».





  • –  (., , ).





  •   . , . , C++ const, . , Rust , , .





  •   Result, , .  Rage Against the Cage, - . ? Result , Rust , .





  • – , . , Android 3-5% , . Android 11, ,   C/C++. , , , , . Rust , . . Clang C/C++, Rust , .





  •   Rust , wrapping_add, , saturating_add – . Android. , : .   





Android – . , , , . . . Google.








All Articles