Customization of a Real-Time Operating System Scheduler with Aspect-Oriented Programming
Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 32797
Customization of a Real-Time Operating System Scheduler with Aspect-Oriented Programming

Authors: Kazuki Abe, Myungryun Yoo, Takanori Yokoyama

Abstract:

Tasks of an application program of an embedded system are managed by the scheduler of a real-time operating system (RTOS). Most RTOSs adopt just fixed priority scheduling, which is not optimal in all cases. Some applications require earliest deadline first (EDF) scheduling, which is an optimal scheduling algorithm. In order to develop an efficient real-time embedded system, the scheduling algorithm of the RTOS should be selectable. The paper presents a method to customize the scheduler using aspectoriented programming. We define aspects to replace the fixed priority scheduling mechanism of an OSEK OS with an EDF scheduling mechanism. By using the aspects, we can customize the scheduler without modifying the original source code. We have applied the aspects to an OSEK OS and get a customized operating system with EDF scheduling. The evaluation results show that the overhead of aspect-oriented programming is small enough.

Keywords: aspect-oriented programming, embedded system, operating system, real-time system

Digital Object Identifier (DOI): doi.org/10.5281/zenodo.1071460

Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1773

References:


[1] OSEK/VDX, Operating System, Version 2.2.3, 2005.
[2] Liu, C. L. and Layland, J. W., Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment, Journal of the ACM, Vol.20, No.1, pp.46-61, 1973.
[3] Dertouzos, M. L., Control Robotics: The Procedural Control of Physical Processes, Proceedings of IFIP Congress 1974, pp.807-813, 1974.
[4] Bimbard, F. and George, L., EDF Feasibility Conditions with Kernel Overheads on an Event Driven OSEK System, Proceedings of third International Conference on Systems, pp.277-284
[5] Diederichs, C., Margull, U., Slomka, F. and Wirrer, G., An applicationbased EDF scheduler for OSEK/VDX, Proceedings of Design, Automation and Test in Europe 2008, pp.1045-1050, 2008.
[6] Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C. Loingtier, J. M. and Irwin, J., Aspect-Oriented Programming, Proceedings of the 11th European Conference on Object-Oriented Programming, pp. 220-242, 1997.
[7] Beuche, D., Fr¨ohlich, A. A., Reinhard, M., Papajewski, H., Sch¨on, F., Schr¨oder-Preikschat, W., Spinczyk, O. and Spinczyk, U., On Architecture Transparency in Operating Systems, Proceedings of the 9th Workshop on ACM SIGOPS European Workshop: Beyond the PC: New Challenges for the Operating system, pp. 147-152, 20 8] Coady, Y., Kiczales, G., Feeley, M. and Smolyn G., Using AspectC to Improve the Modularity of Path-Specific Customization in Operating System Code, Proceedings of the 8th European Software Engineering Conference, pp.88-98, 2001.
[9] Afonso, F., Silva, C., Montenegro, S. and Tavares, A., Applying Aspects to a Real-Time Embedded Operating System, Proceedings of the 6th Workshop on Aspects, Components, and Patterns for Infrastructure Software, Article No.1, 2007.
[10] Park, J. and Hong S., Building a Customizable Embedded Operating System with Fine-Grained Joinpoints Using the AOX Programming Environment. Proceedings of the 2009 ACM symposium on Applied Computing, pp.1952-1956, 2009.
[11] Lohmann, D., Hofer, W., Schr¨oder-Preikschat, W. and Spinczyk, O., Aspect-Aware Operating System Development, Proceedings of the 10th International Conference on Aspect-Oriented Software Development 2011, pp.69-80, 2011.
[12] Hatun, K., Bockisch, C., S┬¿ozer, H. and Aks┬©it, M., A Feature Model and Development Approach for Schedulers, Proceedings of the 1st Workshop on Modularity in Systems Software, pp.1-5, 2011
[13] TOPPERS Project, http://www.toppers.jp/en/
[14] Gong, M., Zhang, C. and Jacobsen, H.-A., Systems Development with AspeCt-oriented C (ACC), Connections 2007 (ECE Graduate Symposium, University of Toronto), Talk 5.6, 2007.
[15] AspeCt-oriented C, https://sites.google.com/a/gapp.msrg.utoronto.ca/aspectc/
[16] OSEK VDX, OSEK/VDX System Generation OIL: OSEK Implementation Language Version 2.5, 2004.
[17] Kiczales, G., Hilsdale, E., Hugonin, J, Kersten, M., Palm, J. and Griswold, W. G., An Overview of AspectJ, Proceedings of the 15th European Conference on Object-Oriented Programming, pp.327-353, 2001.
[18] Spinczyk, O., Gal, A., and Schr¨oder-Preikschat, W., Aspect C++: An Aspect-Oriented Extension to the C++ Programming Language, Proceedings of the 40th International Conference on Technology of Object-Oriented Languages and Systems, pp.53-59, 2002.