• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    • Sommersemester 2026
      • Applied Software Architecture
      • Betriebssystemsicherheit
      • Betriebssystemtechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verlässliche Echtzeitsysteme
      • Verteilte Systeme
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssystemtechnik
    • Vorlesung
      • Folien
      • Glossar
    • Übung
      • Aufgaben
      • Dokumentation
        • Blog
          • Entwicklungsumgebung
            • Assembler Crashkurs
              • C++ Crashkurs
                • 🔗 Testrechnerverwaltung
                • Kontakt
              • Evaluation

              Dokumentation

              • machine
              Classes | Namespaces | Enumerations | Functions
              lapic_ipi.cc File Reference
              #include "machine/lapic_registers.h"
              + Include dependency graph for lapic_ipi.cc:

              Classes

              struct  LAPIC::IPI::InterruptCommand.__unnamed62__
               I/O redirection-table entry. More...
               

              Namespaces

              namespace  LAPIC
               Abstracts the local APIC (which is integrated into every CPU core)
               
              namespace  LAPIC::IPI
               Inter-Processor Interrupts.
               

              Enumerations

              enum  LAPIC::IPI::DeliveryMode {
                LAPIC::IPI::FIXED = 0 ,
                LAPIC::IPI::LOWEST_PRIORITY = 1 ,
                LAPIC::IPI::SMI = 2 ,
                LAPIC::IPI::NMI = 4 ,
                LAPIC::IPI::INIT = 5 ,
                LAPIC::IPI::INIT_LEVEL_DEASSERT = 5 ,
                LAPIC::IPI::STARTUP = 6
              }
               Delivery mode specifies the type of interrupt sent to the CPU. More...
               
              enum  LAPIC::IPI::DestinationMode {
                LAPIC::IPI::PHYSICAL = 0 ,
                LAPIC::IPI::LOGICAL = 1
              }
               Way of interpreting the value written to the destination field. More...
               
              enum  LAPIC::IPI::DeliveryStatus {
                LAPIC::IPI::IDLE = 0 ,
                LAPIC::IPI::SEND_PENDING = 1
              }
               Interrupt state. More...
               
              enum  LAPIC::IPI::Level {
                LAPIC::IPI::DEASSERT = 0 ,
                LAPIC::IPI::ASSERT = 1
              }
               Interrupt level. More...
               
              enum  LAPIC::IPI::TriggerMode {
                LAPIC::IPI::EDGE_TRIGGERED = 0 ,
                LAPIC::IPI::LEVEL_TRIGGERED = 1
              }
               Trigger mode for DeliveryMode::INIT_LEVEL_DEASSERT. More...
               
              enum  LAPIC::IPI::DestinationShorthand {
                LAPIC::IPI::NO_SHORTHAND = 0 ,
                LAPIC::IPI::SELF = 1 ,
                LAPIC::IPI::ALL_INCLUDING_SELF = 2 ,
                LAPIC::IPI::ALL_EXCLUDING_SELF = 3
              }
               Shorthand for commonly used destinations. More...
               
              enum  LAPIC::IPI::InterruptMask {
                LAPIC::IPI::UNMASKED = 0 ,
                LAPIC::IPI::MASKED = 1
              }
               Interrupt mask. More...
               

              Functions

              bool LAPIC::IPI::isDelivered ()
               Check if the previously sent IPI has reached its destination.
               
              void LAPIC::IPI::send (uint8_t destination, uint8_t vector)
               Send an Inter-Processor Interrupt (IPI)
               
              void LAPIC::IPI::sendGroup (uint8_t logical_destination, uint8_t vector)
               Send an Inter-Processor Interrupt (IPI) to a group of processors.
               
              void LAPIC::IPI::sendAll (uint8_t vector)
               Send an Inter-Processor Interrupt (IPI) to all processors (including self)
               
              void LAPIC::IPI::sendOthers (uint8_t vector)
               Send an Inter-Processor Interrupt (IPI) to all other processors (all but self)
               
              void LAPIC::IPI::sendInit (bool assert=true)
               Send an INIT request IPI to all other processors.
               
              void LAPIC::IPI::sendStartup (uint8_t vector)
               Send an Startup IPI to all other processors.
               

              Class Documentation

              struct LAPIC::IPI::InterruptCommand.__unnamed62__

              I/O redirection-table entry.

              Every entry in the redirection table represents an external source of interrupts and has a size of 64 bits. Due to the I/O APIC registers being only 32 bits wide, the 64-bit value is split in two 32 bit values.

              Class Members
              Register value_low First, low-order register.
              Register value_high Second, high-order register.
              Friedrich-Alexander-Universität
              Erlangen-Nürnberg

              Schlossplatz 4
              91054 Erlangen
              • Impressum
              • Datenschutz
              • Barrierefreiheit
              • Facebook
              • RSS Feed
              • Xing
              Nach oben