Download presentation
Presentation is loading. Please wait.
Published byJoanna McKinney Modified over 8 years ago
1
Daniel Lohmann Department of Computer Science IV Distributed Systems and Operating Systems Friedrich-Alexander University Erlangen-Nuremberg http://www4.cs.fau.de/~lohmann daniel.lohmann@cs.fau.de Architecture-Neutral Operating System Components
2
2 daniel.lohmann@cs.fau.de The Tyranny of OS Architectures Architecture defines fundamental properties and policies Module structure and interaction schemes Scheduling and locking strategies Interrupt handling and synchronization Supported hardware platforms … Architecture is considered as something static Decisions are made at early stages of OS development Extremely costly to adapt later
3
3 daniel.lohmann@cs.fau.de But why... shouldn’t it be possible to configure architectural properties? Optimize a server OS for a dedicated services demands Taylor down an embedded systems OS Cope better with architectural evolution
4
4 daniel.lohmann@cs.fau.de Interaction The Problem Architectural properties are inherent crosscutting Synchronization
5
5 daniel.lohmann@cs.fau.de Aspect-Oriented Programming AOP has proven to be successful in dealing with crosscutting concerns With AspectC++ it is now possible to use AOP for system software development Synchronization Interaction Module BModule C Module A OS Modules Code Aspect Code «uses» Aspect Weaver http://www.aspectc.org «uses» Module BModule C Module A Generated OS Code «uses»
6
6 daniel.lohmann@cs.fau.de The CiAO Project (CiAO is Aspect Oriented) Aspect-oriented family of operating systems Methods: Feature modeling, static configuration, AOP Encapsulation of policies and architectural properties Target: Embedded Systems From deeply-embedded devices up to embedded UNIX-like systems High level of adaptability and configurability Architectural Transparency
7
7 daniel.lohmann@cs.fau.de The CiAO Vision: Architectural Transparency Operating System Construction Set Module BModule C «uses» Module A Synchronisation Interaction Abstract Component CodeSets of Aspects
8
8 daniel.lohmann@cs.fau.de The CiAO Vision: Architectural Transparency Configuration 1: Procedure-based, multithreaded Module BModule CModule A Call address space Synchronisation Interaction Generated Component Code Used Aspects Semaphore Procedure call
9
9 daniel.lohmann@cs.fau.de The CiAO Vision: Architectural Transparency Configuration 2: Message-based, one thread per module Message address space Module BModule CModule A Synchronisation Interaction Used Aspects «none» Message (local) Generated Component Code
10
10 daniel.lohmann@cs.fau.de The CiAO Vision: Architectural Transparency Configuration 3: Message-based, one process per module Message Module BModule CModule A Synchronisation Interaction Used Aspects «none» Message (IPC) Generated Component Code
11
11 daniel.lohmann@cs.fau.de Conclusion Architectural properties are inherent crosscutting Aspect-Oriented Software Development can help AspectC++ brings AOP to the C/C++ world Encapsulation without sacrificing efficiency Real chance to reach architectural transparency http://www.aspectc.org
12
Daniel Lohmann Department of Computer Science IV Distributed Systems and Operating Systems Friedrich-Alexander University Erlangen-Nuremberg http://www4.cs.fau.de/~lohmann daniel.lohmann@cs.fau.de Thanks for your attention!
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.