3 ms·
This Car Runs on Code (100 million lines of it)
- timf 18y agoFrom the article, kind of amazing: - "The avionics system in the F-22 Raptor, the current U.S. Air Force frontline jet fighter, consists of about 1.7 million lines of software code." - "The F-35 Joint Strike Fighter, scheduled to become operational in 2010, will require about 5.7 million lines of code to operate its onboard systems." - "And Boeing’s new 787 Dreamliner, scheduled to be delivered to customers in 2010, requires about 6.5 million lines of software code to operate its avionics and onboard support systems." - "These are impressive amounts of software, yet if you bought a premium-class automobile recently, 'it probably contains close to 100 million lines of software code'"
- timf 18y agoI like this part, regarding "100 million lines of code": "Such complexity brings with it reliability issues." I can't even imagine.
- jacquesm 18y agoAfter reading this I'm going to be so much more happy that my car starts in the morning... I wonder how much of that code is 'critical', in other words, if it should fail that it would lead to loss of a vehicle or plane (including the occupants and/or bystanders). I do wonder about those line counts though, that seems suspiciously high, especially given the fact that automotive processors are usually not very powerful. The majority is in the 'pic/atmel/name your flavour of embedded cpu' range.
- noonespecial 18y agoI recently did a microcontroller project that needed a fast way to estimate the root mean square of a bunch of data samples. Simple in a high level language. Nearly 200 lines in assembly. I believe it.
- parbo 18y agoThe ECU I'm developing now uses a Freescale PPC-5516 running at 66 MHz. That's kind of a mid-range processor for automotive now. I would estimate that it will run ~ 1 million LOC at start of production. C and C++, some small startup code in assembly.
- jacquesm 18y agowhat on earth do you need a million lines for ? That's a fair bit of code by any standard, and from where I'm sitting an ECU is a control system with a relatively limited number of input channels controlling an even more limited number of outputs. Where does all that code go to ?