tailieunhanh - Lecture Programming principles and practice using C++: Chapter 25 - Bjarne Stroustrup

This lecture provides a brief overview of what distinguishes embedded systems programming from “ordinary programming.” It then touches upon facilities that become prominent or problems when working “close to the hardware” such as free store use, bit manipulation, and coding standards. Remember: not all computers are little grey boxes hiding under desks in offices. | Chapter 25 Embedded systems programming Bjarne Stroustrup Abstract This lecture provides a brief overview of what distinguishes embedded systems programming from “ordinary programming.” It then touches upon facilities that become prominent or problems when working “close to the hardware” such as free store use, bit manipulation, and coding standards. Remember: not all computers are little grey boxes hiding under desks in offices. Stroustrup/Programming Nov'13 Overview Embedded systems What’s special/different predictability Resource management memory Access to hardware Absolute addresses Bits – unsigned Coding standards Stroustrup/Programming Nov'13 Embedded systems Hard real time Response must occur before the deadline Soft real time Response should occur before the deadline most of the time Often there are plenty of resources to handle the common cases But crises happen and must be handled Predictability is key Correctness is even . | Chapter 25 Embedded systems programming Bjarne Stroustrup Abstract This lecture provides a brief overview of what distinguishes embedded systems programming from “ordinary programming.” It then touches upon facilities that become prominent or problems when working “close to the hardware” such as free store use, bit manipulation, and coding standards. Remember: not all computers are little grey boxes hiding under desks in offices. Stroustrup/Programming Nov'13 Overview Embedded systems What’s special/different predictability Resource management memory Access to hardware Absolute addresses Bits – unsigned Coding standards Stroustrup/Programming Nov'13 Embedded systems Hard real time Response must occur before the deadline Soft real time Response should occur before the deadline most of the time Often there are plenty of resources to handle the common cases But crises happen and must be handled Predictability is key Correctness is even more important than usual “correctness” is not an abstract concept “but I assumed that the hardware worked correctly” is no excuse Over a long time and over a large range of conditions, it simply doesn’t Stroustrup/Programming Nov'13 Embedded systems Computers used as part of a larger system That usually doesn’t look like a computer That usually controls physical devices Often reliability is critical “Critical” as in “if the system fails someone might die” Often resources (memory, processor capacity) are limited Often real-time response is essential Stroustrup/Programming Nov'13 Embedded systems What are we talking about? Assembly line quality monitors Bar code readers Bread machines Cameras Car assembly robots Cell phones Centrifuge controllers CD players Disk drive controllers “Smart card” processors Fuel injector controls Medical equipment monitors PDAs Printer controllers Sound systems Rice cookers Telephone switches Water pump controllers Welding machines .