skip to main content
research-article

I/O resource management through system call scheduling

Published:01 July 2008Publication History
Skip Abstract Section

Abstract

A principal challenge in operating system design is controlling system throughput and responsiveness while maximizing resource utilization. Unlike previous attempts in kernel resource management, which often involve non-trivial changes in kernel subsystems, we focus on the kernel's edge. System calls are usually the default mechanism for user processes to get access to operating system services. System calls can therefore be used to control throughput and responsiveness and thus also affect resource utilization directly. We propose a simple, non-intrusive kernel-space mechanism for explicit, per-process system call scheduling already at kernel entry in order to control the time and rate at which system calls are executed, and, as a result, the per-process utilization of the involved resources. We have developed a high-performance Linux 2.6 kernel patch with SMP support that implements system call scheduling for network- and disk-related I/O calls with policies that resemble traffic shaping in network routers. Our experiments show that already simple and easy-to-use policies provide effective I/O-related process isolation with low overhead, and reduce thrashing in certain overload scenarios. While system call scheduling may still not be able to outperform resource management systems that use specifically tuned kernel subsystems, our experiments indicate that it may sufficiently support relevant soft real-time applications yet using a vastly simpler and more generic approach.

References

  1. Banga, G., Druschel, P., and Mogul, J. C. Resource containers: A new facility for resource management in server systems. In Proc. OSDI (1999). Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Barrera, I. bw_mod: Apache2 module for bandwidth and connection control. http://modules.apache.org/search?id=786.Google ScholarGoogle Scholar
  3. Bruno, J., Gabber, E., Özden, B., and Silberschatz, A. The Eclipse operating system: providing quality of service via reservation domains. In Proc. USENIX (1998). Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Craciunas, S., Kirsch, C., and Röck, H. The TAP Project. http://tap.cs.uni-salzburg.at/.Google ScholarGoogle Scholar
  5. Crovella, M., Frangioso, R., and Harchol-Balter, M. Connection scheduling in web servers. In Proc. USITS (1999). Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Iyer, S., and Druschel, P. Anticipatory scheduling: A disk scheduling framework to overcome deceptive idleness in synchronous I/O. In Proc. SOSP (2001). Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Kirsch, C. Threading by appointment. In Proc. Monterey Workshop (2004), CRC Press.Google ScholarGoogle Scholar
  8. Leslie, I. M., McAuley, D., Black, R., Roscoe, T., Barham, P. T., Evers, D., Fairbairns, R., and Hyden, E. The design and implementation of an operating system to support distributed multimedia applications. IEEE Journal of Selected Areas in Communications 14, 7 (1996), 1280--1297. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Love, R. Linux Kernel Development, 2nd ed. Novell Press, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Midgley, J. T. J. autobench - automates the benchmarking of web servers using httperf. http://www.xenoclast.org/autobench/.Google ScholarGoogle Scholar
  11. Montz, A. B., Mosberger, D., O'Malley, S. W., Peterson, L. L., Proebsting, T. A., and Hartman, J. H. Scout: A communications-oriented operating system (abstract). In Proc. OSDI (1994).Google ScholarGoogle Scholar
  12. Mosberger, D., and Jin, T. httperf - a tool for measuring web server performance. SIGMETRICS Perform. Eval. Rev. 26, 3 (1998), 31--37. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Muhammad, H. htop - an interactive process viewer for Linux. http://htop.sourceforge.net/.Google ScholarGoogle Scholar
  14. Nagar, S., Franke, H., Kashyap, V., van Riel, R., Seetharaman, C., and Zheng, H. Improving Linux resource control using CKRM. In Proc. OLS (2004).Google ScholarGoogle Scholar
  15. Röck, H. The TAP System: Concurrent programming with threading by appointment. Master's thesis, University of Salzburg, Salzburg, Austria, 2006.Google ScholarGoogle Scholar
  16. Sarma, D., and McKenney, P. E. Making RCU safe for deep sub-millisecond response real-time applications. In Proc. USENIX (2004). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Tanenbaum, A. Computer Networks, 3rd ed. Prentice Hall, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. The Netfilter.org Project. netfilter: firewalling, NAT, and packet mangling for Linux. http://www.netfilter.org.Google ScholarGoogle Scholar
  19. The VideoLan Project. VLC - the cross-platform media player and streaming server. http://www.videolan.org/vlc/.Google ScholarGoogle Scholar
  20. Wu, J. C., Banachowski, S., and Brandt, S. A. Hierarchical disk sharing for multimedia systems. In Proc. NOSSDAV (2005). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. I/O resource management through system call scheduling

              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 42, Issue 5
                Research and developments in the Linux kernel
                July 2008
                113 pages
                ISSN:0163-5980
                DOI:10.1145/1400097
                Issue’s Table of Contents

                Copyright © 2008 Authors

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 July 2008

                Check for updates

                Qualifiers

                • research-article

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!