I believe the book was referring to "softirqs", rather than "software
interrupts". The latter, also called "Programmed Exceptions", are indeed
triggered by an int instruction. The former, however, are a
Linux-specific mechanism to handle interrupt bottom-halves, i.e., tasks
that should be performed in response to a hardware interrupts, but can
be deferred to a later time and thus reduce the time required by the
interrupt handle itself. Tasklet are similar to softirqs, but need not
be reentrant. spin_lock_bh indeed disables all bottom-half handling,
including softirqs and tasklets.
You may refer to Chapter 4 in "Understanding the Linux Kernel", 3rd
edition, for more information.
Elad
Thippeswamy, Aravind 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
mentions that this only disables the "Software Interrupts"( LDD 3,page
number 119). In the immediately next paragraph, these "Software
Interrupts" are linked to "tasklets". I am not able to fully understand
this point. It would be really nice if some one elaborated on this.
Regards,,
*Aravind.*
* *
"//Dovie'andi se tovya sagain"//**
// -Mat Cauthon (WoT).//
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ