skip to main content
article
Free Access

Borrowed-virtual-time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler

Published:12 December 1999Publication History
Skip Abstract Section

Abstract

Systems need to run a larger and more diverse set of applications, from real-time to interactive to batch, on uniprocessor and multiprocessor platforms. However, most schedulers either do not address latency requirements or are specialized to complex real-time paradigms, limiting their applicability to general-purpose systems.In this paper, we present Borrowed-Virtual-Time (BVT) Scheduling, showing that it provides low-latency for real-time and interactive applications yet weighted sharing of the CPU across applications according to system policy, even with thread failure at the real-time level, all with a low-overhead implementation on multiprocessors as well as uniprocessors. It makes minimal demands on application developers, and can be used with a reservation or admission control module for hard real-time applications.

References

  1. 1 S. Brin. Personal communication. www. google, corn, 1999.]]Google ScholarGoogle Scholar
  2. 2 A. Demers, S. Keshav, and S. Shenker. Analysis and simulation of a fair queueing algorithm. Proceedings ACM SIGCOMM, pages 1-12, September 1989.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 K. J. Duda and D. R. Cheriton. Borrowedvirtual-time (BVT) scheduling, ht t p: / / wwwdsg. stanford, edu/pub/bvt, html, 2000.]]Google ScholarGoogle Scholar
  4. 4 I. Stoika et al.. A proportional-share resource allocation algorithm for real-time, time-shared systems. In Proceedings of the 17th IEEE Real-Time Systems Symposium, pages 51-59, December 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 P. Goyal, X. Guo, and H. Vin. A hierarchical CPU scheduler for multimedia operating systems. Proceedings of the Usenix Symposium on Operating System Design and Implementation '96, pages 107-122, October 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 M. Jones, J. Barrera, A. Forin, P. Leach, D. Rosu, and M. Rosu. An overview of the Rialto real-time architecture. Microsoft Research Technical Report MSR-TR- 96-13, July 1996. Microsoft Inc., Redmond, WA.]]Google ScholarGoogle Scholar
  7. 7 M. Jones, D. Rosu, and M. Rosu. CPU reservations and time constraints: Efficient, predictable scheduling of independent activities. Proceedings of the 16th ACM Symposium on Operating System Principles, pages 198-211, October 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8 C. W. Mercer, S. Savage, and H. Tokuda. Processor capacity reserves for multimedia operating systems. Proceedings of the IEEE International Conference on Multimedia Computing and Systems, pages 90-99, May 1994.]]Google ScholarGoogle ScholarCross RefCross Ref
  9. 9 J. Mogul and K. Ramakrishnan. Eliminating receive livelock in an interrupt-driven kernel. ACM Trans. on Computer Systems, 15(3):217-252, August 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10 J. Nieh, J. Hanko, J. Northcutt, and G. Wall. SVR4 UNIX scheduler unacceptable for multimedia applications. Proceedings of the IEEE International Conference on Multimedia Computing and Systems, pages 35-48, November 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11 J. Nieh and M. Lam. The design, implementation, and evaluation of SMART: A scheduler for multimedia applications. Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles, pages 184-197, October 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12 L. Rowe, K. Patel, and B. Smith. Performance of a software MPEG video decoder. Proc. ACM Multimedia 93, pages 31-39, August 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13 J. Stankovic and K. Ramamritham. The Spring Kernel: A new paradigm for real-time systems. IEEE Software, 8(3):62-73, 1991.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14 C. Waldspurger and W. Weihl. Lottery scheduling: Flexible proportional-share resource mangement. Proceedings of the First Symposium on Operating System Design and Implementation, pages 1-11, November 1994.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Borrowed-virtual-time (BVT) scheduling: supporting latency-sensitive threads in a general-purpose scheduler

    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 33, Issue 5
      Dec. 1999
      291 pages
      ISSN:0163-5980
      DOI:10.1145/319344
      Issue’s Table of Contents
      • cover image ACM Conferences
        SOSP '99: Proceedings of the seventeenth ACM symposium on Operating systems principles
        December 1999
        300 pages
        ISBN:1581131402
        DOI:10.1145/319151

      Copyright © 1999 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 12 December 1999

      Check for updates

      Qualifiers

      • article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader