【正文】
RealTime Systems Nan Guan (關(guān)楠) Computing Evolution ? Mainframe puting (60’s70’s) – Large puters to execute big data processing applications ? Desktop puting amp。 Inter (80’s90’s) – One puter at every desk to do business/personal activities ? Embedded Systems (since 00’s) – Numerous puting devices in every place/person – “Invisible” part of the environment – Millions for desktops vs. billions for embedded processors Embedded Systems ? “ Computer systems that are embedded into physical objectes … …” ? 98% puters in the world are embedded systems ? Market share 3 Embedded Systems RealTime Systems ? RealTime Systems: “The correctness of the putation does not only depend on the logical results, but also the time when the results are produced.” ? RealTime Systems are mon in Embedded Systems – Interaction between puters and the physical world RealTime Systems RealTime Systems RealTime Systems RealTime Systems RealTime Systems ? We need to guarantee that all timing constraints are satisfied under any circumstance, BEFORE runtime ? How to do this? – How about using a very fast processor? – How about executing it and measuring the time? (Testing) 11 The story about a sheep in Scotland… 12 The story about the Pathfinder on Mars … What do we learn? ? Testing is inadequate 13 r e a lw o r s t c a s e b e h a v i o rg u a r a n t e e db o u n dt y p i c a l b e h a v i o re x e c u t i o n t i m ed i s t r i b u t i o nc o v e r e d b y t e s t i n go b s e r v e dw o r s t c a s e b e h a v i o rWhat do we learn? ? Testing is inadequate, especially for realtime embedded systems – Need to simulate the stimulus and feedback from the physical world 14 Even the NASA Lab fails, then how about your project? What do we learn? ? Difficult to fix the error, even if it is exposed in testing – Difficult to reproduce – Difficult to explain 15 Timing Analysis ? How to rigorously verify the timing correctness? – An extremely difficult problem … 16 RealTime Computing Technology ? Some leading countries – USA – Germany – Sweden – France – Italy – … … 17 Research in RealTime Systems ? Conferences – RTSS: IEEE RealTime Systems Symposium – RTAS: IEEE RealTime and Technology and Applications Symposium – ECRTS: Euromicro Conference on Realtime Systems ? Journal: – Journal of RealTime Systems 18 ? More details about RealTime Systems in the following 19 Hard vs Soft RealTime Systems ? Definition based on functional criticality – HARD: The failure to meet the timing constraints has disastrous consequences ? Braking system, collision detection, etc. – SOFT: A few misses of deadlines do no serious harm, and only the systems’ overall performance degrades ? Video playback, etc. – Problem: how serious is serious? A design property Hard vs Soft RealTime Systems ? Definition based on validation – Validation: A demonstration by a provably correct, efficient procedure or by exhaustive simulation and testing – HARD: The user require the validation that the system always meets the timing constraints – SOFT: No validation is required, or only a demonstration that the job meet some statistical constraint suffices Desirable Properties of RT Systems (1) ? Predictability – the system behavior is known before it is put into operation – . Response times, deadlock freedom, etc. ? Analyzability – easy to analyze if the system can meet all the deadlines ? Cost optimality – . Energy consumption, memory blocks, etc. Desirable Properties of RT Systems (2) ? Maintainability – modular structure to ease system modification ? Robustness – must not collapse when subject to peak load, exception, manage all possible scenarios ? Fault tolerance – hardware and software failures should not cause the system to crash Why Achieving Predictability is Hard? ? Challenges from hardware features – Cache sharing, processor