Re: What is a "Software Interrupt"?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux