Skip to main content

2006 | OriginalPaper | Buchkapitel

TOSKANA: A Toolkit for Operating System Kernel Aspects

verfasst von : Michael Engel, Bernd Freisleben

Erschienen in: Transactions on Aspect-Oriented Software Development II

Verlag: Springer Berlin Heidelberg

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

The development process for operating system kernels in Unix-like systems is becoming increasingly complex. The simple, easily understandable kernels of the 1970s have evolved into giant software systems consisting of hundreds of modules implemented in millions of lines of code, resulting in greatly increased resource and time overhead for bug fixes as well as functional improvements. Many code modifications and additions in kernel code are crosscutting, since they exhibit

cross-module

or

cross-layer

functionality, thus an aspect-oriented programming (AOP) approach is well suited for solving these problems. Operating system code implicitly involves dynamic behavior due to various threads in kernel mode that run in different process or hardware contexts. Methods to solve the crosscutting problems have to be able to adapt dynamically to this changing environment; as a result, dynamic AOP inside the kernel is required to implement required functionality.

This paper analyzes the feasibility of using dynamic AOP in kernel code. Using the TOSKANA system, it is shown that implementing dynamic AOP features is not only possible in operating system kernels, but also realizable with a justifiable overhead. First, the cross-module and cross-layer properties inherent in kernel code are presented, with special consideration of crosscutting concerns in procedural C kernel code. Then, TOSKANA—our toolkit for deploying dynamic aspects into an operating system kernel—is introduced. TOSKANA provides

before

,

after

and

around

advice for in-kernel functions and supports the specification of pointcuts as well as the implementation of aspects themselves as dynamically exchangeable kernel modules. The use of TOSKANA is demonstrated by several examples of cross-module as well as cross-layer problems and their solutions using dynamic AOP functionality inside the kernel. Performance results are presented to characterize the aspect deployment overhead incurred by using TOSKANA.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Metadaten
Titel
TOSKANA: A Toolkit for Operating System Kernel Aspects
verfasst von
Michael Engel
Bernd Freisleben
Copyright-Jahr
2006
Verlag
Springer Berlin Heidelberg
DOI
https://doi.org/10.1007/11922827_7