{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,14]],"date-time":"2026-01-14T14:09:05Z","timestamp":1768399745985,"version":"3.49.0"},"reference-count":20,"publisher":"Association for Computing Machinery (ACM)","issue":"5","license":[{"start":{"date-parts":[[2008,7,1]],"date-time":"2008-07-01T00:00:00Z","timestamp":1214870400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100002428","name":"Austrian Science Fund","doi-asserted-by":"publisher","award":["P18913-N15"],"award-info":[{"award-number":["P18913-N15"]}],"id":[{"id":"10.13039\/501100002428","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGOPS Oper. Syst. Rev."],"published-print":{"date-parts":[[2008,7]]},"abstract":"<jats:p>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.<\/jats:p>","DOI":"10.1145\/1400097.1400103","type":"journal-article","created":{"date-parts":[[2008,8,12]],"date-time":"2008-08-12T13:10:22Z","timestamp":1218546622000},"page":"44-54","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":11,"title":["I\/O resource management through system call scheduling"],"prefix":"10.1145","volume":"42","author":[{"given":"Silviu S.","family":"Craciunas","sequence":"first","affiliation":[{"name":"University of Salzburg, Austria"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Christoph M.","family":"Kirsch","sequence":"additional","affiliation":[{"name":"University of Salzburg, Austria"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Harald","family":"R\u00f6ck","sequence":"additional","affiliation":[{"name":"University of Salzburg, Austria"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2008,7]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"Proc. OSDI","author":"Banga G.","year":"1999","unstructured":"Banga , G. , Druschel , P. , and Mogul , J. C . Resource containers: A new facility for resource management in server systems . In Proc. OSDI ( 1999 ). Banga, G., Druschel, P., and Mogul, J. C. Resource containers: A new facility for resource management in server systems. In Proc. OSDI (1999)."},{"key":"e_1_2_1_2_1","unstructured":"Barrera I. bw_mod: Apache2 module for bandwidth and connection control. http:\/\/modules.apache.org\/search?id=786.  Barrera I. bw_mod: Apache2 module for bandwidth and connection control. http:\/\/modules.apache.org\/search?id=786."},{"key":"e_1_2_1_3_1","volume-title":"Proc. USENIX","author":"Bruno J.","year":"1998","unstructured":"Bruno , J. , Gabber , E. , \u00d6zden , B. , and Silberschatz , A . The Eclipse operating system: providing quality of service via reservation domains . In Proc. USENIX ( 1998 ). Bruno, J., Gabber, E., \u00d6zden, B., and Silberschatz, A. The Eclipse operating system: providing quality of service via reservation domains. In Proc. USENIX (1998)."},{"key":"e_1_2_1_4_1","unstructured":"Craciunas S. Kirsch C. and R\u00f6ck H. The TAP Project. http:\/\/tap.cs.uni-salzburg.at\/.  Craciunas S. Kirsch C. and R\u00f6ck H. The TAP Project. http:\/\/tap.cs.uni-salzburg.at\/."},{"key":"e_1_2_1_5_1","volume-title":"Proc. USITS","author":"Crovella M.","year":"1999","unstructured":"Crovella , M. , Frangioso , R. , and Harchol-Balter , M . Connection scheduling in web servers . In Proc. USITS ( 1999 ). Crovella, M., Frangioso, R., and Harchol-Balter, M. Connection scheduling in web servers. In Proc. USITS (1999)."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/502034.502046"},{"key":"e_1_2_1_7_1","volume-title":"Proc. Monterey Workshop","author":"Kirsch C.","year":"2004","unstructured":"Kirsch , C. Threading by appointment . In Proc. Monterey Workshop ( 2004 ), CRC Press. Kirsch, C. Threading by appointment. In Proc. Monterey Workshop (2004), CRC Press."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/49.536480"},{"key":"e_1_2_1_9_1","volume-title":"Linux Kernel Development","author":"Love R.","year":"2005","unstructured":"Love , R. Linux Kernel Development , 2 nd ed. Novell Press , 2005 . Love, R. Linux Kernel Development, 2nd ed. Novell Press, 2005.","edition":"2"},{"key":"e_1_2_1_10_1","unstructured":"Midgley J. T. J. autobench - automates the benchmarking of web servers using httperf. http:\/\/www.xenoclast.org\/autobench\/.  Midgley J. T. J. autobench - automates the benchmarking of web servers using httperf. http:\/\/www.xenoclast.org\/autobench\/."},{"key":"e_1_2_1_11_1","volume-title":"Proc. OSDI","author":"Montz A. B.","year":"1994","unstructured":"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 ). 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)."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/306225.306235"},{"key":"e_1_2_1_13_1","unstructured":"Muhammad H. htop - an interactive process viewer for Linux. http:\/\/htop.sourceforge.net\/.  Muhammad H. htop - an interactive process viewer for Linux. http:\/\/htop.sourceforge.net\/."},{"key":"e_1_2_1_14_1","volume-title":"Proc. OLS","author":"Nagar S.","year":"2004","unstructured":"Nagar , S. , Franke , H. , Kashyap , V. , van Riel , R. , Seetharaman , C. , and Zheng , H . Improving Linux resource control using CKRM . In Proc. OLS ( 2004 ). Nagar, S., Franke, H., Kashyap, V., van Riel, R., Seetharaman, C., and Zheng, H. Improving Linux resource control using CKRM. In Proc. OLS (2004)."},{"key":"e_1_2_1_15_1","volume-title":"The TAP System: Concurrent programming with threading by appointment. Master's thesis","author":"R\u00f6ck H.","year":"2006","unstructured":"R\u00f6ck , H. The TAP System: Concurrent programming with threading by appointment. Master's thesis , University of Salzburg , Salzburg, Austria , 2006 . R\u00f6ck, H. The TAP System: Concurrent programming with threading by appointment. Master's thesis, University of Salzburg, Salzburg, Austria, 2006."},{"key":"e_1_2_1_16_1","volume-title":"Proc. USENIX","author":"Sarma D.","year":"2004","unstructured":"Sarma , D. , and McKenney , P. E. Making RCU safe for deep sub-millisecond response real-time applications . In Proc. USENIX ( 2004 ). Sarma, D., and McKenney, P. E. Making RCU safe for deep sub-millisecond response real-time applications. In Proc. USENIX (2004)."},{"key":"e_1_2_1_17_1","volume-title":"Computer Networks","author":"Tanenbaum A.","year":"2002","unstructured":"Tanenbaum , A. Computer Networks , 3 rd ed. Prentice Hall , 2002 . Tanenbaum, A. Computer Networks, 3rd ed. Prentice Hall, 2002.","edition":"3"},{"key":"e_1_2_1_18_1","unstructured":"The Netfilter.org Project. netfilter: firewalling NAT and packet mangling for Linux. http:\/\/www.netfilter.org.  The Netfilter.org Project. netfilter: firewalling NAT and packet mangling for Linux. http:\/\/www.netfilter.org."},{"key":"e_1_2_1_19_1","unstructured":"The VideoLan Project. VLC - the cross-platform media player and streaming server. http:\/\/www.videolan.org\/vlc\/.  The VideoLan Project. VLC - the cross-platform media player and streaming server. http:\/\/www.videolan.org\/vlc\/."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065983.1066026"}],"container-title":["ACM SIGOPS Operating Systems Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1400097.1400103","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1400097.1400103","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T13:57:53Z","timestamp":1750255073000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1400097.1400103"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008,7]]},"references-count":20,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2008,7]]}},"alternative-id":["10.1145\/1400097.1400103"],"URL":"https:\/\/doi.org\/10.1145\/1400097.1400103","relation":{},"ISSN":["0163-5980"],"issn-type":[{"value":"0163-5980","type":"print"}],"subject":[],"published":{"date-parts":[[2008,7]]},"assertion":[{"value":"2008-07-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}