У мене є деякі проблеми вводу / виводу для пари систем Linux, якими я адмініструю. Вони проявляються в тому, що процеси часто блокують до декількох секунд у таких простих системних викликах, як відкриті (), відключення () або закриття () у файлах (що є проблемою, оскільки деяким із залучених програм потрібна досить низька затримка вводу / виводу для роботи належним чином). Це правда, що системи, про які йдеться, відчувають деяке помірне навантаження вводу / виводу, але навряд чи можна подумати, що це було б достатньо для виправдання таких величезних затримок. Іноді завершення дзвінків може зайняти більше 15 секунд (хоча частіше вони можуть зайняти 1 або 2 або 3 секунди або близько того).
Моє запитання: Як я можу дізнатися, чому це відбувається? Мені б хотілося, що це якийсь інструмент, який міг би сказати мені про те, які саме процеси блокуються в ядрі, і чому те, на чому вони сплять, зайняте, що з ним відбувається, і подібні речі. Чи є такий інструмент чи є якийсь інший спосіб спробувати налагодити те, що відбувається?
З іншого боку , звичайно, якщо у вас є якісь - або підказки щодо того , що на насправді це відбувається, як це може уникнути?
Для запису файлова система, яку я використовую, - це XFS.