チュートリアルでは、cfq、noopなどのさまざまなIOスケジューラを見ましたが、Linuxでテストするときは見えませんでした。
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] none
$ uname -r
5.13.0-27-generic
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.3 LTS
Release: 20.04
Codename: focal
スケジューラをもっと見るためにできることがもっとあるのだろうか。どんなアイデアがありますか?
修正する:
提案されているように、次のIOSCHED値が表示されます。
$ grep IOSCHED /boot/config-5.13.0-27-generic
CONFIG_MQ_IOSCHED_DEADLINE=y
CONFIG_MQ_IOSCHED_KYBER=m
CONFIG_IOSCHED_BFQ=m
CONFIG_BFQ_GROUP_IOSCHED=y
また、2つのモジュールがあります/lib/modules
。
$ ls /lib/modules/5.13.0-27-generic/kernel/block/
bfq.ko kyber-iosched.ko
モジュールをロードすると、リストにbfqは表示されません。
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] none
$ sudo modprobe kyber-iosched bfq
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] kyber none
これは正しい出力ですか?
答え1
ほとんどの展開カーネルでは他のスケジューラを使用できますが、ロードする必要があります。
sudo modprobe kyber-iosched
sudo modprobe bfq
KyberおよびBFQ I / Oスケジューラがロードされます。block/Kconfig.iosched
詳細については)次の項目を選択できる必要があります。
$ cat /sys/block/sda/queue/scheduler
[mq-deadline] kyber bfq none
/lib/modules/$(uname -r)/kernel/block
カーネルファイル()の内容と設定を確認してください。IOSCHED
.config
/boot/config-$(uname -r)