Developing Process Scheduling Policies in User Space with Common OS Features
This paper explores a programming technique that enables process scheduling policy development in user space by only using common Operating System (OS) features. We propose a mechanism called the priority elevation trick that actively manipulates the priorities of processes to realize a certain process scheduling policy atop a conventional kernel-space process scheduler. Our experiments quantify its overheads on bare-metal and Virtual Machine (VM) setups and demonstrate that its three use cases, microsecond-scale time slicing, table-driven scheduling, and preemptive scheduling, contribute to networked server performance.
Authors
- Kenichi Yasukata (ORCID: https://orcid.org/0000-0002-7866-2245)
- Kenta Ishiguro (ORCID: https://orcid.org/0000-0003-0302-1600)
Institutions
- Keio University (JP)
- IIJ Research Laboratory (JP)
Publication Details
- Published
- 2024-08-29
- DOI
- https://doi.org/10.1145/3678015.3680481
- Citations
- 1
- Primary Topic
- Distributed and Parallel Computing Systems
- Type
- article
- Field-Weighted Citation Impact
- 0.35