Changes between Version 31 and Version 32 of kernel_interrupts


Ignore:
Timestamp:
Dec 15, 2016, 3:26:43 PM (8 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • kernel_interrupts

    v31 v32  
    1212There is three interrupt vectors per processor (stored in each processor's scheduler) for the three  interrupts types: '''HWI''' (Hardware Interrupt), '''PTI''' (Programmable Timer Interrupt), and '''WTI''' (Write Triggered Interrupt). The WTI are actually hardware mailboxes, that are used by the GIET-VM to implement two mechanisms:
    1313 * they are used to implement software IPIs (Inter Processor Interrupt).
    14  * they are used to dynamically route the external IRQs (generated by the external peripheral) to a given processor.
     14 * they are used to dynamically route the external IRQs (generated by the external peripherals) to a given processor.
    1515
    1616Each interrupt vector entry contains two fields:
     
    3131 4. In each cluster, one private '''WTI''' mailbox (called WAKE_UP), is statically allocated to each processor. It is used in two situations: When the interrupted processor is in "wait state" (low-power mode), the processor exit the "wait state", but the ISR is not executed. When the processor is not in "wait state" the ISR is executed. If the interrupted processor is runing the idle_task, or if the value written in the WTI mailbox is non zero, the ISR force a context switch on the target processor.
    3232
    33  5. In each cluster, the other '''WTI''' mailboxes (XCU_NB_WTI - NB_PROCS_MAX) are dynamically allocated to a given external IRQ. This allocation can be for a long time (Network Controller RX or TX IRQs), or just for a single - user required - I/O operation (Disk Controller IRQ, or TTY channel IRQ). In each cluster, a specific lock protect exclusive access to the local WTI mailboxes allocator. This dynamic routing of external IRQs relies on the MASK registers in the XCUs and IOPIC components.
     33 5. In each cluster, the other '''WTI''' mailboxes (XCU_NB_WTI - NB_PROCS_MAX) are dynamically allocated to external IRQs. This allocation can be for a long time (Network Controller RX or TX IRQs), or just for a single I/O operation (Disk Controller IRQ, or TTY channel IRQ). In each cluster, a specific lock protect exclusive access to the local WTI allocator. The dynamic routing of external IRQs relies on the MASK registers in the XCUs and IOPIC components.
    3434
    3535 == __Global variables used for external IRQs routing__ ==