Register Login

Embedded Systems Interview Questions and Answers

Updated May 10, 2019

What are Embedded Systems?

An embedded system can be considered as a combination of both software and hardware that is designed for a particular function. It can be independent or attached to another system to increase its functionality. The hardware can be microcontroller based or a microprocessor.

What is the use of Embedded Systems?

The uses of embedded systems are as follows:

  • Used in industrial equipment, medical equipment, automobiles, household appliances, and aeroplanes.
  • Electronic passport systems
  • Patient body temperature monitoring systems
  • Home automation systems
  • Prepaid energy meter based on GSM

What are some important characteristics of Embedded Systems?

The important characteristics of embedded systems are as follows:

  • An embedded system has three components namely, hardware, software and an RTOS (Real-Time Operating System) that handles the application software.
  • The system is single functioned and is designed for a specific function.
  • They are able to execute operations based on real-time data and information.
  • The software usually is embedded in the ROM.
  • The input and output devices are connected.

What are the different types of embedded systems?

The different types of embedded systems based on microcontroller performance are:

  • Sophisticated embedded systems
  • Medium scale embedded systems
  • Small scale embedded systems

Based on functional requirements the types are:

  • Real-time embedded systems
  • Mobile embedded systems
  • Standalone embedded systems
  • Networked embedded systems

What are some examples of Embedded Systems?

Some examples of embedded systems are digital cameras, MP3 players, ATM machine, Wifi router, projectors, Air conditioner, and the AC remote, microwave and washing machine.

What is a semaphore in embedded systems?

In multitasking environments, the semaphores are used for storing and indicating the status of a commonly used resource. Binary and multiple resource semaphores are used in embedded system RTOSs. A binary semaphore is used for sharing a single resource between two tasks. Multiple semaphores are used for controlling multiple identical resources.

What are the automotive embedded systems?

Automotive embedded systems are used for improving the speed and functionalities of automobiles. These systems increase the safety measures of the cars and reduce the complexity of the vehicle making it easier to use for the users.

What is the role of RAM and ROM in an embedded system?

In embedded systems, volatile memory is called RAM that stores data until the power is applied. When the power is switched off, the contents are lost. Non-volatile memory is called ROM that stores information that can be obtained even when the power is switched off.

What is arm Embedded Systems?

ARM (Advanced RISC Machines) processors are used for executing a small number of instructions at higher speeds by removing unnecessary instructions. They are used extensively along with embedded systems to reduce complexity, increase speed due to its reduced instruction set and decrease the power consumption.

What is watchdog timer in embedded systems?

A watchdog timer is used to reset the processor of an embedded system if there are problems in the software or hardware. It is based on a program counter that starts from an initial value and counts down to zero. If the system gets disabled or hanged the timer starts working.

What are real-time embedded systems?

Real-time embedded systems are used to monitor and respond to external situations. The system is connected with the external environment through sensors, input and output interfaces, and actuators. The embedded system executes instructions based on external information. They are used in automobiles, spacecraft, radio and satellite communications.

What is distributed embedded systems?

A distributed embedded system is a combination of an embedded system and a distributed system. It is used for distributed power switching, distributed computation and for control signals that are mixed. A common example of such a system is an elevator button.

What is the difference between embedded systems and pcs?

A PC or personal computer is a general purpose system that is used for multiple functions like word processing, managing databases, playing music or a video, etc. It has a Central Processing Unit that controls the functioning of the input and output devices. On the other hand, an embedded system is designed for performing specific functions like sensing external information or controlling an execution. It can be a part of a personal computer or an independent system.

Why don’t embedded systems use virtual memory?

Virtual memory is a virtual memory layer apart from the primary and secondary memory. As the virtual memory addresses have to be translated into physical memory addresses a lot if the chip area is required. Therefore, embedded systems do not use virtual memory and additionally, there may be delays in the response input.

What are the pros and cons of using assembly in embedded systems?

Pros of using assembly language in embedded systems:

  • These programs are hardware oriented.
  • The code is portable as long as the same processor is used.
  • The execution of instructions is fast.
  • Insertions and deletions can be made easily.

Cos of using assembly language:

  • The programs are long and can get complicated.
  • The programs are not easily run on systems smaller in size.
  • The code cannot be run on systems of different processor design.
  • There is no provision of a System Development Kit.

 What are some automated tools to test embedded systems?

Some automated tools for testing embedded systems are Parasoft, Tessy, TestPlant, and KlocWork.

How are unions useful in embedded systems?

Unions are used in embedded systems for applications that have different modes of operation. Then the data that is specific to a mode can be placed in a structure, and these structures can be placed in a union. This helps in memory optimization.

What is interrupt latency in embedded systems?

An interrupt latency is a latency that occurs while handling the interrupts. It is the amount of time that elapses between the arrival of an external interrupt and the processing of the interrupt.

What are actuators in embedded systems?

An actuator is a device that is used to control the movements of systems and machines. It uses sources of power like electric current or hydraulic fluid. After receiving a control signal, it converts the signal’s energy into mechanical motion.

What is the reentrant function in embedded systems?

A reentrant function is used in embedded systems for executing multiple tasks together without any data corruption issues. This function can be paused at any time and restarted again based on the requirements. It protects local data and preserves global data by creating a local copy of that data. It must not call functions that are non-reentrant.