UST034

91 as Vulkan and OpenMP, tend to be layers on a Posix RTOS. That is driving a need for portable code that is also real-time aware, deterministic and not vulnerable to attack, as well as a reliable tool chain of compiler and analysis tools. Languages such as C++ and C#, which are used by most developers, have high levels of complexity and can lead to vulnerable code. Structured programming languages such as Ada and Spark, which are already used in avionics systems and include constructs for concurrency, are increasingly of interest to provide a portable real-time layer on top of a Posix RTOS. This is allowing developers to mix real-time elements in Ada and other APIs in C++. Conclusion Software development for autonomous systems is at a crossroads. UAVs, particularly in the defence sector, will need the same 25-year lifespan as manned aircraft, rather than off-the-shelf systems with a lifetime of 5 years, while autonomous cars will need a lifetime of 10-15 years. That is leading to key decisions around the support for the software and control over the source code. Even if certification is not necessary now, safety-critical secure software design around industry standards with long-term tool availability and support is essential as hardware multicore designs become smaller and more powerful. Acknowledgements The author would like to thank Oliver Kuehlert at Sysgo, Himar Alonso at UAV Navigation, Ian Ferguson at Lynx Software Technologies, Richard Jaenicke at Green Hills Software and Martyn Pike at AdaCore for their help with researching this article. Unmanned Systems Technology | October/November 2020 CANADA Blackberry (QNX) +1 613 591 0931 www.blackberry.qnx.com FRANCE Adacore (GnatPRO) +33 1 49 70 67 16 www.adacore.com GERMANY Segger Microcontroller (embOS)   +49 2173 993120 www.segger.com Sysgo (PikeOS) +49 6136 99480 www.sysgo.com JAPAN eSOL (eMCOS) +81 3 5365 1560 www.esol.com SWEDEN IAR Systems +46 18 16 78 00 www.iar.com Percepio +46 21 14 62 10 www.percepio.com UK Adacore (GnatPRO) +44 1935 385973 www.adacore.com Amazon Web Services (FreeRTOS) – aws.amazon.com/freertos ARM (Keil RTX) +44 1223 400400 www.ARM.com Wittenstein High Integrity Systems (SafeRTOS) +44 1782 286427 www.wittenstein.co.uk USA DDC-I (HeartOS, DeOS) +1 602 275 7172 www.ddci.com Green Hills Software (Integrity) +1 805 965 6044 www.ghs.com Lynx Software Technologies (LynxOS) +1 408 979 3900 www.lynx.com Micrium (µC/OS) +1 954 217 2036 www.micrium.com Linux Foundation (Zephyr) – www.zephyrproject.org Micro-ROS - micro-ros.github.io Microsoft (ThreadX) +1 858 613 6640 www.rtos.com Nvidia (Drive) – www.nvidia.com NXP (MQX) +1 800 521 6274 www.nxp.com Siemens (Nucleus) – www.mentor.com/ embedded-software/nucleus Wind River (VxWorks) +1 510 748 4100 www.windriver.com Examples of real-time operating system suppliers

RkJQdWJsaXNoZXIy MjI2Mzk4