{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,17]],"date-time":"2026-07-17T15:07:36Z","timestamp":1784300856371,"version":"3.55.0"},"publisher-location":"New York, NY, USA","reference-count":64,"publisher":"ACM","license":[{"start":{"date-parts":[[2026,7,5]],"date-time":"2026-07-05T00:00:00Z","timestamp":1783209600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by-nc-nd\/4.0\/legalcode"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2026,7,5]]},"DOI":"10.1145\/3803437.3805227","type":"proceedings-article","created":{"date-parts":[[2026,7,17]],"date-time":"2026-07-17T14:27:39Z","timestamp":1784298459000},"page":"545-556","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["An Empirical Analysis of Rust Integration in Android Open Source Project"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0009-0002-0853-3672","authenticated-orcid":false,"given":"Yinte","family":"Fan","sequence":"first","affiliation":[{"name":"Huazhong University of Science and Technology, Wuhan, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0009-0006-8117-0352","authenticated-orcid":false,"given":"Chao","family":"Wang","sequence":"additional","affiliation":[{"name":"Huazhong University of Science and Technology, Wuhan, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5232-7679","authenticated-orcid":false,"given":"Zikan","family":"Dong","sequence":"additional","affiliation":[{"name":"Huazhong University of Science and Technology, Wuhan, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5216-933X","authenticated-orcid":false,"given":"Tianming","family":"Liu","sequence":"additional","affiliation":[{"name":"Huazhong University of Science and Technology, Wuhan, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1100-8633","authenticated-orcid":false,"given":"Haoyu","family":"Wang","sequence":"additional","affiliation":[{"name":"Huazhong University of Science and Technology, Wuhan, China"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2026,7,17]]},"reference":[{"key":"e_1_3_2_1_1_1","unstructured":"2021. Integrating Rust Into the Android Open Source Project. https:\/\/security.googleblog.com\/2021\/05\/integrating-rust-into-android-open.html."},{"key":"e_1_3_2_1_2_1","unstructured":"2021. Rust in the Android platform. https:\/\/security.googleblog.com\/2021\/04\/rust-in-android-platform.html."},{"key":"e_1_3_2_1_3_1","unstructured":"2021. Rust in the Linux kernel. https:\/\/security.googleblog.com\/2021\/04\/rust-in-linux-kernel.html."},{"key":"e_1_3_2_1_4_1","unstructured":"2023. Scaling Rust Adoption Through Training. https:\/\/security.googleblog.com\/2023\/09\/scaling-rust-adoption-through-training.html."},{"key":"e_1_3_2_1_5_1","unstructured":"2025. Android Blueprint. https:\/\/source.android.com\/docs\/setup\/build\/rust\/building-rust-modules\/android-rust-modules."},{"key":"e_1_3_2_1_6_1","unstructured":"2025. Android Security and Update Bulletins | Android Open Source Project. https:\/\/source.android.com\/docs\/security\/bulletin."},{"key":"e_1_3_2_1_7_1","unstructured":"2025. Build overview | Android Open Source Project. https:\/\/source.android.com\/docs\/setup\/build."},{"key":"e_1_3_2_1_8_1","unstructured":"2025. Cargo Embargo. https:\/\/android.googlesource.com\/platform\/development\/+\/main\/tools\/cargo_embargo."},{"key":"e_1_3_2_1_9_1","unstructured":"2025. Embassy. https:\/\/embassy.dev\/."},{"key":"e_1_3_2_1_10_1","unstructured":"2025. Fuchsia documentation. https:\/\/fuchsia.dev\/fuchsia-src\/development\/languages\/rust\/unsafe."},{"key":"e_1_3_2_1_11_1","unstructured":"2025. More about Cargo and Crates.io - The Rust Programming Language. https:\/\/doc.rust-lang.org\/stable\/book\/ch14-00-more-about-cargo.html."},{"key":"e_1_3_2_1_12_1","unstructured":"2025. References and Borrowing - The Rust Programming Language. https:\/\/doc.rust-lang.org\/stable\/book\/ch04-02-references-and-borrowing.html."},{"key":"e_1_3_2_1_13_1","unstructured":"2025. Rust in the Android. https:\/\/security.googleblog.com\/2025\/11\/rust-in-android-move-fast-fix-things.html."},{"key":"e_1_3_2_1_14_1","unstructured":"2025. Securing tomorrow's software: the need for memory safety standards. https:\/\/security.googleblog.com\/2025\/02\/securing-tomorrows-software-need-for.html."},{"key":"e_1_3_2_1_15_1","unstructured":"2025. Source Code of Soong. https:\/\/android.googlesource.com\/platform\/build\/soong."},{"key":"e_1_3_2_1_16_1","unstructured":"2025. Unsafe Rust - The Rust Programming Language. https:\/\/doc.rust-lang.org\/stable\/book\/ch20-01-unsafe-rust.html."},{"key":"e_1_3_2_1_17_1","unstructured":"2025. Validating References with Lifetimes - The Rust Programming Language. https:\/\/doc.rust-lang.org\/stable\/book\/ch10-03-lifetime-syntax.html."},{"key":"e_1_3_2_1_18_1","unstructured":"2025. What is Ownership? - The Rust Programming Language. https:\/\/doc.rust-lang.org\/stable\/book\/ch04-01-what-is-ownership.html."},{"key":"e_1_3_2_1_19_1","unstructured":"2026. AOSP. https:\/\/source.android.com."},{"key":"e_1_3_2_1_20_1","unstructured":"2026. Cargo Toml. https:\/\/course.rs\/cargo\/reference\/manifest.html."},{"key":"e_1_3_2_1_21_1","unstructured":"2026. Drone OS. https:\/\/www.drone-os.com\/."},{"key":"e_1_3_2_1_22_1","unstructured":"2026. Nist handbook. https:\/\/www.nist.gov\/programs-projects\/nistsematech-engineering-statistics-handbook."},{"key":"e_1_3_2_1_23_1","unstructured":"2026. Rust AIDL. https:\/\/developer.android.com\/develop\/background-work\/services\/aidl."},{"key":"e_1_3_2_1_24_1","unstructured":"2026. Rust Bindgen. https:\/\/github.com\/rust-lang\/rust-bindgen."},{"key":"e_1_3_2_1_25_1","unstructured":"2026. Rust Cxx. https:\/\/cxx.rs."},{"key":"e_1_3_2_1_26_1","unstructured":"2026. Rust Fearless Concurrency. https:\/\/doc.rust-lang.org\/book\/ch16-00-concurrency.html."},{"key":"e_1_3_2_1_27_1","unstructured":"2026. Rust FFI. https:\/\/doc.rust-lang.org\/stable\/core\/ffi\/index.html."},{"key":"e_1_3_2_1_28_1","unstructured":"2026. Rust JNI. https:\/\/docs.rs\/jni\/latest\/jni."},{"key":"e_1_3_2_1_29_1","unstructured":"2026. Rust Safe and Unsafe. https:\/\/doc.rust-lang.org\/nomicon\/meet-safe-and-unsafe.html."},{"key":"e_1_3_2_1_30_1","unstructured":"2026. Rust Unsafe Ability. https:\/\/doc.rust-lang.org\/stable\/nomicon\/what-unsafe-does.html."},{"key":"e_1_3_2_1_31_1","unstructured":"2026. Standard library developers Guide. https:\/\/std-dev-guide.rust-lang.org\/policy\/safety-comments.html."},{"key":"e_1_3_2_1_32_1","unstructured":"2026. The Linux Kernel documentation. https:\/\/www.kernel.org\/doc\/html\/latest\/rust\/quick-start.html."},{"key":"e_1_3_2_1_33_1","unstructured":"2026. Tock OS. https:\/\/tockos.org\/."},{"key":"e_1_3_2_1_34_1","volume-title":"Proceedings of the Eighth ACM Conference on Data and Application Security and Privacy. 248\u2013255","author":"Hussain M.","unstructured":"Hussain M. J. Almohri and David Evans. 2018. Fidelius charm: Isolating unsafe rust code. In Proceedings of the Eighth ACM Conference on Data and Application Security and Privacy. 248\u2013255."},{"key":"e_1_3_2_1_35_1","volume-title":"Proceedings of the ACM on Programming Languages 4, OOPSLA","author":"Astrauskas Vytautas","year":"2020","unstructured":"Vytautas Astrauskas, Christoph Matheja, Federico Poli, Peter M\u00fcller, and Alexander J Summers. 2020. How do programmers use unsafe rust? Proceedings of the ACM on Programming Languages 4, OOPSLA (2020), 1\u201327."},{"key":"e_1_3_2_1_36_1","volume-title":"Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles. 84\u201399","author":"Bae Yechan","year":"2021","unstructured":"Yechan Bae, Youngsuk Kim, Ammar Askar, Jungwon Lim, and Taesoo Kim. 2021. Rudra: finding memory safety bugs in rust at the ecosystem scale. In Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles. 84\u201399."},{"key":"e_1_3_2_1_37_1","volume-title":"Proceedings of the 16th workshop on hot topics in operating systems. 156\u2013161","author":"Balasubramanian Abhiram","year":"2017","unstructured":"Abhiram Balasubramanian, Marek S Baranowski, Anton Burtsev, Aurojit Panda, Zvonimir Rakamari\u0107, and Leonid Ryzhyk. 2017. System programming in rust: Beyond safety. In Proceedings of the 16th workshop on hot topics in operating systems. 156\u2013161."},{"key":"e_1_3_2_1_38_1","volume-title":"Rust: The programming language for safety and performance. arXiv preprint arXiv:2206.05503","author":"Bugden William","year":"2022","unstructured":"William Bugden and Ayman Alahmar. 2022. Rust: The programming language for safety and performance. arXiv preprint arXiv:2206.05503 (2022)."},{"key":"e_1_3_2_1_39_1","volume-title":"Russian Supercomputing Days","author":"Bychkov Andrey","unstructured":"Andrey Bychkov and Vsevolod Nikolskiy. 2021. Rust language for supercomputing applications. In Russian Supercomputing Days. Springer, 391\u2013403."},{"key":"e_1_3_2_1_40_1","unstructured":"Thomas Claburn. 2024. Rust developers at Google twice as productive as C++ teams."},{"key":"e_1_3_2_1_41_1","volume-title":"Proceedings of the ACM on Programming Languages 7, OOPSLA2","author":"Crichton Will","year":"2023","unstructured":"Will Crichton, Gavin Gray, and Shriram Krishnamurthi. 2023. A grounded conceptual model for ownership types in rust. Proceedings of the ACM on Programming Languages 7, OOPSLA2 (2023), 1224\u20131252."},{"key":"e_1_3_2_1_42_1","volume-title":"Safedrop: Detecting memory deallocation bugs of rust programs via static data-flow analysis. ACM Transactions on Software Engineering and Methodology","author":"Cui Mohan","year":"2021","unstructured":"Mohan Cui, Chengjun Chen, Hui Xu, and Yangfan Zhou. 2021. Safedrop: Detecting memory deallocation bugs of rust programs via static data-flow analysis. ACM Transactions on Software Engineering and Methodology (2021)."},{"key":"e_1_3_2_1_43_1","volume-title":"Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering. 1\u201313","author":"Cui Mohan","year":"2024","unstructured":"Mohan Cui, Shuran Sun, Hui Xu, and Yangfan Zhou. 2024. Is unsafe an Achilles' Heel? A Comprehensive Study of Safety Requirements in Unsafe Rust Programming. In Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering. 1\u201313."},{"key":"e_1_3_2_1_44_1","volume-title":"Proceedings of the ACM\/IEEE 42nd International Conference on Software Engineering. 246\u2013257","author":"Evans Ana Nora","year":"2020","unstructured":"Ana Nora Evans, Bradford Campbell, and Mary Lou Soffa. 2020. Is rust used safely by software developers?. In Proceedings of the ACM\/IEEE 42nd International Conference on Software Engineering. 246\u2013257."},{"key":"e_1_3_2_1_45_1","volume-title":"An Executable Operational Semantics for Rust with the Formalization of Ownership and Borrowing. arXiv preprint arXiv:1804.07608","author":"Kan Shuanglong","year":"2018","unstructured":"Shuanglong Kan, Zhe Chen, David Sanan, Shang-Wei Lin, and Yang Liu. 2018. An Executable Operational Semantics for Rust with the Formalization of Ownership and Borrowing. arXiv preprint arXiv:1804.07608 (2018)."},{"key":"e_1_3_2_1_46_1","volume-title":"Proceedings of the 8th Workshop on Programming Languages and Operating Systems. 21\u201326","author":"Levy Amit","year":"2015","unstructured":"Amit Levy, Michael P. Andersen, Bradford Campbell, David Culler, Prabal Dutta, Branden Ghena, Philip Levis, and Pat Pannuto. 2015. Ownership is theft: Experiences building an embedded os in rust. In Proceedings of the 8th Workshop on Programming Languages and Operating Systems. 21\u201326."},{"key":"e_1_3_2_1_47_1","volume-title":"2024 USENIX Annual Technical Conference (USENIX ATC 24)","author":"Li Hongyu","year":"2024","unstructured":"Hongyu Li, Liwei Guo, Yexuan Yang, Shangguang Wang, and Mengwei Xu. 2024. An Empirical Study of {Rust-for-Linux}: The Success, Dissatisfaction, and Compromise. In 2024 USENIX Annual Technical Conference (USENIX ATC 24). 425\u2013443."},{"key":"e_1_3_2_1_48_1","volume-title":"European Symposium on Research in Computer Security. 680\u2013700","author":"Li Zhuohua","year":"2022","unstructured":"Zhuohua Li, Jincheng Wang, Mingshen Sun, and John CS Lui. 2022. Detecting cross-language memory management issues in rust. In European Symposium on Research in Computer Security. 680\u2013700."},{"key":"e_1_3_2_1_49_1","volume-title":"Proceedings of the ACM\/IEEE 42nd International Conference on Software Engineering. 234\u2013245","author":"Liu Peiming","year":"2020","unstructured":"Peiming Liu, Gang Zhao, and Jeff Huang. 2020. Securing unsafe rust programs with XRust. In Proceedings of the ACM\/IEEE 42nd International Conference on Software Engineering. 234\u2013245."},{"key":"e_1_3_2_1_50_1","volume-title":"Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation. 841\u2013856","author":"Matsushita Yusuke","year":"2022","unstructured":"Yusuke Matsushita, Xavier Denis, Jacques-Henri Jourdan, and Derek Dreyer. 2022. RustHornBelt: a semantic foundation for functional verification of Rust programs with unsafe code. In Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation. 841\u2013856."},{"key":"e_1_3_2_1_51_1","volume-title":"A mixed-methods study on the implications of unsafe Rust for interoperation, encapsulation, and tooling. arXiv preprint arXiv:2404.02230","author":"McCormack Ian","year":"2024","unstructured":"Ian McCormack, Tomas Dougan, Sam Estep, Hanan Hibshi, Jonathan Aldrich, and Joshua Sunshine. 2024. A mixed-methods study on the implications of unsafe Rust for interoperation, encapsulation, and tooling. arXiv preprint arXiv:2404.02230 (2024)."},{"key":"e_1_3_2_1_52_1","volume-title":"Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation. 245\u2013258","author":"Nagarakatte Santosh","year":"2009","unstructured":"Santosh Nagarakatte, Jianzhou Zhao, Milo MK Martin, and Steve Zdancewic. 2009. SoftBound: Highly compatible and complete spatial memory safety for C. In Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation. 245\u2013258."},{"key":"e_1_3_2_1_53_1","volume-title":"Y uga: Automatically Detecting Lifetime Annotation Bugs in the Rust Language","author":"Nitin Vikram","year":"2024","unstructured":"Vikram Nitin, Anne Mulhern, Sanjay Arora, and Baishakhi Ray. 2024. Y uga: Automatically Detecting Lifetime Annotation Bugs in the Rust Language. IEEE Transactions on Software Engineering (2024)."},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3443420","article-title":"A lightweight formalism for reference lifetimes and borrowing in Rust","volume":"43","author":"Pearce David J","year":"2021","unstructured":"David J Pearce. 2021. A lightweight formalism for reference lifetimes and borrowing in Rust. ACM Transactions on Programming Languages and Systems (TOPLAS) 43, 1 (2021), 1\u201373.","journal-title":"ACM Transactions on Programming Languages and Systems (TOPLAS)"},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"crossref","first-page":"1306","DOI":"10.1109\/TSE.2024.3380393","article-title":"Understanding and detecting real-world safety issues in Rust","volume":"50","author":"Qin Boqin","year":"2024","unstructured":"Boqin Qin, Yilun Chen, Haopeng Liu, Hua Zhang, Qiaoyan Wen, Linhai Song, and Yiying Zhang. 2024. Understanding and detecting real-world safety issues in Rust. IEEE Transactions on Software Engineering 50, 6 (2024), 1306\u20131324.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"e_1_3_2_1_56_1","volume-title":"Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation. 763\u2013779","author":"Qin Boqin","year":"2020","unstructured":"Boqin Qin, Yilun Chen, Zeming Yu, Linhai Song, and Yiying Zhang. 2020. Understanding memory and thread safety practices and issues in real-world rust programs. In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation. 763\u2013779."},{"key":"e_1_3_2_1_57_1","volume-title":"IEEE Symposium on Security and Privacy. 1544\u20131561","author":"Redini Nilo","year":"2020","unstructured":"Nilo Redini, Aravind Machiry, Ruoyu Wang, Chad Spensky, Andrea Continella, Yan Shoshitaishvili, Christopher Kruegel, and Giovanni Vigna. 2020. Karonte: Detecting insecure multi-binary interactions in embedded firmware. In IEEE Symposium on Security and Privacy. 1544\u20131561."},{"key":"e_1_3_2_1_58_1","volume-title":"Patina: A formalization of the Rust programming language","author":"Reed Eric","year":"2015","unstructured":"Eric Reed. 2015. Patina: A formalization of the Rust programming language. University of Washington, Department of Computer Science and Engineering, Tech. Rep. UW-CSE-15-03-02 264 (2015)."},{"key":"e_1_3_2_1_59_1","volume-title":"Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security. 2296\u20132310","author":"Sharma Ayushi","year":"2024","unstructured":"Ayushi Sharma, Shashank Sharma, Sai Ritvik Tanksalkar, Santiago Torres-Arias, and Aravind Machiry. 2024. Rust for embedded systems: current state and open problems. In Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security. 2296\u20132310."},{"key":"e_1_3_2_1_60_1","volume-title":"Proceedings of the ACM on Programming Languages 7, OOPSLA2","author":"Thy Sewen","year":"2023","unstructured":"Sewen Thy, Andreea Costea, Kiran Gopinathan, and Ilya Sergey. 2023. Adventure of a lifetime: Extract method refactoring for rust. Proceedings of the ACM on Programming Languages 7, OOPSLA2 (2023), 658\u2013685."},{"key":"e_1_3_2_1_61_1","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3466642","article-title":"Memory-safety challenge considered solved? An in-depth study with all Rust CVEs","volume":"31","author":"Xu Hui","year":"2021","unstructured":"Hui Xu, Zhuangbin Chen, Mingshen Sun, Yangfan Zhou, and Michael R Lyu. 2021. Memory-safety challenge considered solved? An in-depth study with all Rust CVEs. ACM Transactions on Software Engineering and Methodology (TOSEM) 31, 1 (2021), 1\u201325.","journal-title":"ACM Transactions on Software Engineering and Methodology (TOSEM)"},{"key":"e_1_3_2_1_62_1","volume-title":"Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering. 117\u2013126","author":"Xu Wei","year":"2004","unstructured":"Wei Xu, Daniel C DuVarney, and R Sekar. 2004. An efficient and backwards-compatible transformation to ensure memory safety of C programs. In Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering. 117\u2013126."},{"key":"e_1_3_2_1_63_1","volume-title":"Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering. 1\u201313","author":"Yang Wenzhang","year":"2024","unstructured":"Wenzhang Yang, Linhai Song, and Yinxing Xue. 2024. Rust-lancet: Automated ownership-rule-violation fixing with behavior preservation. In Proceedings of the IEEE\/ACM 46th International Conference on Software Engineering. 1\u201313."},{"key":"e_1_3_2_1_64_1","volume-title":"International Conference on Computer Aided Verification. Springer, 459\u2013482","author":"Zhang Hanliang","year":"2023","unstructured":"Hanliang Zhang, Cristina David, Yijun Yu, and Meng Wang. 2023. Ownership guided C to Rust translation. In International Conference on Computer Aided Verification. Springer, 459\u2013482."}],"event":{"name":"FSE Companion '26: 34th ACM International Conference on the Foundations of Software Engineering","location":"Concordia University Montreal QC Canada","acronym":"FSE Companion '26","sponsor":["SIGSOFT ACM Special Interest Group on Software Engineering"]},"container-title":["Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3803437.3805227","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,7,17]],"date-time":"2026-07-17T14:41:38Z","timestamp":1784299298000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3803437.3805227"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,7,5]]},"references-count":64,"alternative-id":["10.1145\/3803437.3805227","10.1145\/3803437"],"URL":"https:\/\/doi.org\/10.1145\/3803437.3805227","relation":{},"subject":[],"published":{"date-parts":[[2026,7,5]]},"assertion":[{"value":"2026-07-17","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}