Skip to main content
Log in

A method for supporting runtime environments simultaneously served by multiple memory managers for operating systems based on second-generation microkernel

  • Published:
Programming and Computer Software Aims and scope Submit manuscript

Abstract

Paging is an important virtual memory mechanism used in advanced operating systems for making illusion of infinite memory. However currently available second-generation microkernels provide only limited, inflexible, and unnatural support for this mechanism. The solutions used in them are implemented at the runtime level, and they incur considerable overheads. These overheads are caused by a large number of switches between different processor modes and thread context switches. The limited support of virtual memory by operating systems based on the second-generation microkernel considerably reduces the attractiveness of their usage. The reason for this is that the computer systems encountered in practice typically use many memory managers simultaneously. This paper proposes a new approach aimed at improving the support of virtual memory for operating systems based on second-generation microkernels. It is based on the implementation of the explicit intrakernel support for runtime environments simultaneously served by multiple memory managers. According to this approach, the virtual address space is divided into multiple regions each of which may be assigned a specific memory manager. This division makes it possible to organize a simple and efficient dispatching of page fault exceptions. Mechanisms for second-generation microkernel are proposed that support runtime environments that are simultaneously served by multiple memory managers. These mechanisms have improved performance and flexibility. The proposed solution is compared with the well-known L4 + L4Re solution in terms of the cost of page fault handling. The proposed solution reduces by a third the overhead due to processor mode and thread context switches compared with the L4 + L4Re approach, which is used in Fiasco.OC based on the modern version of the second-generation microkernel L4/Fiasco.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Elphinstone, K. and Heiser, G., From L3 to seL4—What have we learnt in 20 years of L4 microkernels? Proc. of the ACM SIGOPS Symposium on Operating Systems Principles (SOSP), 2013, pp. 133–150.

    Chapter  Google Scholar 

  2. Accetta, M., Baron, R., Bolosky, W., Golub, D., Rashid, R., Tevanian, A., and Young, M., Mach: A new kernel foundation for UNIX development, Proc. of the USENIX Conference, 1986, pp. 93–112.

    Google Scholar 

  3. Sechrest, S. and Park, Y., User-level physical memory management for mach, USENIX MACH Symposium, 1991, pp. 189–200.

    Google Scholar 

  4. Russinovich, M. and Solomon, D.A., Windows Internals: Including Windows Server 2008 and Windows Vista, Redmond: Microsoft Press, 2009, 5th ed.

    Google Scholar 

  5. Bovet, D. and Cesati, M., Understanding the Linux Kernel, Sebastopol: Oreilly, 2005.

    Google Scholar 

  6. Brightwell, R., Pedretti, K., and Hudson, T., Smartmap: Operating system support for efficient data sharing among processes on a multicore processor, Proc. of the ACM/IEEE Conference on Supercomputing, Piscataway, 2008, pp. 25:1–25:12.

    Google Scholar 

  7. Hofmann, O.S., Dunn, A.M., Kim, S., Lee, M. Z., and Witchel, E., InkTag: Secure applications on an untrusted operating system, Proc. of the Eighteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASP-LOS), Houston, 2013, pp. 265–278.

    Google Scholar 

  8. Srivastava, A. and Giffin, J. T., Efficient monitoring of untrusted kernel-mode execution, Proc. of the Network and Distributed System Security Symposium, San Diego, 2011.

    Google Scholar 

  9. J. Liedtke, J., On microkernel construction, Proceedings of the 15th ACM Symposium on Operating System Principles (SOSP-15), Copper Mountain Resort, 1995, pp. 237–250.

    Google Scholar 

  10. Klein, G., Elphinstone, K., Heiser, G., Andronick, J., Cock, D., Derrin, P., Elkaduwe, D., Engelhardt, K., Kolanski, R., Norrish, M., Sewell, T., Tuch, H., and Winwood, S., seL4: Formal verification of an OS kernel, Proc. of the ACM SIGOPS 22nd Symposium on Operating Systems Principles, Big Sky, 2009, pp. 207–220.

    Google Scholar 

  11. The Fiasco microkernel—overview. http://os.inf.tudresden.de/fiasco/. Accessed November 30, 2013.

  12. L4Re—the L4 runtime environment. http://os.inf.tudresden.de/L4Re/. Accessed February 2, 2014.

  13. Aron, M., Park, Y., Jaeger, T., Liedtke, J., Elphinstone, K., and Deller, L., The SawMill framework for VM diversity, Proc. of the 6th Australasian Computer Systems Architecture Conference, Gold Coast, 2001, pp. 3–10.

    Google Scholar 

  14. Burdonov, I.B., Kossachev, A.S., and Ponomarenko, V.N., Real-time operating systems, Preprint of Inst. of Systems Programming, Russ. Acad. Sci., Moscow, 2006, no. 14. http://www.ispras.ru/ru/preprints/docs/prep-1-4-2006.pdf. Accessed February 2, 2014.

    Google Scholar 

  15. Intel Architecture Software Developer’s Manual, vol. 3: System Programming, Intel Corporation, 1999.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Y. I. Klimiankou.

Additional information

Original Russian Text © Y.I. Klimiankou, 2015, published in Programmirovanie, 2015, Vol. 41, No. 1.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Klimiankou, Y.I. A method for supporting runtime environments simultaneously served by multiple memory managers for operating systems based on second-generation microkernel. Program Comput Soft 41, 31–40 (2015). https://doi.org/10.1134/S036176881501003X

Download citation

  • Received:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1134/S036176881501003X

Keywords

Navigation