The Last Cathedral - Democratizing Flight Software
Transcription
The Last Cathedral - Democratizing Flight Software
The Last Cathedral Democratizing Flight Software Kevin Scharpf December 11, 2013 The PTR Group Who are we? Embedded Systems Consulting Firm Have supported numerous space missions including Tacsat-2 (first Linux space mission) along with IBEX, GLAST, ORBCOMM, OrbitalCygnus, and DARPA F6 Robotic space projects including Phoenix, SUMO, FREND Training Provider Linux, Linux Networking, Multi-core, Linux KVM, and Android ITG-3-2013-2 Copyright 2013, The PTR Group, Inc. Is Linux Viable in Space? Wide variety of platform support PREEMPT_RT patchset provides hard realtime guarantees SpaceX and Tacsat-2 ITG-3-2013-3 Copyright 2013, The PTR Group, Inc. Why Linux in Space? Because it is free “as in beer”? No. The cost of the Operating System is irrelevant to the overall mission cost. Because it is free “as in speech”? No. Possibly relevant to individuals but not to the organization at-large. Because it is open source? Yes and No. Applying known patches to the kernel is a valid use-case – see PREEMPT_RT. Applying your own patches may not be wise. ITG-3-2013-4 Copyright 2013, The PTR Group, Inc. Why Linux in Space? Does it have higher quality / more features / etc? From the Linux README Although originally developed first for 32-bit x86-based PCs (386 or higher), today Linux runs on (at least) the Compaq Alpha AXP, Sun SPARC and UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, Cell, IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, AXIS CRIS, Xtensa, Tilera TILE, AVR32 and Renesas M32R architectures. Anything else? Community ITG-3-2013-5 Copyright 2013, The PTR Group, Inc. Revisiting Cost Government (DoD and NASA) budgets are tightly constrained and will be so for the foreseeable future What is the impact of software costs on program budgets? Software development costs are almost entirely labor Late-stage flexibility up to and including inspace ITG-3-2013-6 Copyright 2013, The PTR Group, Inc. Software Labor Cost Drivers Availability of developers Indeed.com shows 3343 embedded linux jobs as of 25 November. ITG-3-2013-7 Copyright 2013, The PTR Group, Inc. Labor Drivers – Feedback Cycles Change Build Static Analysis Hardware Test Feedback Software Test Review Dynamic Analysis ITG-3-2013-8 Copyright 2013, The PTR Group, Inc. Reducing Feedback Cycles Goal – achieve the highest quality possible prior to ever reaching a blocking point in development Increase the number of resources Compilers / Test Articles People – Strive for an open community ITG-3-2013-9 Copyright 2013, The PTR Group, Inc. Feedback – Getting Over Hurdles A programmer’s best friend – stackoverflow.com stackoverflow.com currently has 849 questions containing the phrase “embedded linux”, 103 questions containing “openembedded”, and 42 questions containing “greenhills”. ITG-3-2013-10 Copyright 2013, The PTR Group, Inc. Feedback – Force Multiplier 35 github repositories contain the phrase “vxworks” containing 340k SLOC* https://github.com/torvalds/linux shows 3422 contributors as of 14 November 2013* 21098 github repositories contain the word “linux” containing 155M SLOC. (239 github repositories contain the phrase “embedded linux”)* *Source: github.com ITG-3-2013-11 Copyright 2013, The PTR Group, Inc. A Flight Software Community Most flight software isn’t so flightspecific Developing a common stack ITG-3-2013-12 Copyright 2013, The PTR Group, Inc. Summary Linux is a viable platform for flight software Maximize the number of resources available It is possible to develop a full stack based upon Linux that can be carried across programs ITG-3-2013-13 Copyright 2013, The PTR Group, Inc. Questions? ITG-3-2013-14 Copyright 2013, The PTR Group, Inc. Embedded Android Job Trends Embedded Android showing >1000 percent growth since 2010 ITG-3-2013-15 Copyright 2013, The PTR Group, Inc. GAO NASA 2013 Project Percentage of new source lines of code for mission-critical software Reported number of critical technologies Percentage cost growth JWST 60% 10 140.1% MMS 46% 2 0 LADEE 29% 1 4.7% LDCM 8% 3 -1.1% SMAP 5% 1 0 GPM 5% 1 -8.2% MAVEN 4% 1 -2.7% TDRS 4% 1 -11.8% OCO-2 0 0 49.3% Source: GAO NASA Assessment of Large Projects - May 2013 ITG-3-2013-16 Copyright 2013, The PTR Group, Inc. Most projects in implementation have undertaken low amounts of new software development and have incorporated a lower number of critical technologies, which indicates a lesscomplex, lower-risk development effort. - GAO contrasting current NASA large project performance versus performance in previous years.