Birden fazla katman olması durumunda (fiziksel sürücüler -> md -> dm -> lvm), zamanlayıcılar, okuma kafası ayarları ve diğer disk ayarları nasıl etkileşimde bulunur?
Mdadm ile oluşturulan bir RAID aygıtının (/ dev / md0) bir parçası olan birkaç diskiniz (/ dev / sda - / dev / sdd) olduğunu hayal edin. Her cihazın (fiziksel diskler ve / dev / md0 dahil) IO zamanlayıcısı ( böyle değişti ) ve okuma kafası ( blockdev kullanılarak değiştirildi ) için kendi ayarları vardır . Dm (crypto) ve LVM gibi şeyleri attığınızda, kendi ayarlarıyla daha da fazla katman eklersiniz.
Örneğin, fiziksel cihaz 128 bloktan önce bir okumaya sahipse ve RAID / dev / md0'den bir okuma yaptığımda onurlandırılan 64 blokluk bir okumaya sahipse? Md sürücüsü 64 blok okumaya çalışıyor mu, fiziksel aygıt sürücüsünün 128 blok okumaya dönüştüğünü biliyor mu? Yoksa RAID okuma kafası, altta yatan cihaza "geçiş" uygulayarak 64 bloğun okunmasına neden oluyor mu?
Aynı tür soru zamanlayıcılar için de geçerli mi? Birden fazla GÇ zamanlayıcı katmanı ve bunların nasıl etkileşime gireceği konusunda endişelenmeli miyim veya / dev / md0 altta yatan zamanlayıcıları etkin bir şekilde geçersiz kılıyor mu?
Bu soruyu cevaplama denemelerimde, zamanlayıcılar ve araçlar hakkında ilginç bir veri buldum:
/sys/block/md0/queue/scheduler
Benim sistemlerimde bir var ama oradaki tek seçenek bunone
.