더 많은 스케줄러 추가

더 많은 스케줄러 추가

튜토리얼에서 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

또한 두 가지 모듈이 있습니다 /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)

관련 정보