Hi, >-----Original Message----- >From: rahul N. [mailto:rahul8143@xxxxxxxxx] >Sent: Saturday, September 24, 2005 2:59 PM >To: kernelnewbies@xxxxxxxxxxxx >Subject: interrupts top and bottom half > >Hello, > I am learning linux internals where i got problem in understanding >top level interrupts and bottom level interrupts. Whenever a interrupt is received, kernel needs to service that interrupt. The servicing includes acknowledging the interrupt and then doing some other less important non-time critical work in response. Sometimes this other work may also be time critical, for e.g. copying packetet from network card to kernel buffers. This servicing of interrupt is performed by kernel in two parts First is called top halves (or interrupt handler) which does the work of acknowledging the interrupt and doing any associated time critical work. This part is expected to complete quickly so the resumption of interrupted code (that was executing at the time of interrupt) can be started as early as possible. The rest of work which is not that time critical, is scheduled at a later time and constitutes the bottom half (bottom level interrupt handling). >can anybody write for me whats the differece between them and when software >and hardware interrupts are invoked? Software interrupts are programmed for e.g. using "int3" instructions. System calls are example of software interrupt. Hardware interrupts comes from actual devices like those from I/O, n/w devices. h/w interrupts can be masked if required (not for all cases though). Sanjay >regards, >rahul. > -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/