Static Analysis
- f Embedded Systems
Xavier RIVAL
rival@di.ens.fr
Static Analysis of Embedded Systems Xavier R IVAL rival@di.ens.fr - - PowerPoint PPT Presentation
Static Analysis of Embedded Systems Xavier R IVAL rival@di.ens.fr Outline Case study Certification of embedded softwares Demo Static Analysisof Embedded Systems p.2/12 Ariane 5 Flight 501 Ariane 5: sattelite launcher
rival@di.ens.fr
Static Analysisof Embedded Systems – p.2/12
successor of Ariane 5, much more powerful
first flight, June, 4th, 1996: failure failure report:
http://esamultimedia.esa.int/docs/esa-x-1819eng.pdf
take-off parameters nominal, normal flight during 36 seconds T + 36.7s: loss of trajectory T + 39s: desintegration of the launcher
loss of satellites launcher out of service (more than a year)
Static Analysisof Embedded Systems – p.3/12
IRS (Inertial Reference System:
OBC (On Board Computer): computes the action to keep the trajectory
Static Analysisof Embedded Systems – p.4/12
programming practice: reduce number of bits to be used e.g., cast 64 bits floating point numbers into signed 16 bits integers
no local interruption catch (expensive) thus, computer crash + error code returned!
arithmetic fault interuption in IRS computer illegal error code interpreted as regular flight data by OBC improper actions, thus loss of trajectory
Static Analysisof Embedded Systems – p.5/12
all IRS units crashed in the same time in avionics: separate development chains (and teams)
faulty computation was irrelevant after take-off
shutting down a task was considered potentially dangerous
the whole system had been used in Ariane 4 successfully, many times ... but Ariane 5 was more powerful thus higher horizontal bias values... thus overflow
Static Analysisof Embedded Systems – p.6/12
runtime errors, and other safety problems functional bugs, e.g.:
◮ violation of liveness properties ◮ unstable control loop
specification issues
user interface issues
Static Analysisof Embedded Systems – p.7/12
Static Analysisof Embedded Systems – p.8/12
DO-178 b for avionics ISO 26262, ARP 4754 for automotive industry
techniques to validate/certify software typically represent a huge cost:
◮ unit testing ◮ integration testing ◮ software maintenance: imposes more testing...
Aeronautics, cost of an airplane:
◮ airframe: 1/3 ◮ engines: 1/3 ◮ softwares, avionics: 1/3...
Static Analysisof Embedded Systems – p.9/12
level A: a failure would cause a crash
level C: a failure would cause crew overloading
level E: no effect on the safety of the flight
identification of possible failures, and evidence of correctness traceability absence of dead-code unit testing
Static Analysisof Embedded Systems – p.10/12
absence of runtime errors
synchronous requirement, i.e., time constraint
resource usage
◮ no dynamic memory allocation ◮ stack usage
Static Analysisof Embedded Systems – p.11/12
Static Analysisof Embedded Systems – p.12/12