Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen blkparse komutudur.
Program:
ADI
blkparse - blok cihazlarının olay akışlarının biçimlendirilmiş çıktısını üretir
SİNOPSİS
ayrıştırmak [ seçenekleri ]
TANIM
The ayrıştırmak yardımcı program, çeşitli cihazlar için olay akışlarını birleştirmeye çalışacaktır.
çeşitli CPU'lar ve olay bilgilerinin biçimlendirilmiş bir çıktısını üretir. Spesifik olarak,
(makine tarafından okunabilir) çıktısını alacaktır. blktrace yardımcı program ve güzel bir şekilde dönüştürün
biçimlendirilmiş ve insan tarafından okunabilir form.
Ile blktrace, ilgili bazı detaylar ayrıştırmak komutu anlamada yardımcı olacak
aşağıda sunulan satır seçenekleri.
- Varsayılan olarak, ayrıştırmak bir işlem sonrası modunda çalışmayı bekler; izi olan biri
olaylar önceki bir blktrace çalışması tarafından kaydedildi ve blkparse olayı birleştiriyor
akışlar ve biçimlendirilmiş veri dökümü.
blkparse belirterek blktrace ile aynı anda canlı bir şekilde çalıştırılabilir -i - için
blkparse ve bunu blktrace için canlı seçenekle birleştirmek. Bir örnek:
% blktrace -d /dev/sda -o - | blk ayrıştırma -i -
- Kaç tane blkparse batch olayının okunacağını ayarlayabilirsiniz. -b seçeneği, varsayılan
olayları 512'lik gruplar halinde işleyin.
- Olay izlerini farklı çıktı adlarıyla blktrace'e kaydettiyseniz ( -o
blktrace seçeneği), üzerinden aynı giriş adını belirtmelisiniz. -i seçeneği.
- Çıkış verilerinin formatı, -f or -F seçenekler -- bkz. ÇIKTI
Ayrıntılar için AÇIKLAMA VE BİÇİMLENDİRME.
Varsayılan olarak, blkparse, biçimlendirilmiş verileri standart çıktıya gönderir. Bu, aracılığıyla değiştirilebilir
-o seçeneği veya metin çıkışı aracılığıyla devre dışı bırakılabilir -O seçenek. Birleştirilmiş bir ikili akış olabilir
kullanılarak üretilen -d seçeneği.
SEÇENEKLER
-A altıgen maske
--set-maske=altıgen maske
Filtre maskesini şuna ayarla: altıgen maske, maskeler için blktrace'e (8) bakın
-a maske
--act-maske=maske
Ekle maske geçerli filtreye, maskeler için blktrace'e (8) bakın
-D dir
--input-dizini=dir
Başa ekle dir dosya adlarını girmek için
-b yığın
--batch={parti}
Standart girdi okuma toplu işleme
-i dosya
--giriş=dosya
Giriş dosyaları için temel adı belirtir -- varsayılan cihaz.blktrace.cpu.
Belirtildiği gibi, yukarıda belirtildiği gibi -i - blktrace ile canlı modda çalışır (veri okuma
standart olarak).
-F tip, fmt
--format=tip, fmt
-f fmt
--format-belirti=fmt
Çıktı formatını ayarlar (Ayrıntılar için ÇIKTI AÇIKLAMASI VE BİÇİMLENDİRME bölümüne bakın.)
-f formu, tüm olaylar için bir format belirtir
-F formu, kişinin belirli bir olay türü için bir format belirlemesine izin verir. NS
tek karakter tip alan, EYLEM bölümünde açıklanan eylem belirteçlerinden biridir.
TANIMLAYICILAR.
-M
--mesaj yok
-d belirtildiğinde, bu, iletilerin dosyaya gönderilmesini durduracaktır. (Yapabilmek
CFQ I/O planlayıcısını kullanırken ortaya çıkan dosyanın boyutunu ciddi şekilde azaltın.)
-h
--karma-adına göre
PID'ye göre değil, ada göre karma işlemler
-o dosya
--çıktı=dosya
Çıktı dosyası
-O
--metin-çıktı yok
Do değil ikili (-d) sadece
-d dosya
--dump-ikili=dosya
İkili çıktı dosyası
-q
--sessizlik
Sessiz mod
-s
--program başına istatistikler
Programa göre sıralanmış verileri görüntüler
-t
--track-ios
IO başına zaman deltalarını göster
-w karış
--kronometre=karış
için izleme izlerini göster karış belirtilen -- yayılma alanı şu olabilir:
bitiş zamanı -- 0'dan XNUMX'a kadar olan izleri göster bitiş zamanı (ns cinsinden)
or
başlangıç:bitiş zamanı -- Zamandan gelen izleri göster başlama bitiş zamanı boyunca (ns cinsinden).
-v
--ayrıntılı
Marjinal hatalar üzerinde daha ayrıntılı marjinal
-V
--versiyon
Ekran sürümü
İZ EYLEMLER
Aşağıdaki izleme eylemleri tanınır:
C -- tamamlamak Daha önce yayınlanan bir istek tamamlandı. Çıktı detaylandıracak
bu talebin sektörü ve boyutu ile başarısı veya başarısızlığı.
D -- ihraç Daha önce blok katmanı kuyruğunda veya i/o'da bulunan bir istek
zamanlayıcı sürücüye gönderildi.
I -- eklenen Dahili programa eklenmek üzere i/o planlayıcıya bir istek gönderiliyor.
kuyruk ve daha sonra sürücü tarafından servis. İstek şu anda tamamen oluşturulmuştur.
Q -- Kuyruğa Bu notlar, verilen konumda i/o'yu kuyruğa alma niyetindedir. Gerçek bir istek yok
Henüz.
B -- sekti Buna ekli veri sayfaları bio donanım tarafından erişilemez ve
daha düşük bir bellek konumuna geri döndürülmelidir. Bu, i/o'da büyük bir yavaşlamaya neden olur
performans, çünkü verilerin çekirdek arabelleklerine/aralarından kopyalanması gerekir. Genellikle bu olabilir
daha iyi donanım kullanılarak düzeltildi - daha iyi bir giriş/çıkış denetleyicisi veya
bir IOMMU.
M -- Arka birleştirme sınırında sona eren, önceden eklenmiş bir istek var.
bu giriş/çıkış başlar, böylece giriş/çıkış planlayıcısı bunları birleştirebilir.
F -- ön birleştirme Geri birleştirme ile aynı, ancak bu giriş/çıkış daha önce eklenen bir yerde biter
istekler başlar.
M -- ön or Arka birleştirme Yukarıdakilerden biri
M -- ön or Arka birleştirme Yukarıdakilerden biri.
G -- almak talep Bir blok cihazına herhangi bir türde istek göndermek için, bir yapı talep konteyner
önce tahsis edilmelidir.
S -- uyku Kullanılabilir istek yapısı mevcut değildi, bu nedenle ihraççının beklemesi gerekiyor
serbest bırakılacak biri.
P -- fiş G/Ç önceden boş bir blok aygıt kuyruğuna kuyruğa alındığında, Linux
Bu verilere ihtiyaç duyulmadan önce gelecekteki ios'un eklenmesi beklentisiyle sıra.
U -- fişten Cihazda zaten kuyruğa alınmış bazı istek verileri, istek göndermeye başlayın.
sürücü. Bu, bir zaman aşımı süresi geçtiğinde otomatik olarak gerçekleşebilir (bir sonraki girişe bakın)
veya sıraya bir dizi istek eklenmişse.
T -- fişten gereken için kronometre Fişi taktıktan sonra kuyruğa alınan G/Ç'yi kimse istemezse
sıra, Linux tanımlanmış bir süre geçtikten sonra otomatik olarak fişini çekecektir.
X -- bölmek Baskın veya cihaz eşleyici kurulumlarında, gelen bir giriş/çıkış, bir cihazı veya
iç bölge ve servis için daha küçük parçalara ayrılması gerekiyor. Bu olabilir
bu raid/dm aygıtının hatalı kurulumundan kaynaklanan bir performans sorununu belirtir, ancak
sadece normal sınır koşullarının bir parçası olun. dm bu konuda oldukça kötü ve klonlayacak
çok sayıda i/o.
A -- remap Yığılmış cihazlar için, gelen i/o, i/o'da altındaki cihaza yeniden eşlenir
yığın. Yeniden eşleme eylemi, tam olarak neyin neye yeniden eşlendiğini ayrıntılarıyla anlatır.
ÇIKTI TANIM VE BİÇİMLENDİRME
blkparse çıktısı, özel kullanım için özelleştirilebilir - özellikle,
çıktının ayrıştırılması ve/veya çıktı alanlarının kullanıcının görmek istedikleriyle sınırlandırılması. için veriler
çıktı alınabilecek alanlar şunları içerir:
a Eylem, (küçük) bir dize (1 veya 2 karakter) -- daha fazla ayrıntı için aşağıdaki tabloya bakın
c CPU kimliği
C Komuta
d RWBS alanı, (küçük) bir dize (1-3 karakter) -- daha fazla ayrıntı için aşağıdaki bölüme bakın
D Etkinlik cihazının büyük ve küçük numaralarını içeren 7 karakterli dize
(virgülle ayrılmış).
e Hata değeri
m Az sayıda olay cihazı.
M Olay cihazının büyük sayısı.
n Blok sayısı
N Bayt sayısı
p Işlem kimliği
P Paket verilerini göster -- onaltılık değerler dizisi
s sıra numaraları
S sektör numarası
t Zaman damgası (nanosaniye)
T Zaman damgası (saniye)
u Mikrosaniye cinsinden geçen değer (-t komut satırı seçeneği)
U Yük işaretsiz tamsayı
Kullanıcının isteğe bağlı olarak alan görüntüleme genişliği ve isteğe bağlı olarak sol-
hizalanmış belirteç Bunlar, bir '%' karakteri ile alan belirteçlerinden önce gelir ve ardından
isteğe bağlı sola hizalama belirteci (-), ardından genişlik (ondalık sayı) ve ardından
alan.
Bu nedenle, sola hizalanmış 12 karakterlik bir alanda komutu belirtmek için:
-f "%-12C"
EYLEM TANIMLAYICILAR
Aşağıdaki tablo, çıktısı alınabilecek çeşitli eylemleri göstermektedir:
Bir IO farklı bir cihaza yeniden eşlendi
B IO geri döndü
C IO tamamlama
Sürücüye verilen D IO
F IO cephesi, kuyruktaki istekle birleştirildi
G İstek al
İstek kuyruğuna eklenen I IO
M IO geri kuyrukta istekle birleştirildi
P Fiş talebi
Q IO, istek kuyruğu kodu tarafından işlenir
S Uyku isteği
T Zaman aşımı nedeniyle fişi çekin
U Fişten çekme isteği
X Bölme
RWBS TANIM
Bu, en az bir karakter içeren küçük bir dizedir (okumak için 'R', yazmak için 'W' veya
Blok atma işlemi için 'D' ve isteğe bağlı olarak bir 'B' (bariyer işlemleri için) veya
'S' (senkron işlemler için).
DEFAULT ÇIKTI
Standart başlık (veya görüntülenen ilk alanlar) şunları içerir:
"%D %2c %8s %5T.%9t %5p %2a %3d"
Bunu yıkmak:
%D Etkinliğin aygıtını büyük/küçük olarak görüntüler: %3d,%-3d.
%2c CPU Kimliği (2 karakterli alan).
%8'ler Sıra numarası
%5T.%9t
Zaman damgasının saniye kısmı için 5 karakterli alan ve 9 karakterli bir alan
zaman damgasındaki nanosaniyeler için.
%5p İşlem kimliği için 5 karakterlik alan.
%2 A Eylemlerden biri için 2 karakterli alan.
%3 boyutlu RWBS verileri için 3 karakterli alan.
Bunu çalışırken görmek:
8,0 3 1 0.000000000 697 GW 223490 + 8 [kjournald]
Başlık, bu satırdaki 223490'a (başlangıç bloğu) kadar olan verilerdir. Varsayılan
tüm olay türleri için çıktı bu başlığı içerir.
DEFAULT ÇIKTI PER EYLEM
C -- tamamlamak
Bir yük varsa, bu, başlığı izleyen parantezler arasında sunulur,
ardından hata değeri gelir.
Yük yoksa, sektör ve blok sayısı sunulur (bir
araya artı (+) karakter). Eğer -t seçenek belirtildi, ardından geçen süre
sunuldu. Her iki durumda da, tamamlama için hata değeri takip eder.
B -- sekti
D -- ihraç
I -- eklenen
Q -- Kuyruğa
Bir veri yükü varsa, veri yükü bayt sayısı verilir ve ardından
parantez arasında onaltılık olarak yük.
Yük yoksa, sektör ve blok sayısı sunulur (bir
araya artı (+) karakter). Eğer -t seçenek belirtildi, ardından geçen süre
(parantez içinde) sunulmuştur. Her iki durumda da, bunu komut takip eder.
olayla ilişkili (köşeli parantezlerle çevrili).
F -- ön birleştirme
G -- almak talep
M -- Arka birleştirme
S -- uyku
Başlangıç sektörü ve blok sayısı çıktı olarak verilir (arada bir artı (+)
karakter), ardından olayla ilişkili komut (kare ile çevrili)
parantez).
P -- fiş
Olayla ilişkili komut (köşeli parantezlerle çevrili) çıktı olarak alınır.
U -- fişten
T -- fişten gereken için kronometre
Olayla ilişkili komut (köşeli parantezler içinde) çıktı olarak alınır,
ardından bekleyen isteklerin sayısı.
X -- bölmek
Orijinal başlangıç sektörü, ardından yeni sektör (eğik çizgiyle (/) ayrılmış)
çıktı, ardından olayla ilişkili komut (kare ile çevrili)
parantez).
A -- remap
Sektör ve uzunluk, orijinal cihaz ve sektör ofseti ile birlikte çıktı olarak alınır.
ÖRNEKLER
Cihazdaki i/o'yu izlemek için /dev/hda ve ayrıştırmak the çıktı için insan okunabilir biçim, kullanım
the takip etme komut:
% blktrace -d / dev / sda -o - | ayrıştırmak -i -
(görmek blktrace (8) daha fazla bilgi için). Bu aynı davranış aşağıdakilerle de elde edilebilir:
kolaylık komut dosyası iz. Komuta
% btrace /dev/sda
önceki komutla tamamen aynı etkiye sahiptir. Görmek iz (8) daha fazla bilgi için.
G/Ç'yi bir cihazda izlemek ve çıktıyı daha sonra işlemek üzere kaydetmek için ayrıştırmakKullanmak
blktrace bunun gibi:
% blktrace /dev/sda /dev/sdb
Bu, cihazlarda i/o'yu izleyecektir / dev / sda ve / Dev / SDB ve kaydedilen bilgileri kaydedin
dosyalarda sda ve sdb geçerli dizinde, iki farklı cihaz için,
sırasıyla. Bu izleme bilgisi daha sonra ayrıştırmak Yarar:
% blk ayrıştırma sda sdb
daha önce kaydedilmiş izleme bilgilerini insan tarafından okunabilir biçimde çıkaracak
standart.
YAZARLAR
ayrıştırmak Jens Axboe, Alan D. Brunelle ve Nathan Scott tarafından yazılmıştır. Bu adam sayfası
oluşturulan blktrace Bas Zoetekouw tarafından belgeler.
RAPORLAMA BÖCEK
Hataları şuraya bildir:[e-posta korumalı]>
TELİF HAKKI
Telif hakkı © 2006 Jens Axboe, Alan D. Brunelle ve Nathan Scott.
Bu ücretsiz bir yazılımdır. GNU koşulları altında kopyalarını yeniden dağıtabilirsiniz.
Genel Kamu Lisansıhttp://www.gnu.org/licenses/gpl.html>. GARANTİ YOKTUR,
yasaların izin verdiği ölçüde.
Bu kılavuz sayfası Bas Zoetekouw tarafından Debian için oluşturulmuştur. Şundan türetilmiştir:
yazarlar tarafından sağlanan belgeler ve bu belgeler altında kullanılabilir, dağıtılabilir ve değiştirilebilir.
GNU Genel Kamu Lisansı, sürüm 2.
Debian sistemlerinde, GNU Genel Kamu Lisansı metni şurada bulunabilir:
/usr/share/ortak lisanslar/GPL-2.
onworks.net hizmetlerini kullanarak blkparse'ı çevrimiçi kullanın