Neden disk IO'nun çoğu, aslında IO'yu kullanan işleme değil, jbd2'ye atfedilir?


17

Disk IO'yu izlerken, IO'nun çoğu jbd2'ye bağlanırken, yüksek IO'ya neden olan orijinal işlem çok daha düşük bir IO yüzdesi ile ilişkilendirilir. Neden?

İşte iotopörnek çıktı (IO <% 1 atlanmış diğer işlemler):

resim açıklamasını buraya girin


Bu ile data=journalmi?
DepressedDaniel

@DepressedDaniel ne demek istediğinden emin değil. Ben sadece iotop -oP kullandım
Sparkler

Yanıtlar:


16

jbd2 dosya sistemi günlüğünü güncelleyen bir çekirdek iş parçacığıdır.

Dosya sisteminin veya disk etkinliğinin buna neden olan işlemle izlenmesi zordur çünkü birçok işlemin etkinlikleri bir araya getirilir. Örneğin, iki dosya aynı anda aynı dosyadan okuyorsa, okuma hangi hesaba karşı muhasebeleştirilir? İki işlem aynı dizine yazılırsa ve dizin diskte yalnızca bir kez güncelleştirilirse (iki işlemi birleştirirse), yazma işlemi hangi işleme karşı muhasebeleştirilir?

Sizin durumunuzda, trafiğin çoğunun günlük güncellemelerinden oluştuğu anlaşılıyor. Bu, günlük güncelleyicisinde izlenir, ancak günlük güncellemeleri ile bu günlük güncellemesini gerektiren yazma işlemlerine neden olan işlemler arasında hiçbir izleme yoktur.


2
Günlük güncellemelerinin yanı sıra başka hangi disk kategorileri var? (jdb2 iotop en çıktısında sadece bir girdi değil yani neden?)
Maytap

@Sparkler Gerçek veriler de var. (Günlük yapılı bir dosya sistemi kullanmadığınız sürece, ama çoğu değil.)
Gilles 'SO- kötü olmayı bırak'

Bu ne olduğunu açıklar. Ancak, orijinal 'G / Ç önceliği' boşta 'olarak ayarlandığında büyük zaman alır ve jbd2sadece kendi G / Ç önceliğinde çok sayıda G / Ç yapmaya devam eder.
jlh
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.