Embedded Electronics - Interview Questions for Engineering freshers Basics Guide
http://ingenuitydias.blogspot.com/2015/06/embedded-electronics-interview.html
Differentiate between mutexes vs semaphores.
Semaphores is a synchronization tool to overcome the critical section problem.
A semaphore S is basically an integer variable that apart from initialisation is accesses only through atomic operations such as wait() and signal().
Semaphore object basically acts as a counter to monitor the number of threads accessing a resource.
Mutex is also a tool that is used to provide deadlock free mutual exclusion.It protects access to every
critical data item.if the data is locked and is in use,it either waits for the thread to finish or awakened to
release the lock from its inactive state.
Model transformations And Interaction Semantics
Watchdog Timer Interview Questions
Macros And Inline Functions Comparison
What are the commonly found errors in Embedded Systems?
Damage of memory devices due to transient current and static discharges.
Malfunctioning of address lines due to a short in the circuit
Malfunctioning of Data lines.
Some memory locations being inaccessible in storage due to garbage or errors.
Improper insertion of Memory devices into the memory slots
Faulty control signals.
What is the need for having multi byte data input and output buffers in case of device ports?
It’s normally the case that some devices transfer the output either in a bursty or a sequential manner and also during input entry. If we take the example of keyboards, all the data entered is stored in a buffer and given at a time or one character at a time.
In case of networking there may be several requests to access the same resource and all these are queued in a buffer and serviced in the order they are received.Hence to avoid the input/output units from getting overloaded with requests, we use multibyte buffers.
What is the difference between Hardware design and Software Design?
Hardware design is designed with the collaboration of interconnected parallel components that inherits the properties of each other. Whereas, Software design is designed with sequential components, that are based on objects and threads.
Semaphores is a synchronization tool to overcome the critical section problem.
A semaphore S is basically an integer variable that apart from initialisation is accesses only through atomic operations such as wait() and signal().
Semaphore object basically acts as a counter to monitor the number of threads accessing a resource.
Mutex is also a tool that is used to provide deadlock free mutual exclusion.It protects access to every
critical data item.if the data is locked and is in use,it either waits for the thread to finish or awakened to
release the lock from its inactive state.
Model transformations And Interaction Semantics
Watchdog Timer Interview Questions
Macros And Inline Functions Comparison
What are the commonly found errors in Embedded Systems?
Damage of memory devices due to transient current and static discharges.
Malfunctioning of address lines due to a short in the circuit
Malfunctioning of Data lines.
Some memory locations being inaccessible in storage due to garbage or errors.
Improper insertion of Memory devices into the memory slots
Faulty control signals.
What is the need for having multi byte data input and output buffers in case of device ports?
It’s normally the case that some devices transfer the output either in a bursty or a sequential manner and also during input entry. If we take the example of keyboards, all the data entered is stored in a buffer and given at a time or one character at a time.
In case of networking there may be several requests to access the same resource and all these are queued in a buffer and serviced in the order they are received.Hence to avoid the input/output units from getting overloaded with requests, we use multibyte buffers.
What is the difference between Hardware design and Software Design?
Hardware design is designed with the collaboration of interconnected parallel components that inherits the properties of each other. Whereas, Software design is designed with sequential components, that are based on objects and threads.
Hardware design structure doesn’t change dynamically and it can’t be created, modified or removed easily. Whereas, Software design structure can be changed dynamically and re-usability features, used to define the components. It also includes easy creation, modification and removal of the components from the software.
Hardware design focuses on individual components that are represented using analytical model that uses the transfer functions. Whereas, Software design represent the components using computation model that can have abstract execution engine or it can use the virtual machine that are non-deterministic.
What are the differences between Analytical and computational modeling?
Analytical model allows the components to deal with the concurrency that are given during the process and the quantitative constraints that might come in between the components. Whereas, computational model deal with the non-deterministic abstraction hierarchy that has computational complexity to deal with the concurrency and allow it put also the physical constraints.
Analytical models can’t deal with the partial and incremental specifications that are non-deterministic. It is also not good in controlling the computation complexity that is used in the hardware design. Whereas, Computational model can, deal with constraints easily and it provides an upgrade-able solution.
Analytical model is the equation based model that doesn't have the time-sharing and parallelism concepts. Whereas, time-sharing and parallelism is used, in the abstract method that provides the theories of complexity and the real time evaluation.
What are the differences between Analytical and computational modeling?
Analytical model allows the components to deal with the concurrency that are given during the process and the quantitative constraints that might come in between the components. Whereas, computational model deal with the non-deterministic abstraction hierarchy that has computational complexity to deal with the concurrency and allow it put also the physical constraints.
Analytical models can’t deal with the partial and incremental specifications that are non-deterministic. It is also not good in controlling the computation complexity that is used in the hardware design. Whereas, Computational model can, deal with constraints easily and it provides an upgrade-able solution.
Analytical model is the equation based model that doesn't have the time-sharing and parallelism concepts. Whereas, time-sharing and parallelism is used, in the abstract method that provides the theories of complexity and the real time evaluation.