hello
i can change the I/O scheduler at run time by following command
echo scheduler_name > /sys/block//queue/scheduler
after this command [] brackets are found around I/O scheduler name in scheduler file
"But how do know which I/O scheduler is being used at particular moment."
beside this in linux 2.6.13(which i use) it registers all the I/O scheduler at boot time.
so if i want to add my i/o scheduler where should i make changes so that my scheduler get
registered and identified.
$ cat /sys/block/hda/queue/sc
$ cat /sys/block/hda/queue/schedulernoop [anticipatory] deadline cfq
This means that
{ noop anticipatory deadline cfq }are registered, andanticipatoryis being used on hda./* /usr/src/linux/include/linux/elevator.h */int elv_register(struct elevator_type*);
int elv_unregister(struct elevator_type*);
Call them from your
module_init/module_exit.Reading through
/usr/src/linux/block/*-iosched.cshould be more than enough to get you started.