An embedded system is a combination of computer hardware and software designed to perform a specific function. It has three main components - hardware, application software, and an optional real-time operating system. Embedded systems are used in devices like fire alarms, cruise control systems, and digital cameras where they perform specialized tasks in real-time. Common characteristics include being single-purpose, constrained by tight design requirements like size and power consumption, and reactive to changes in their environment.