What is the difference detween ISR & function call
Answers were Sorted based on User's Feedback
Answer / boss
If an interviewer asks this question. i would first say, it doesn't make a lot of sense in comparing these 2.
However, we can compare an ISR and a Function in terms of the do's and don'ts while writing them.
function can have anythings. there is no restriction. But ISR has some restrictions.
1. It should be as small as possible
2. Hence no large functin calls allowed (NO to printf())
3. No blocking function calls from an ISR. It should not
try to take a semaphore. but can release a
semaphore(counting/binary)
There may be few more. Pls google and collect all
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / praveen
Main difference is If function is called it should be
processed by compiler where as ISR is processed only when
interrupt occur.function call can return some value .but ISR
not return any thing .
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / mahesh
ISR will be initiated by the hardware and the ISR will
clear the flag that has initiated the interupt when it
returns from the ISR. The function call is initiated by the
program.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / bhavin
ISR runs in Interpret context ; where as function routine runs in thread context of Caller .
so during an interrupt total context switch happens and after returning from interrupt scheduler is invoked .
A function call is essentially just a jump instruction apart from PC and CPU reg saving no other context change hapnes ( T.ID, Process ID , address space etc) .
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / manohar
ISR has priority associate whereas function call doesn't
because of this stack structure of them are different.
If we look assembly code : function call has RET and ISR have
IRET.
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / ravi a joshi
There is no comparison between function call and an ISR.
Both are used in a completely different paradigm. Hence
comparison doesn't exist.
| Is This Answer Correct ? | 5 Yes | 9 No |
Answer / sunitakn
In case of a function call the arguments,local variables and
return address is stored in the stack where as in case of an
ISR, after executing the current instruction the context is
saved with no return value.
| Is This Answer Correct ? | 7 Yes | 13 No |
Explain sphl instruction?
Explain the difference between microcontroller and microprocessor?
What are the four distinct types of memory in 8051?
What is the logical difference between move a to b and compute b = a?
What are the different flags included in the alu?
Give here your suggestion about microprocessor 8085 and 8086. These 2 processors used in old time. I want to know its program execution time, memory space?
What is an editor?
Describe the jae instruction with the help of an example?
What are the different functional units in 8086?
State the two type of 16 bit registers and define them?
Define bit?
What type of interrupt is the “trap” and what does it do?