Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1960275.1960285acmconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
research-article

Aspect-aware operating system development

Published: 21 March 2011 Publication History

Abstract

The domain of operating systems has often been mentioned as an "ideal candidate" for the application of AOP; fundamental policies we find in these systems, such as synchronization or preemption, seem to be inherently cross-cutting in their implementation. Their clear separation into dedicated aspect modules should facilitate better evolvability and - the focus of this paper - configurability. Our experience with applying AOP to the domain of highly configurable embedded operating systems has shown, however, that these advantages can by no means be taken for granted. To reveal maximum configurability of central system policies, aspects and their potential interactions with the system have to be taken into account much earlier, that is, "from the very beginning". We propose the analysis and design process of aspect-aware development, which leads to such an "aspect-friendly" system structure and demonstrate its feasibility on the example of CiAO, an AUTOSAR-OS-compliant operating system that provides configurability of all fundamental system policies by means of AOP.

References

[1]
Åberg, R. A., Lawall, J. L., Südholt, M., Muller, G., and Meur, A.-F. L. On the automatic evolution of an OS kernel using temporal logic and AOP. In ASE '03 (Mar. 2003), IEEE, pp. 196--204.
[2]
Allan, C., Avgustinov, P., Christensen, A. S., Hendren, L., Kuzins, S., Lhoták, O., de Moor, O., Sereni, D., Sittampalam, G., and Tibble, J. Adding trace matching with free variables to AspectJ. In OOPSLA '05 (Oct. 2005), ACM, pp. 345--364.
[3]
AUTOSAR. Requirements on operating system (version 2.0.1). Tech. rep., Automotive Open System Architecture GbR, June 2006.
[4]
AUTOSAR. Specification of operating system (version 2.0.1). Tech. rep., Automotive Open System Architecture GbR, June 2006.
[5]
Beuche, D., Fröhlich, A. A., Meyer, R., Papajewski, H., Schön, F., Schröder-Preikschat, W., Spinczyk, O., and Spinczyk, U. On architecture transparency in operating systems. In 9th SIGOPS European Workshop (Sept. 2000), ACM, pp. 147--152.
[6]
Beuche, D., Guerrouat, A., Papajewski, H., Schröder-Preikschat, W., Spinczyk, O., and Spinczyk, U. The PURE family of object-oriented operating systems for deeply embedded systems. In ISORC '99 (May 1999), pp. 45--53.
[7]
Cai, Y., and Sullivan, K. J. Modularity analysis of logical design models. In ASE '06 (2006), IEEE, pp. 91--102.
[8]
Coady, Y., and Kiczales, G. Back to the future: A retroactive study of aspect evolution in operating system code. In AOSD '03 (Mar. 2003), ACM, pp. 50--59.
[9]
eCos homepage. http://ecos.sourceware.org/.
[10]
Engel, M., and Freisleben, B. TOSKANA: a toolkit for operating system kernel aspects. In TAOSD II (2006), no. 4242 in LNCS, Springer, pp. 182--226.
[11]
Filman, R. E., and Friedman, D. P. Aspect-oriented programming is quantification and obliviousness. In OOPSLA '00 Workshop on Advanced SoC (Oct. 2000).
[12]
Fiuczynski, M., Grimm, R., Coady, Y., and Walker, D. patch(1) considered harmful. In HotOS '05 (2005), USENIX.
[13]
Habermann, A. N., Flon, L., and Cooprider, L. W. Modularization and hierarchy in a family of operating systems. CACM 19, 5 (1976), 266--272.
[14]
Kästner, C., Apel, S., and Batory, D. A case study implementing features using AspectJ. In SPLC '07 (2007), IEEE, pp. 223--232.
[15]
Kästner, C., Apel, S., ur Rahman, S. S., Rosenmüller, M., Batory, D., and Saake, G. On the impact of the optional feature problem: Analysis and case studies. In SPLC '09 (2009), IEEE.
[16]
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C. V., Loingtier, J.-M., and Irwin, J. Aspect-oriented programming. In ECOOP '97 (June 1997), vol. 1241 of LNCS, Springer, pp. 220--242.
[17]
Kleiman, S., and Eykholt, J. Interrupts as threads. ACM OSR 29, 2 (Apr. 1995), 21--26.
[18]
Kniesel, G., and Rho, T. A definition, overview and taxonomy of generic aspect languages. L'Objet, Special Issue on Aspect-Oriented Software Development 11, 2--3 (Sept. 2006), 9--39.
[19]
Lohmann, D., Blaschke, G., and Spinczyk, O. Generic advice: On the combination of AOP with generative programming in AspectC++. In GPCE '04 (Oct. 2004), vol. 3286 of LNCS, Springer, pp. 55--74.
[20]
Lohmann, D., Hofer, W., Schröder-Preikschat, W., Streicher, J., and Spinczyk, O. CiAO: An aspect-oriented operating-system family for resource-constrained embedded systems. In USENIX '09 (June 2009), USENIX, pp. 215--228.
[21]
Lohmann, D., Scheler, F., Tartler, R., Spinczyk, O., and Schröder-Preikschat, W. A quantitative analysis of aspects in the eCos kernel. In EuroSys '06 (Apr. 2006), ACM, pp. 191--204.
[22]
Massa, A. Embedded Software Development with eCos. New Riders, 2002.
[23]
Parnas, D. L. Some hypothesis about the "uses" hierarchy for operating systems. Tech. rep., TH Darmstadt, Fachbereich Informatik, 1976.
[24]
Reynolds, A., Fiuczynski, M. E., and Grimm, R. On the feasibility of an AOSD approach to Linux kernel extensions. In AOSD-ACP4IS '08 (Mar. 2008), ACM, pp. 1--7.
[25]
Spinczyk, O., and Lohmann, D. Using AOP to develop architecture-neutral operating system components. In 11th SIGOPS European Workshop (Sept. 2004), ACM, pp. 188--192.
[26]
Spinczyk, O., and Lohmann, D. The design and implementation of AspectC++. Knowledge-Based Systems 20, 7 (2007), 636--651.
[27]
Steimann, F. Domain models are aspect free. In MoDELS '05 (2005), vol. 3713 of LNCS, Springer, pp. 171--185.
[28]
Urban, M., Lohmann, D., and Spinczyk, O. PUMA: An aspect-oriented code analysis and manipulation framework for C and C++. In TAOSD VIII (2011), no. 6580 in LNCS, Springer. To appear.
[29]
Yanagisawa, Y., Kourai, K., Chiba, S., and Ishikawa, R. A dynamic aspect-oriented system for OS kernels. In GPCE '06 (Oct. 2006), ACM, pp. 69--78.

Cited By

View all
  • (2019)Runtime Reusable Weaving Model for Cloud Services Using Aspect-Oriented ProgrammingCloud Security10.4018/978-1-5225-8176-5.ch029(574-591)Online publication date: 2019
  • (2018)Runtime Reusable Weaving Model for Cloud Services Using Aspect-Oriented ProgrammingInternational Journal of Web Services Research10.4018/IJWSR.201801010415:1(71-88)Online publication date: 1-Jan-2018
  • (2018)A distributed multicore real-time operating system family based on aspect-oriented programming2018 IEEE International Conference on Industrial Technology (ICIT)10.1109/ICIT.2018.8352383(1389-1394)Online publication date: Feb-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
AOSD '11: Proceedings of the tenth international conference on Aspect-oriented software development
March 2011
326 pages
ISBN:9781450306058
DOI:10.1145/1960275
  • General Chair:
  • Paulo Borba,
  • Program Chair:
  • Shigeru Chiba
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

  • Centro de Informatica - UFPE: Centro de Informatica - UFPE
  • CAPES: Coordençãao de Aperfeiçoamento de Pessoal de Nível Superior
  • CNPq: Conselho Nacional de Desenvolvimento Cientifico e Tecn
  • FINEP: Financiadora de Estudos e Projetos
  • PUC-Rio
  • FACEPE: Fundacao de Amparo a Ciencia e Tecnologia do Estado de Pernambuco

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 March 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. aspect-aware design
  2. aspect-oriented programming (aop)
  3. aspectc++
  4. ciao

Qualifiers

  • Research-article

Conference

AOSD'11

Acceptance Rates

Overall Acceptance Rate 41 of 139 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 19 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Runtime Reusable Weaving Model for Cloud Services Using Aspect-Oriented ProgrammingCloud Security10.4018/978-1-5225-8176-5.ch029(574-591)Online publication date: 2019
  • (2018)Runtime Reusable Weaving Model for Cloud Services Using Aspect-Oriented ProgrammingInternational Journal of Web Services Research10.4018/IJWSR.201801010415:1(71-88)Online publication date: 1-Jan-2018
  • (2018)A distributed multicore real-time operating system family based on aspect-oriented programming2018 IEEE International Conference on Industrial Technology (ICIT)10.1109/ICIT.2018.8352383(1389-1394)Online publication date: Feb-2018
  • (2015)Aspect-Oriented Customization of the Scheduling Algorithms and the Resource Access Protocols of a Real-Time Operating System Family2015 IEEE International Conference on Smart City/SocialCom/SustainCom (SmartCity)10.1109/SmartCity.2015.52(87-94)Online publication date: Dec-2015
  • (2014)A distributed real-time operating system built with aspect-oriented programming for distributed embedded control systems2014 20th IEEE International Conference on Parallel and Distributed Systems (ICPADS)10.1109/PADSW.2014.7097839(436-443)Online publication date: Dec-2014
  • (2013)Exploiting Template Metaprogramming to customize an object-oriented operating system2013 IEEE International Symposium on Industrial Electronics10.1109/ISIE.2013.6563724(1-6)Online publication date: May-2013
  • (2013)Aspect-Oriented Customization of the Scheduling Algorithm and the Resource Access Protocol of a Real-Time Operating SystemProceedings of the 2013 IEEE 16th International Conference on Computational Science and Engineering10.1109/CSE.2013.98(627-634)Online publication date: 3-Dec-2013
  • (2012)The aspect-aware design and implementation of the CiAO operating-system familyTransactions on Aspect-Oriented Software Development IX10.5555/2434958.2434965(168-215)Online publication date: 1-Jan-2012
  • (2012)A generative-oriented model-driven design environment for customizable video surveillance systemsEURASIP Journal on Embedded Systems10.1186/1687-3963-2012-72012:1Online publication date: 31-Jul-2012
  • (2012)CiAO/IPProceedings of the 10th international conference on Mobile systems, applications, and services10.1145/2307636.2307676(435-448)Online publication date: 25-Jun-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media