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 |
How to control and timing circuitry of the 8085.
Which segment is used to store interrupt and subroutine return address registers?
Write the flags of 8086?
What is meant by cross-compiler?
what is a Watchdog Timer?
Define the types of memory used in 8085 microprocessor?
Which interrupt is not level-sensitive in 8085?
Differentiate between hardware and software interrupts and state examples for both?
What is stack pointer in 8051 microcontroller?
What is the bus arbitration problem in the 8086 and how can it be resolved?
How are time delays calculated in the 8085?
Which interrupts are generally used for critical events?