English
Related papers

Related papers: Bringing Rust to Safety-Critical Systems in Space

200 papers

C-to-Rust transpilation is essential for modernizing legacy C code while enhancing safety and interoperability with modern Rust ecosystems. However, no dataset currently exists for evaluating whether a system can transpile C into safe Rust…

Software Engineering · Computer Science 2025-10-03 Anirudh Khatry , Robert Zhang , Jia Pan , Ziteng Wang , Qiaochu Chen , Greg Durrett , Isil Dillig

Rust is a programming language that combines memory safety and low-level control, providing C-like performance while guaranteeing the absence of undefined behaviors by default. Rust's growing popularity has prompted research on safe and…

Programming Languages · Computer Science 2024-05-28 Aidan Z. H. Yang , Yoshiki Takashima , Brandon Paulsen , Josiah Dodds , Daniel Kroening

Rust is a modern systems programming language whose type system guarantees memory safety. For the sake of expressivity and performance it allows programmers to relax typing rules temporarily, using unsafe code blocks. However, in unsafe…

Logic in Computer Science · Computer Science 2022-12-27 Nima Rahimi Foroushaani , Bart Jacobs

Unsafe Rust code is necessary for interoperability with C/C++ libraries and implementing low-level data structures, but it can cause memory safety violations in otherwise memory-safe Rust programs. Sanitizers can catch such memory errors at…

Programming Languages · Computer Science 2025-10-24 Oliver Braunsdorf , Tim Lange , Konrad Hohentanner , Julian Horsch , Johannes Kinder

Automatically translating system software from C to Rust is an appealing but challenging problem, as it requires whole-program reasoning to satisfy Rust's ownership and borrowing discipline. A key enabling step in whole-program translation…

Programming Languages · Computer Science 2026-04-23 Victor Chen , Ayden Coughlin , Michael D. Bond

Context: The integration of Rust into kernel development is a transformative endeavor aimed at enhancing system security and reliability by leveraging Rust's strong memory safety guarantees. Objective: We aim to find the current advances in…

Software Engineering · Computer Science 2024-09-10 Shane K. Panter , Nasir U. Eisty

The growing adoption of Rust for its memory safety and performance has increased the demand for effective migration of legacy C codebases. However, existing rule-based translators (e.g., \ctorust) often generate verbose, non-idiomatic code…

Software Engineering · Computer Science 2026-03-31 Yanyan Yan , Yang Feng , Jiangshan Liu , Di Liu , Zixi Liu , Hao Teng , Baowen Xu

The Rust programming language restricts aliasing to provide static safety guarantees. However, in certain situations, developers need to bypass these guarantees by using a set of unsafe features. If they are used incorrectly, these features…

Software Engineering · Computer Science 2026-03-09 Ian McCormack , Tomas Dougan , Sam Estep , Hanan Hibshi , Jonathan Aldrich , Joshua Sunshine

As embedded systems grow in complexity and scale due to increased functional diversity, component-based development (CBD) emerges as a solution to streamline their architecture and enhance functionality reuse. CBD typically utilizes the C…

Software Engineering · Computer Science 2025-10-30 Nao Yoshimura , Hiroshi Oyama , Takuya Azumi

The diversification of functionalities and the development of the IoT are making embedded systems larger and more complex in structure. Ensuring system reliability, especially in terms of security, necessitates selecting an appropriate…

Software Engineering · Computer Science 2025-10-30 Nao Yoshimura , Hiroshi Oyama , Takuya Azumi

The Rust programming language is famous for its strong ownership regime: at each point, each value is either exclusively owned, exclusively borrowed through a mutable reference, or borrowed as read-only through one or more shared…

Programming Languages · Computer Science 2026-03-31 Wannes Tas , Bart Jacobs

The advent of strong generative AI has a considerable impact on various software engineering tasks such as code repair, test generation, or language translation. While tools like GitHub Copilot are already in widespread use in interactive…

Software Engineering · Computer Science 2025-12-03 Martin Weiss , Jesko Hecking-Harbusch , Jochen Quante , Matthias Woehrle

The Rust programming language has garnered significant attention due to its robust safety features and memory management capabilities. Despite its guaranteed memory safety, Rust programs suffer from runtime errors that are unmanageable,…

Software Engineering · Computer Science 2024-11-05 Yunbo Ni , Yang Feng , Zixi Liu , Runtao Chen , Baowen Xu

Existing C to Rust translation techniques fail to balance quality and scalability: transpilation-based approaches scale to large projects but produce code with poor safety, idiomaticity, and readability. In contrast, LLM-based techniques…

Software Engineering · Computer Science 2025-11-26 Saman Dehghan , Tianran Sun , Tianxiang Wu , Zihan Li , Reyhaneh Jabbarvand

Translating legacy C codebases to Rust is increasingly demanded for building safety-critical systems. While various approaches have emerged for this task, they face inherent trade-offs: rule-based methods often struggle to satisfy code…

Software Engineering · Computer Science 2026-01-14 Chaofan Wang , Tingrui Yu , Beijun Shen , Jie Wang , Dong Chen , Wenrui Zhang , Yuling Shi , Chen Xie , Xiaodong Gu

Memory-safety bugs introduce critical software-security issues. Rust provides memory-safe mechanisms to avoid memory-safety bugs in programming, while still allowing unsafe escape hatches via unsafe code. However, the unsafe code that…

Cryptography and Security · Computer Science 2022-12-07 Sangdon Park , Xiang Cheng , Taesoo Kim

Decompiling Rust binaries is challenging due to the language's rich type system, aggressive compiler optimizations, and widespread use of high-level abstractions. In this work, we conduct a benchmark-driven evaluation of decompilation…

Programming Languages · Computer Science 2025-07-28 Zixu Zhou

We present an integration of a safe C dialect, Checked C, for the Internet of Things operating system RIOT. We utilize this integration to convert parts of the RIOT network stack to Checked C, thereby achieving spatial memory safety in…

Programming Languages · Computer Science 2025-02-26 Sören Tempel , Nora Bruns

The C programming language has been foundational in building system-level software. However, its manual memory management model frequently leads to memory safety issues. In response, Rust has emerged as a memory-safe alternative. Moreover,…

Programming Languages · Computer Science 2026-04-07 HoHyun Sim , Hyeonjoong Cho , Yeonghyeon Go , Sadegh AlMahdi Kazemi Zarkouei , Zhoulai Fu , Ali Shokri , Binoy Ravindran

There has been a growing interest in translating C code to Rust due to Rust's robust memory and thread safety guarantees. Tools such as C2RUST enable syntax-guided transpilation from C to semantically equivalent Rust code. However, the…

Software Engineering · Computer Science 2026-04-21 Yifei Gao , Chengpeng Wang , Pengxiang Huang , Xuwei Liu , Mingwei Zheng , Xiangyu Zhang