An Effective Design of Master-Slave Operating System Architecture for Multiprocessor Embedded Systems

  • Minyeol Seo
  • Ha Seok Kim
  • Ji Chan Maeng
  • Jimin Kim
  • Minsoo Ryu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4697)


In this paper, we explore the problem of designing an effective master-slave operating system architecture for multiprocessors and describe current status of our prototype implementation, called APRIX (Asymmetric Parallel Real-tIme KernelS). This work has been largely motivated by the recent emergence of heterogeneous multiprocessors and the fact that the masterslave approach can be easily applied to heterogeneous multiprocessors while SMP (symmetric multiprocessing) approaches are restricted to homogeneous multiprocessors with UMA (Uniform Memory Access). The purpose of this paper is to identify and discuss design issues that have significant impact on the functionality and performance of the master-slave approach. Specifically, our study will investigate three major issues: structural design of a master-slave operating system based on our experience with a prototype development of APRIX, functional design of remote invocation mechanism that is required for executing kernel mode operations on a remote procesor, and performance improvement via application-specific kernel configuration. We finally describe our initial implementation of APRIX and preliminary experiment results.


Master-slave multiprocessor design issues remote invocation kernel configuration 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Kagstrom, S., Grahn, H., Lundberg, L.: Experiences from implementing multiprocessor support for an industrial operating system kernel. In: Proceeding of 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, pp. 365–368. IEEE Computer Society Press, Los Alamitos (2005)CrossRefGoogle Scholar
  2. 2.
    Lehey, G.: Improving the FreeBSD SMP Implementation. In: Proceedings of the FREENIX Track: 2001 USENIX Annual Technical Conference, pp. 155–164 (2001) Google Scholar
  3. 3.
    Love, R.: Linux Kernel Development, 2nd edn. Novell Press (2005) Google Scholar
  4. 4.
    Vahalia, U.: UNIX Internals: The New Frontiers. Prentice Hall, Upper Saddle River New Jersey (1996)zbMATHGoogle Scholar
  5. 5.
    Bach, M.J.: Design of the UNIX Operating System. Prentice Hall, Englewood Cliffs (1986)Google Scholar
  6. 6.
    Clark, R., O’Quin, J., Weaver, T.: Symmetric Multiprocessing for the AIX Operating System. In: Proceedings of the 40th IEEE Computer Society International Conference in Compcon, pp. 110–115. IEEE Computer Society Press, Los Alamitos (1996)Google Scholar
  7. 7.
    Janssens, M.D., Annot, J.K., Van De Goor, A.J.: Adapting UNIX for a Multiprocessor Environment. Communications of the ACM 29, 895–901 (1986)CrossRefGoogle Scholar
  8. 8.
    Russell, C.H., Waterman, P.J.: Variations on UNIX for Parallel-Processing Computers. Communications of the ACM 30, 1048–1055 (1987)CrossRefGoogle Scholar
  9. 9.
    Kleiman, S., Voll, J., Eykholt, J., Shivalingiah, A., Williams, D.: Symmetric Multiprocessing in Solaris 2.0. In: Proceedings of the Thirty-Seventh International Conference on COMPCON, pp. 181–186 (1992) Google Scholar
  10. 10.
    Goble, G.H., Marsh, M.H.: A Dual Processor VAX 11/780. In: Proceedings of the 9th Annual Symposium on Computer Architecture, pp. 291–298 (1982) Google Scholar
  11. 11.
    Kagstrom, S., Lundberg, L., Grahn, H.: A Novel Method for Adding Multiprocessor Support to a Large and Complex Uniprocessor Kernel. In: Proceedings of 18th International Parallel and Distributed Processing Symposium (2004) Google Scholar
  12. 12.
    Muir, S., Smith, J.: AsyMOS-an Asymmetric Multiprocessor Operating System. In: Proceedings of Open Architectures and Network Programming, pp. 25–34 (1998) Google Scholar
  13. 13.
    Muir, S., Smith, J.: Functional Divisions in the Piglet Multiprocessor Operating System. In: Proceedings of the 8th ACM SIGOPS European Workshop on Support for Composing Distributed Applications, pp. 255–260. ACM Press, New York (1998)CrossRefGoogle Scholar
  14. 14.
    Wolf, W.: The Future of Multiprocessor Systems-on-Chips. In: Proceedings of the 41st Annual Conference on Design Automation, pp. 681–685 (2004) Google Scholar
  15. 15.
    Maeda, S., Asano, S., Shimada, T., Awazu, K., Tago, H.: A Real-Time Software Platform for the Cell Processor. IEEE Micro. 25, 20–29 (2005)CrossRefGoogle Scholar
  16. 16.
    Carbone, J.: A SMP RTOS for the ARM MPCore Multiprocessor. ARM Information Quaterly 4, 64–67 (2005)Google Scholar
  17. 17.
    Friedrich, L.F, Stankovic, J., Humphrey, M., Marley, M., Haskins, J.: A Survey of Configurable, Component-Based Operating Systems for Embedded Applications. IEEE Micro. 21, 54–68 (2001)CrossRefGoogle Scholar
  18. 18.
    Liedtke, J.: On micro-kernel construction. In: Proceedings of the 15th ACM Symposium on Operating Systems Principles, ACM Press, New York (1995)Google Scholar
  19. 19.
    Gabber, E., Small, C., Bruno, J., Brustoloni, J., Silberschatz, A.: The Pebble Component-Based Operating System. In: Proceedings of the USENIX Annual Technical Conference (1999) Google Scholar
  20. 20.
    Ford, B., Lepreau, J., Clawson, S., Maren, K.V., Robinson, B., Turner, J.: The Flux OS Toolkit: Reusable Components for OS Implementation. In: Proceedings of the 6th Workshop on Hot Topics in Operating Systems (1997) Google Scholar
  21. 21.
  22. 22.
    Bieman, J.M., Ott, L.M.: Measuring Functional Cohesion. IEEE transactions on Software Engineering 20, 644–657 (1994)CrossRefGoogle Scholar
  23. 23.
    Kumar, R., Tullsen, D.M., Jouppi, N.P., Ranganthan, P.: Heterogeneous Chip Multiprocessors. IEEE Computer 38, 28–32 (2005)Google Scholar
  24. 24.
    Kahle, J.A., Day, M.N., Hofstee, H.P., Johns, C.R., Maeurer, T.R., Shippy, D.: Introduction to the Cell Multiprocessor. IBM Journal of Research and Development 49, 589–604 (2005)CrossRefGoogle Scholar
  25. 25.
    Carpenter, J., Funk, S., Holman, P., Srinivasan, A., Anderson, J., Baruah, S.: A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms. In: Leung, J.Y.-T. (ed.) Handbook of Scheduling: Algorithms, Models, and Performance Analysis, Chapman Hall/CRC Press, Boca Raton, USA (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Minyeol Seo
    • 1
  • Ha Seok Kim
    • 1
  • Ji Chan Maeng
    • 1
  • Jimin Kim
    • 1
  • Minsoo Ryu
    • 1
  1. 1.Computer Engineeirng, College of Information and Communications, Hanyang UniversityKorea

Personalised recommendations