Linux系统高级进程管理:I/O优先级、处理器亲和性与实时系统支持
1. I/O优先级
Linux系统允许进程指定I/O优先级,该优先级会影响进程I/O请求的相对优先级。内核的I/O调度器会优先处理I/O优先级高的进程请求。
1.1 默认设置
默认情况下,I/O调度器使用进程的 nice 值来确定I/O优先级,因此设置 nice 值会自动改变I/O优先级。
1.2 系统调用
Linux内核提供了两个系统调用用于独立于 nice 值显式设置和获取I/O优先级:
int ioprio_get (int which, int who);
int ioprio_set (int which, int who, int ioprio);
然而, glibc 未为这些系统调用提供用户空间接口,使用起来较为麻烦。在 glibc 提供支持之前,有两种可移植的方法来操作进程的I/O优先级:通过 nice 值或使用 ionice (属于 util-linux 包)。
1.3 支持情况
并非所有的I/O调度器都支持I/O优先级,例如完全公平排队(CFQ)I/O调度器支持,而其他标准调度器目前不支持。若当前I/O调度器不支持I/O优先级,这些优先级会被默默忽略。 </
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



