Glosario

bh

Bottom Half: por motivos históricos, las funciones con `_bh' en ellas frecuentemente ahora se refieren a cualquier interrupción software, ej. spin_lock_bh() bloquea cualquier interrupción software en la CPU actual. Los Bottom Halves están desaprobados, y serán eventualmente reemplazados por las tasklets. Sólo un bottom half se estará ejecutando a la vez.

Interrupción Hardware / IRQ Hardware

Petición de interrupción Hardware. in_irq() retorna true en un manejador de interrupciones hardware (también retorna true cuando las interrupciones son bloqueadas).

Contexto de Interrupciones

No el contexto de usuario: procesando una irq hardware o software. Indicado por la macro in_interrupt() retornando true (aunque también retorna true cuando las interrupciones o los BHs son bloqueados).

SMP

Symmetric Multi-Processor (Multi-Procesamiento Simétrico): núcleos compilados para máquinas con múltiples CPUs. (CONFIG_SMP=y).

softirq

Estrictamente hablando, una de las 32 interuupciones software enumeradas que pueden ejecutarse en múltiples CPUs a la vez. Algunas veces usadas también para referirse a las tasklets y bottom halves (esto es, todas las interrupciones software).

Interrupción Software / IRQ Software

Manejador de interrupciones software. in_irq() retorna false; in_softirq() retorna true. Tasklets, softirqs y bottom halves caen todos en la categoría de `interrupciones software'.

tasklet

Una interrupción software dinámicamente registrable, que está garantizada que sólo se ejecutará en una CPU a la vez.

UP

Uni-Processor (Mono-Procesador): No-SMP. (CONFIG_SMP=n).

Contexto de Usuario

El núcleo ejecutándose en nombre de un proceso particular o hilo del núcleo (dado por la macro current()). No te confundas con el espacio de usuario. Puede ser interrumpido por las interrupciones software o hardware.

Espacio de Usuario

Un proceso ejecutando su propio código fuera del núcleo.