2. What is difference between IRQ and FRQ?

"IRQ is serviced at a normal priority level and FIQ is
serviced at high priority level." This statement is wrong

FIQ is the fast interrupt i.e. the latency time taken is less because in the FIQ mode (in case of ARM architecture where these modes are encountered) the mode has an additional set of 8 general purpose registers which means in case of the banked registers there is no need to store these registers into stack when the interrupt occurs.

That means r0 to r7 only needs to be stored while moving from User mode to FIQ mode whereas while moving from to IRQ mode r0 to r12 needs to be stored.

3. What is priority inversion? And What is the solution?

When low priority thread is service and high priority theas
is keep on waiting.This situation is called priority
inversion.because even though thread have high priority it
is not executed.

solution:There are different solution one of them is
priority inheritance,It means change the priority of the
thread.make high priority thread to low and lower priority
thread to high.
In this way only the rule high priority should execute first
is follow.

4. What is major concerns about any RTOS selection?

Interrrupt Latency means the time taken by the processor to
pass the control to ISR after the interrupt is raised.
Certainly this is the hardware feature.

Footprint of the OS matters because with the same compiler
and same optimization techniques, Different OS's will have
different footprint.
So this is can be looked upon while selecting the RTOS.

RTOS can be chosen looking at various API support it
provides. Synchronization support, Scheduler algos, and
memory management of the OS.

5. Write a code to connect Hardware interrupt to ISR?

In Keil
void serial_ISR() interrupt 4 using 0

& in AVR studio

hardware intterupt normally redirects the uC to predefined
addresses. In case of high end processors the interrupt
table will decide the interrupt vector address and whenever
intterrupt pin goes low, the table is searched for type and
source of interrupt.

6. What is task spawn in vxworks?

Task Spawn is used to create a thread in VXworks.
Once the thread is created than only we can make all the suspended,delete,resume operations.
taskSpawn(char *name,int priority,int option,int stacksize,FUNCPTR entrypoint,int avg1,avg2....avg10)

1. name: task name examp: task1
2. priority: 0-255 //0---high, 255---low
3.options: 0 most of the times
4.FUNCPTR: It jumps to function we are calling examp; (FUNCPTR)fun1
5.avg1--avg10: almost 0 every time

7. Where is AD Database held what other folders are
related to AD?

NTDS.dit is a active AD data base file stores in %

Edb.chk, Edb*.log, res1, res2 are the files related to AD

8. What version of wince supports dual core processor?

only windows embedded compact 7 will support dual core

9. When would you choose bottom up methodology?

In Bottom Up Methodology, we build the bottom-most layer
first and then ascend onto the actual application i.e. all
the smaller chunks of code or assisting functions are build
first and then the bigger function which uses these are built.

Bottom Up methodology is followed when we are definite about
the number, type and functionality of the Bottom most
functions(Assisting Functions) to be defined. Once all these
functions are defined, we build the bigger system above it.

Top down approach is followed when we are not very sure
about the number/type of functions that need to be
implemented, so the application is started to be implemented
and as and when smaller functions are needed, they are built.

10. When would you choose top down methodology?

Top down methodology is one where overall picture of the
system is defined first. Then we go into the details of the
sub-systems in the next level and so on. So to brief this,
first the complex system is seen as a whole and then this
is broken down to smaller simpler pieces.

Top down approach is preferred when understanding of the
complete system is done. Sufficient knowledge of the system
is required.

Download Interview PDF