A Quantitative Analysis of Aspects in the eCos Kernel

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Authors

  • Daniel Lohmann
  • Fabian Scheler
  • Reinhard Tartler
  • Olaf Spinczyk
  • Wolfgang Schröder-Preikschat

External Research Organisations

  • Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU Erlangen-Nürnberg)
View graph of relations

Details

Original languageEnglish
Title of host publicationEuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Pages191-204
Number of pages14
Publication statusPublished - Apr 2006
Externally publishedYes
Event2006 EuroSys Conference - Leuven, Belgium
Duration: 18 Apr 200621 Apr 2006

Abstract

Nearly ten years after its first presentation and five years after its first application to operating systems, the suitability of Aspect-Oriented Programming (AOP) for the development of operating system kernels is still highly in dispute. While the AOP advocacy emphasizes the benefits of AOP towards better configurability and maintainability of system software, most kernel developers express a sound skepticism regarding the thereby induced runtime and memory costs: Operating system kernels have to be lean and efficient.We have analyzed the runtime and memory costs of aspects in general, on the level of μ-benchmarks, and by refactoring and extending the eCos operating system kernel using AspectC++, an AOP extension to the C++ language. Our results show that most AOP features do not induce a intrinsic overhead and that the actual overhead induced by AspectC++ is very low. We have also analyzed a test case with significant aspect-related costs. This example shows how the structure of the underlying kernel can have a negative impact on aspect implementations and how these costs can be avoided by an aspect-aware design.Based on this analysis, our conclusion is that AOP is suitable for the development of operating system kernels and other kinds of highly efficient infrastructure software.

Keywords

    Aspect-Oriented Programming (AOP), AspectC++, ECos, Footprint

ASJC Scopus subject areas

Cite this

A Quantitative Analysis of Aspects in the eCos Kernel. / Lohmann, Daniel; Scheler, Fabian; Tartler, Reinhard et al.
EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006. 2006. p. 191-204 1217954.

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Lohmann, D, Scheler, F, Tartler, R, Spinczyk, O & Schröder-Preikschat, W 2006, A Quantitative Analysis of Aspects in the eCos Kernel. in EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006., 1217954, pp. 191-204, 2006 EuroSys Conference, Leuven, Belgium, 18 Apr 2006. https://doi.org/10.1145/1217935.1217954
Lohmann, D., Scheler, F., Tartler, R., Spinczyk, O., & Schröder-Preikschat, W. (2006). A Quantitative Analysis of Aspects in the eCos Kernel. In EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006 (pp. 191-204). Article 1217954 https://doi.org/10.1145/1217935.1217954
Lohmann D, Scheler F, Tartler R, Spinczyk O, Schröder-Preikschat W. A Quantitative Analysis of Aspects in the eCos Kernel. In EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006. 2006. p. 191-204. 1217954 doi: 10.1145/1217935.1217954
Lohmann, Daniel ; Scheler, Fabian ; Tartler, Reinhard et al. / A Quantitative Analysis of Aspects in the eCos Kernel. EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006. 2006. pp. 191-204
Download
@inproceedings{233038852d744e15ac7382de46f2a61f,
title = "A Quantitative Analysis of Aspects in the eCos Kernel",
abstract = "Nearly ten years after its first presentation and five years after its first application to operating systems, the suitability of Aspect-Oriented Programming (AOP) for the development of operating system kernels is still highly in dispute. While the AOP advocacy emphasizes the benefits of AOP towards better configurability and maintainability of system software, most kernel developers express a sound skepticism regarding the thereby induced runtime and memory costs: Operating system kernels have to be lean and efficient.We have analyzed the runtime and memory costs of aspects in general, on the level of μ-benchmarks, and by refactoring and extending the eCos operating system kernel using AspectC++, an AOP extension to the C++ language. Our results show that most AOP features do not induce a intrinsic overhead and that the actual overhead induced by AspectC++ is very low. We have also analyzed a test case with significant aspect-related costs. This example shows how the structure of the underlying kernel can have a negative impact on aspect implementations and how these costs can be avoided by an aspect-aware design.Based on this analysis, our conclusion is that AOP is suitable for the development of operating system kernels and other kinds of highly efficient infrastructure software.",
keywords = "Aspect-Oriented Programming (AOP), AspectC++, ECos, Footprint",
author = "Daniel Lohmann and Fabian Scheler and Reinhard Tartler and Olaf Spinczyk and Wolfgang Schr{\"o}der-Preikschat",
year = "2006",
month = apr,
doi = "10.1145/1217935.1217954",
language = "English",
isbn = "1595933220",
pages = "191--204",
booktitle = "EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006",
note = "2006 EuroSys Conference ; Conference date: 18-04-2006 Through 21-04-2006",

}

Download

TY - GEN

T1 - A Quantitative Analysis of Aspects in the eCos Kernel

AU - Lohmann, Daniel

AU - Scheler, Fabian

AU - Tartler, Reinhard

AU - Spinczyk, Olaf

AU - Schröder-Preikschat, Wolfgang

PY - 2006/4

Y1 - 2006/4

N2 - Nearly ten years after its first presentation and five years after its first application to operating systems, the suitability of Aspect-Oriented Programming (AOP) for the development of operating system kernels is still highly in dispute. While the AOP advocacy emphasizes the benefits of AOP towards better configurability and maintainability of system software, most kernel developers express a sound skepticism regarding the thereby induced runtime and memory costs: Operating system kernels have to be lean and efficient.We have analyzed the runtime and memory costs of aspects in general, on the level of μ-benchmarks, and by refactoring and extending the eCos operating system kernel using AspectC++, an AOP extension to the C++ language. Our results show that most AOP features do not induce a intrinsic overhead and that the actual overhead induced by AspectC++ is very low. We have also analyzed a test case with significant aspect-related costs. This example shows how the structure of the underlying kernel can have a negative impact on aspect implementations and how these costs can be avoided by an aspect-aware design.Based on this analysis, our conclusion is that AOP is suitable for the development of operating system kernels and other kinds of highly efficient infrastructure software.

AB - Nearly ten years after its first presentation and five years after its first application to operating systems, the suitability of Aspect-Oriented Programming (AOP) for the development of operating system kernels is still highly in dispute. While the AOP advocacy emphasizes the benefits of AOP towards better configurability and maintainability of system software, most kernel developers express a sound skepticism regarding the thereby induced runtime and memory costs: Operating system kernels have to be lean and efficient.We have analyzed the runtime and memory costs of aspects in general, on the level of μ-benchmarks, and by refactoring and extending the eCos operating system kernel using AspectC++, an AOP extension to the C++ language. Our results show that most AOP features do not induce a intrinsic overhead and that the actual overhead induced by AspectC++ is very low. We have also analyzed a test case with significant aspect-related costs. This example shows how the structure of the underlying kernel can have a negative impact on aspect implementations and how these costs can be avoided by an aspect-aware design.Based on this analysis, our conclusion is that AOP is suitable for the development of operating system kernels and other kinds of highly efficient infrastructure software.

KW - Aspect-Oriented Programming (AOP)

KW - AspectC++

KW - ECos

KW - Footprint

UR - http://www.scopus.com/inward/record.url?scp=34548261702&partnerID=8YFLogxK

U2 - 10.1145/1217935.1217954

DO - 10.1145/1217935.1217954

M3 - Conference contribution

AN - SCOPUS:34548261702

SN - 1595933220

SN - 9781595933225

SP - 191

EP - 204

BT - EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006

T2 - 2006 EuroSys Conference

Y2 - 18 April 2006 through 21 April 2006

ER -