From the course: Introduction to Embedded Systems with Rust
What are embedded systems? - Rust Tutorial
From the course: Introduction to Embedded Systems with Rust
What are embedded systems?
- [Narrator] You're probably accustomed to working on a laptop or a desktop, or even coding for those environments. They're smaller systems integrated into a larger system like cruise control on a car. They're often reactive systems that react to the environment. This environment can be either embedded systems or even natural phenomena. For example, a cruise control system will react when a car starts slowing down. The car will speed up in order to maintain the specified speed. Another example is a smoke detector. It reacts to smoke by triggering an alarm or switching on sprinklers. Embedded systems are resource constrained. Typically, they have a single CPU with clock speeds in the megahertz and contain as little as 16 kilobytes of RAM. In comparison, the general purpose computers that we use today have multiple CPUs with clock speeds in the gigahertz and have gigabytes of RAM. Embedded systems face constraints because of three things: Size, power, and heat. Embedded systems are smaller in size. After all, there's only so much space in parts of your car, your washing machine, or even your electric toothbrush. Their size imposes a limit on the number of CPUs they can have. These systems can't draw a huge amount of power. Often, they don't have access to large power systems. Battery-powered electronics fall into this category. An electric toothbrush has a small battery. If the embedded system in there drew a large amount of power, it will basically be unusable. Last in the list is heat. Computers generate heat enough so that we have cooling fans in laptops and desktop computers. The more processing power in the system, the more heat it generates. Fun fact, some companies even build their data centers in cold regions near the Arctic Circle just to keep them cool without having to spend as much money on advanced cooling systems. Clearly, this wouldn't work for embedded systems. If a plane had the same computing power as commercial data centers, let's just say we'd never fly anywhere. Embedded systems are computers built for a specialized purpose in a larger system. They're often defined by their resource-constrained nature, being limited by size, power, and heat.