Thanks. That explained a lot. Regards,, Aravind. "Dovie'andi se tovya sagain" -Mat Cauthon (WoT). -----Original Message----- From: Peter Teoh [mailto:htmldeveloper@xxxxxxxxx] Sent: Friday, October 26, 2007 6:54 AM To: Thippeswamy, Aravind Cc: kernelnewbies@xxxxxxxxxxxx Subject: Re: What is a "Software Interrupt"? On 10/25/07, Thippeswamy, Aravind <AravindT@xxxxxxx> wrote: > > > Hi, > What is a "Software Interrupt"? I was going thru the LDD 3 and > stumbled upon this. There is an > instance while explaining spin_lock_bh() function that the author Have not got a chance to read what u are referring to. But conceptually (please verify it as well) the kernel provides 2 mechanism for handling asynchronous processing - one via hardware and another via software (hardirq vs softirq). Hardware, means external interrupts coming in, and the IDT table will then take over and call the corresponding interrupts. It can be disable/enabled via "sti/cli" assembly instruction. Software wise, especially for handling "signals", there is a perpetual loop "__do_softirq()" (done inside the daemon ksoftirqd) that will constantly check for incoming task on the waiting list, and processing it - this processing is independent of the normal tasks scheduling for all the userspace processes. And this processing is not initiated by hardware, and therefore "cli/sti" cannot affect it. -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ