Saturday, October 10, 2009

Invisible Software and Embedded Systems


With the rapidly-evolution of computer engineering technologies, Invisible Softwares, or widely known as Embedded Systems, has inevitably become an essential and significant aspect in various areas of our modern life today. During last week’s seminar, Dr. Tulika has provided us with a great introduction and insights into discovering the lesser-known facets of these widely-used and important technology and its applications.

Embedded Systems all around us

Invisible Softwares and Embedded Systems exist in many varieties and there are many other examples of their use. Just like 95% of all life forms in this planet are insects; with only animals, mammals, reptiles and many others making up a mere 5% of the remainder, only 2% of the embedded systems produced in the world are computer processors, dominated by many other convergent products and technologies.

Ranging from telecommunication systems, computer networking to even consumer electronics, we are in fact surrounded and interacting with different forms of embedded systems in our day to day activities, including your new iPhone, your dad’s convertible sports car, the upcoming PlayStation 3 gaming console and even simple household applications such microwave ovens, coffee maker or refrigerators.

Characteristics

  • Wholesome Task Dedication & Performance Constraints. Embedded systems are often designed to perform some specific tasks rather than for general uses or multiple tasks and may also have some real-time performance constraints such as immediate response and guaranteed reliability for safety and usability reasons. Others may have low-end or entirely unbounded by such requirements, allowing their hardware to be simplified for optimal cost reductions.
  • Strength in numbers. Embedded Systems are not always standalone devices. More than often, they consist of numerous small, computerized parts within a larger device that serves a more generic purpose. Take the Coffee Maker for instance, it features an embedded system for keeping your favourite Brazilian Coffee piping hot but its overall purpose is, of course, for brewing coffee!
  • Firmware. Various embedded systems comes with programmed instructions commonly known as Firmware and are stored in read-only memory or Flash memory chips that runs at very little hardware resources.

Reliability

Embedded Systems often make up critical and indispensable components of the machines and are expected to perform continuously and indepedently for long-term usage such as periods of 10-50 years without errors, and in unfortunate cases, recover by themselves when errors really occur. Therefore, such invisible softwares are tested more rigorously and developed extensively than that for personal computers. Unreliable and fallible mechanical parts such as disk drives, switches or buttons are usually avoided.

Some reliability issues may include:

  • Systems cannot be shut down for repair or too inaccessible for maintenance servicing.
    (E.g. Space systems, Automobile, Undersea Cables )
  • Systems must be kept running and timely response to user inputs must be guaranteed for safety reasons.
    (E.g. Aircraft navigation, safety-critical chemical controls in factories, emergency braking systems in cars and trains)
  • Systems will cause organizations large amount of monetary losses in event of shut down or disability.
    (E.g. Factory Controls, Funds Transfer, Automated Sales & Services etc.)

In a nutshell

Invisible Softwares and Embedded Systems are important applications of computer engineering and information technology in our day to day life and exist in a variety of shapes and sizes, from your little geeky automated Oral-B toothbrush to even sophisticated space navigation controls! More than often, efficient algorithms and programming is the core essentials of such systems to ensure their promised reliability, timely response and effectiveness, performing at their very best even after decades of use.

The next time you think that mere coding efficiencies in your programming assignment make little or almost no difference, think again!


May my spark light a fire,
Wong Kheng Leong =]

No comments:

Post a Comment

Followers