• 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
      • Eingebettete Systemsoftware
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2024/25
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Systemprogrammierung 2
      • Verlässliche Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte 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
                • 🔗 Adora-Belle (Helpdesk)
                • Kontakt
              • Evaluation

              Dokumentation

              Files | Macros
              Debugging Tools

              Support debugging of the operating system. More...

              Files

              file  state.h
               GDB_Stub State of the current core
               
              file  stub.h
               GDB_Stub contains the necessary functionality for remote debugging
               

              Macros

              #define STRINGIFY(S)   #S
               Converts a macro parameter into a string. More...
               
              #define assert_size(TYPE, SIZE)   static_assert(sizeof(TYPE) == (SIZE), "Wrong size for " STRINGIFY(TYPE))
               Statically ensure (at compile time) that a data type (or variable) has the expected size. More...
               
              #define assert(EXP)
               Ensure (at execution time) an expression evaluates to true, print an error message and stop the CPU otherwise. More...
               
              #define kernelpanic(MSG)
               Print an error message in the debug window and stop the current core. More...
               

              Detailed Description

              Support debugging of the operating system.

              Macro Definition Documentation

              #define STRINGIFY (   S)    #S

              Converts a macro parameter into a string.

              Parameters
              SExpression to be converted
              Returns
              stringified version of S
              #define assert_size (   TYPE,
                SIZE 
              )    static_assert(sizeof(TYPE) == (SIZE), "Wrong size for " STRINGIFY(TYPE))

              Statically ensure (at compile time) that a data type (or variable) has the expected size.

              Parameters
              TYPEThe type to be checked
              SIZEExpected size in bytes
              #define assert (   EXP)
              Value:
              do { \
              if (__builtin_expect(!(EXP), 0)) { \
              assertion_failed(STRINGIFY(EXP), __func__, __FILE__, __LINE__); \
              } \
              } while (false)

              Ensure (at execution time) an expression evaluates to true, print an error message and stop the CPU otherwise.

              Parameters
              EXPThe expression to be checked
              #define kernelpanic (   MSG)
              Value:
              do { \
              DBG << "PANIC: '" << (MSG) << "' in " << __func__ \
              << " @ " << __FILE__ << ":" << __LINE__ \
              << flush; \
              Core::die(); \
              } while (0)

              Print an error message in the debug window and stop the current core.

              Parameters
              MSGerror message
              STRINGIFY
              #define STRINGIFY(S)
              Converts a macro parameter into a string.
              Definition: assert.h:18
              Core::die
              void die()
              Permanently halts the core.
              Definition: core.h:107
              flush
              OutputStream & flush(OutputStream &os)
              Enforces a buffer flush.
              Definition: outputstream.cc:144
              Friedrich-Alexander-Universität
              Erlangen-Nürnberg

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