有人可以解释如何计算“真实”进程优先级(即 的pri_baz字段ps)吗?
我的猜测是:
pri_baz = 99 - static_priority # if static_priority > 0 (real-time process)
pri_baz = 100 + min(20 + nice + dynamic_adjustment, 39) # if static_priority = 0 (time-shared process)
Run Code Online (Sandbox Code Playgroud)
以下测试支持这一点:
# chrt -r 1 sleep 1 \
> & chrt -r 99 sleep 1 \
> & nice --20 sleep 1 \
> & nice -19 sleep 1 \
> & ps -C sleep -O pri_baz
[1] 25408
[2] 25409
[3] 25410
[4] …Run Code Online (Sandbox Code Playgroud) 给定一个形式为 的管道C1 | C2,如果C2接受多个位置参数,是否可以选择 的输出C1去向?
考虑以下示例。
$ cat myscript
#!/bin/bash
cat $1
cat $2
$ cat world.txt
World
$ echo "Hello" | ./myscript world.txt
World
Hello
Run Code Online (Sandbox Code Playgroud)
我希望通过仅更改管道的右侧,最终输出的顺序正确(Hello World)。