Max G. Taylor, Massimiliano Otto, Josh Ehlinger, Jeff Imig
{"title":"Rust for Safe and Secure Avionics and Mission System Software","authors":"Max G. Taylor, Massimiliano Otto, Josh Ehlinger, Jeff Imig","doi":"10.4050/f-0077-2021-16907","DOIUrl":null,"url":null,"abstract":"\n The development lifecycle of software for aircraft systems is dominated by safety and cybersecurity considerations. Software development processes and tools are being continually updated to improve and optimize these critical considerations. While the processes and tools have received continuous updates, changes to the programming languages employed for developing safe and secure software for aircraft systems have evolved at a much slower pace. \n\nAs of 2017, 63% of Department of Defense (DoD) systems were developed with the C/C++ programming languages (Ref. 1). This is representative of the dominant position that software developed with the C/C++ programming language has in existing aircraft avionics and mission systems. The C language has been around since the 1970s and C++ was first introduced in the late 1980s. These languages are very stable and their extensive supporting ecosystems have helped grow and maintain their expansive use in aerospace and many other domains. The longevity of C/C++ has enabled language, usage, process, and tool tailoring so that the software built with C/C++ can be certified for use in both safety-critical and security-critical environments. \n\nThe C/C++ ecosystems are stable and mature but have properties that make writing software embedded in aircraft avionics very challenging. \n","PeriodicalId":273020,"journal":{"name":"Proceedings of the Vertical Flight Society 77th Annual Forum","volume":"62 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-05-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Vertical Flight Society 77th Annual Forum","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4050/f-0077-2021-16907","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
The development lifecycle of software for aircraft systems is dominated by safety and cybersecurity considerations. Software development processes and tools are being continually updated to improve and optimize these critical considerations. While the processes and tools have received continuous updates, changes to the programming languages employed for developing safe and secure software for aircraft systems have evolved at a much slower pace.
As of 2017, 63% of Department of Defense (DoD) systems were developed with the C/C++ programming languages (Ref. 1). This is representative of the dominant position that software developed with the C/C++ programming language has in existing aircraft avionics and mission systems. The C language has been around since the 1970s and C++ was first introduced in the late 1980s. These languages are very stable and their extensive supporting ecosystems have helped grow and maintain their expansive use in aerospace and many other domains. The longevity of C/C++ has enabled language, usage, process, and tool tailoring so that the software built with C/C++ can be certified for use in both safety-critical and security-critical environments.
The C/C++ ecosystems are stable and mature but have properties that make writing software embedded in aircraft avionics very challenging.