I would like to know more about Top half and Bottom Half processing in the Context on Interrupts. Could someone explain me the exact things happening in both scenarios.
Chapter 6 of "Linux Kernel Development" by Robert Love explains it, as do these free web resources:
Basically, the top half's job is to run, store any state needed, arrange for the bottom half to be called, then return as quickly as possible. The bottom half does most of the work.