skip to main content
article

Towards effective user-controlled scheduling for microkernel-based systems

Published:01 July 2007Publication History
Skip Abstract Section

Abstract

With μ-kernel based systems becoming more and more prevalent, the demand for extensible resource management raises - and with it the demand for flexible thread scheduling. In this paper, we investigate the benefits and costs of a μ-kernel that exports scheduling from the kernel to user level. A key idea of our approach is to involve the user level whenever the μ-kernel encounters a situation that is ambiguous with respect to scheduling, and to permit the kernel to resolve the ambiguity based on user decisions. A further key aspect is that we rely on a generic, protection domain neutral interface between kernel and applications.

For evaluation, we have developed a hierarchical user level scheduling architecture for the L4 μ-kernel, and a virtualization environment running on its top. Our environment supports Linux 2.6.9 guest operating systems on IA-32 processors. Experiments indicate an application overhead between 0 and 10 percent compared to a pure in-kernel scheduler solution, but also demonstrate that our architecture enables effective and accurate user-directed scheduling.

References

  1. T. E. Anderson, B. N. Bershad, E. D. Lazowska, and H. M. Levy. Scheduler activations: Effective kernel support for the user-level management of parallelism. In Proceedings of the 13th Symposium on Operating System Principles. ACM Press, Oct. 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. J. Appavoo, M. Auslander, D. DaSilva, D. Edelsohn, O. Krieger, M. Ostrowski, B. Rosenburg, R. Wisniewski, and J. Xenidis. Scheduling in K42. White Paper, Aug. 2002.Google ScholarGoogle Scholar
  3. P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. In Proceedings of the 19th Symposium on Operating System Principles, Bolton Landing, NY, Oct. 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Biemueller and U. Dannowski. L4-based real virtual machines - an api proposal. In Proceedings of the First International Workshop on MicroKernels for Embedded Systems, Sydney, Australia, Jan. 2007.Google ScholarGoogle Scholar
  5. Embedded Real-Time and Operating Systems Group. NICTA L4-Embedded Kernel Reference Manual (Version N1). Natioal ICT Australia, 2005.Google ScholarGoogle Scholar
  6. B. Ford and S. R. Susarla. CPU inheritance scheduling. In Proceedings of the 2nd Symposium on Operating Systems Design and Implementation, Berkeley, CA, Oct. 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. G. Heiser. Secure embedded systems need microkernels.;login: the USENIX Association newsletter, 30(6), Dec. 2005.Google ScholarGoogle Scholar
  8. O. Krieger, M. Auslander, B. Rosenburg, R. W. Wisniewski, J. Xenidis, D. D. Silva, M. Ostrowski, J. Appavoo, M. Butrico, M. Mergen, A. Waterland, and V. Uhlig. K42: Building a complete operating system. In Proceedings of the 1st EuroSys conference, Leuven, Belgium, Apr. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. I. M. Leslie, D. McAuley, R. Black, T. Roscoe, P. T. Barham, D. Evers, R. Fairbairns, and E. Hyden. The design and implementation of an operating system to support distributed multimedia applications. IEEE Journal of Selected Areas in Communications, 14(7), Sept. 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. LeVasseur, V. Uhlig, M. Chapman, P. Chubb, B. Leslie, and G. Heiser. Pre-virtualization: soft layering for virtual machines. Technical Report 2006--15, Fakultät für Informatik, Universitat Karlsruhe (TH), July 2006.Google ScholarGoogle Scholar
  11. J. Liedtke. On μ-kernel construction. In Proceedings of the 15th Symposium on Operating System Principles, Copper Mountain, CO, Dec. 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Liedtke, K. Elphinstone, S. Schönberg, H. Härtig, G. Heiser, N. Islam, and T. Jaeger. Achieved IPC performance (still the foundation for extensibility). In Proceedings of 6th Workshop on Hot Topics in Operating Systems, Cape Cod, MA, May 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. Liedtke, N. Islam, and T. Jaeger. Preventing denial-of-service attacks on a μ-kernel for WebOSes. In Proceedings of 6th Workshop on Hot Topics in Operating Systems, Cape Cod, MA, May 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. J. Liedtke and H. Wenske. Lazy process switching. In Proceedings of 8th Workshop on Hot Topics in Operating Systems, Schloß Elmau, Oberbayern, Germany, May 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. B. D. Marsh, M. L. Scott, T. J. LeBlanc, and E. P. Markatos. First-class user-level threads. In Proceedings of the 13th Symposium on Operating System Principles. ACM Press, Oct. 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. Ruocco. Real-time programming and L4 microkernels. In Proceedings of the 2006 Workshop on Operating System Platforms for Embedded Real-Time Applications, Dresden, Germany, July 2006.Google ScholarGoogle Scholar
  17. S. Ruocco. User-level fine-grained adaptive real-time scheduling via temporal reflection. In Proceedings of the 27th IEEE International Real-Time Systems Symposium, Rio de Janeiro, Brazil, Dec. 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. B. Saha, A.-R. Adl-Tabatabai, A. Ghuloum, M. Rajagopalan, R. L. Hudson, L. Petersen, V. Menon, B. Murphy, T. Shpeisman, E. Sprangle, A. Rohillah, D. Carmean, and J. Fang. Enabling scalability and performance in a large scale CMP enviroment. In Proceedings of the 2nd EuroSys conference, Lisbon, Portugal, Mar. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. S. Shapiro. Vulnerabilities in synchronous IPC designs. In IEEE Symposium on Security and Privacy, Los Alamitos, CA, May 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. U. Steinberg, J. Wolter, and H. Härtig. Fast component interaction for real-time systems. In Proceedings of the 17th Euromicro Conference on Real-Time Systems, Palma de Mallorca, Spain, July 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. J. Stoess, C. Lang, and F. Bellosa. Energy management for hypervisor-based virtual machines. In Proceedings of the USENIX 2007 Annual Technical Conference, Santa Clara, CA, June 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. Stoess and V. Uhlig. Flexible, low-overhead event logging to support resource scheduling. In Proceedings of the Twelfth International Conference on Parallel and Distributed Systems, volume 2, Minneapolis, MN, July 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. The L4Ka Team. L4 Kernel Reference Manual (Version X.2). Universität Karlsruhe, 2004.Google ScholarGoogle Scholar
  24. A. Tucker and A. Gupta. Process control and scheduling issues for multiprogrammed shared-memory multiprocessors. In Proceedings of the 12th Symposium on Operating System Principles. ACM Press, Dec. 1989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. V. Uhlig. Scalability of Microkernel-Based Systems. PhD thesis, University of Karlsruhe, Germany, May 2005.Google ScholarGoogle Scholar
  26. VMware Inc. ESX Server Data Sheet, 2006.Google ScholarGoogle Scholar

Index Terms

  1. Towards effective user-controlled scheduling for microkernel-based systems

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in

              Full Access

              • Published in

                cover image ACM SIGOPS Operating Systems Review
                ACM SIGOPS Operating Systems Review  Volume 41, Issue 4
                July 2007
                86 pages
                ISSN:0163-5980
                DOI:10.1145/1278901
                Issue’s Table of Contents

                Copyright © 2007 Author

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 July 2007

                Check for updates

                Qualifiers

                • article

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader