The word embedded merely means that something is attached to another thing or system. An embedded system is just like a computer hardware system, but it has software embedded inside the system. It is mainly a part of a bigger system or an independent system. It is based on microprocessors and microcontrollers in order to perform specific tasks. An example of an embedded system is a fire alarm. All the popular Embedded System interview questions and answers have been put together which will be handy if you want to crack an interview.
Here in this article, we will be listing frequently asked Embedded Systems Interview Questions and Answers with the belief that they will be helpful for you to gain higher marks. Also, to let you know that this article has been written under the guidance of industry professionals and covered all the current competencies.
The embedded system is an integrated hardware circuit system which is programmed to operate, organize and perform the singular or multiple tasks based on the application. The assembled units of the embedded system work together based on a set of program or rules which have been embedded into the microcontroller.
The Embedded systems come varied shapes and sizes. It varies from large multiple racked data storage systems to tiny or small modules like the personal MP3 players or cellular handsets.
The embedded system is based on the performance and functional requirements. The embedded system is divided into four major categories.
Note: Embedded systems uses are very general question in Embedded systems interview questions.
The components of an embedded system are mainly divided into three parts:
The difference between an embedded system and microcontroller are:
S.no | Embedded System | Microcontroller |
---|---|---|
1. | Embedded system is an electronic system. | The microcontroller is the heart of an embedded system, and it controls the operation. |
2. | Embedded system looks after the whole process. | A microcontroller looks after specific tasks only. |
3. | An embedded system consists of hardware and software components. | A microcontroller has CPU, RAM, and ROM which are a part of the embedded system. |
The difference between microprocessor and microcontroller are:
S.no | Microprocessor | Microcontroller |
---|---|---|
1. | The microprocessor is the central part or heart of the computer system. | The microcontroller is the heart of an embedded system. |
2. | Microprocessor chip does not have RAM, ROM I/O units and timer. | A single microcontroller chip has CPU, RAM, and ROM. |
3. | There is no power system feature in a microprocessor. | Power saving feature is there in a microcontroller. |
4. | A microprocessor system is complex and expensive. | The microcontroller system is inexpensive and straightforward. |
5. | Microprocessor depends on technology, and so the system can run at a very high speed. | A microcontroller depends on its architecture, and hence the system can run up to 200 MHz. |
6. | Microprocessor runs on the Von-Neumann architecture where data and program can be stored in the same memory. | The microcontroller runs on Harvard architecture, and so data and program memories are separate. |
7. | The microprocessor is generally used in personal computers. | A microcontroller is used in washing machines and MP3 players. |
Note:- The embedded system market is continually increasing, so embedded system interview questions are essential.
In an embedded system, DMA stands for Direct Memory Access. It is a process that allows an input/output (I/O) device to send or receive data from the main memory. A chip known as the DMA controller (DMAC) manages the DMA process. Data is communicated between the peripheral device and system memory through the DMA channels.
Macros are different from functions in many ways like:
S.no | Macros | Functions |
---|---|---|
1. | Macros are pre-processed. | Functions are compiled. |
2. | The code length in macros always increases. | In functions, the length of the code does not change. |
3. | Macros do have side effects. | Functions do not have any side effects. |
4. | Compile errors cannot be checked in macros. | Compile errors can be checked in functions. |
5. | Macros are generally useful when small codes appear a number of times. | Functions are useful when large codes appear a number of times. |
6. | Type checking is not required for macros. | Type checking is required for functions. |
Interrupt latency can be reduced by making a short interrupt routine if interrupt priorities are not allowed by the hardware. In such a case interrupt routine which is started cannot be interrupted by another interrupt. It will be better to avoid disabling the interrupts in any method. In such a case the interrupt has to wait for the next one to be allowed.
Pre-processor is system software which can run on a computer's hardware and application. It executes pre-processing of the High-Level Language (HLL). It is the first step of the language processing system. The main tasks of a pre-processor are comments removing, the inclusion of files and expansion of macros.
The purpose of the segment register is to hold the base address of the memory where a particular segment begins. There are different types of segment registers to perform various functions. They are code segment (CS), data segment (DS), stack segment (SS) and extra segment (ES).
It is a piece of hardware which is used for automatic detection of software anomalies. If such defects occur, then it resets the processor. This timer is mainly based on a counter which can count down from some initial value to zero.
The mutex is known as Mutual Exclusion. This is usually used by tasks for giving exclusive access to a shared resource. It can be used for multiple tasks or threads in a system.
Java is used in an embedded system for sophisticated and non-hard real-time tasks. It gives high performance and has small footprints. This reduces development time and errors. Java has a set of standard libraries, so the functionality rewriting is not needed. It provides excellent development productivity which is required in an embedded system.
The full-form of RTOS is a Real-Time Operating System. The primary purpose of an RTOS in an embedded system is to serve the real-time applications which can process the data without any kind of buffer delays. It also looks after the hardware complexities. RTOS is used in an embedded system because it can meet real-time deadlines and can efficiently manage complexities.
Note:- Some times interviewer can give you to make a standard report at the time of embedded system interview questions.
The standard errors that are found in an embedded system are:
It is a pathway to move the data rapidly through digital signals. There three different types of internal buses with are related to the processor. The buses are data, bus, address bus and control bus. All these together make up the system bus.
Both testing and verification are two different methods but these help in checking the application requirements and developments. The primary purpose of both is to provide a correct application — however, the difference between the two.
S.no | Testing | Verification |
---|---|---|
1. | The process of testing is generally done after verification. | Verification is a process which is usually done before testing. |
2. | Software testing is done by testers. | Process verification is done by a developer. |
3. | The job of testing is to check the process for its functionality and requirements. | The main job of verification is to remove bugs and issues during development. |