Perintah Vmstat Linux

Perintah Vmstat Linux



Dalam panduan ini, kami akan mendemonstrasikan berbagai cara menggunakan perintah “vmstat” di Linux.

Prasyarat:

Untuk melakukan langkah-langkah yang ditunjukkan dalam panduan ini, Anda memerlukan komponen berikut:

  • Sistem Linux yang dikonfigurasi dengan benar. Untuk tujuan pengujian, pertimbangkan untuk menggunakan VM Linux .
  • Akses ke a pengguna non-root dengan hak istimewa sudo
  • Pemahaman dasar tentang antarmuka baris perintah

Memori Virtual di Linux

Memori fisik, juga disebut sebagai RAM, jumlahnya terbatas. Kernel bertanggung jawab untuk mendistribusikan ruang ini ke semua program yang sedang berjalan. Semua program yang berjalan (termasuk OS) berada di RAM.







Namun, jika permintaan memori lebih tinggi dari memori yang tersedia, sistem akan crash (atau program akan meminta lebih banyak ruang memori). Dalam sebagian besar situasi, hal ini merupakan hasil yang tidak diinginkan. Di sinilah memori virtual berperan.



Memori virtual mengacu pada ruang disk khusus pada HDD/SSD Anda yang dapat bertindak sebagai memori tambahan dalam situasi yang mengerikan. Karena berfungsi sebagai ruang RAM (tetapi sebenarnya tidak), maka dianggap sebagai “virtual”. Dalam sistem UNIX/Linux, ruang ini disebut sebagai ruang swap.



Kernel Linux memindahkan blok memori ke ruang swap dan mengambilnya kembali ke RAM jika diperlukan.





Performa memori virtual pasti lebih lambat dibandingkan memori fisik dan berbanding lurus dengan performa perangkat penyimpanan. Namun, dalam konfigurasi perangkat keras tertentu (misalnya menggunakan NVMe SSD), performanya mungkin setara dengan RAM.

Perintah Vmstat

Perintah “vmstat” adalah alat pemantauan yang melaporkan berbagai informasi tentang memori virtual. Ini tersedia di semua sistem Linux sebagai bagian dari paket “sysstat”.



Struktur perintah 'vmstat' adalah sebagai berikut:

$ vmstat < pilihan > < menunda > < menghitung >

Penggunaan Dasar

Jika dijalankan tanpa parameter apa pun, “vmstat” mencetak info sistem sejak boot terakhir:

$ vmstat

Outputnya disusun dalam enam segmen:

  • proses : Statistik proses yang sedang berjalan
    • R : Jumlah proses yang aktif
    • B : Jumlah proses tidur
  • Penyimpanan : Statistik penggunaan memori
    • swpd : Jumlah total memori virtual (ruang swap)
    • bebas : Ruang pertukaran yang tersedia
    • penggemar : Jumlah ruang swap yang digunakan sebagai memori penyangga sementara
    • cache : Total memori cache
  • menukar : Statistik tentang ruang swap
    • Ya : Tingkat pertukaran masuk
    • Jadi : Tingkat pertukaran
  • ini : Statistik I/O
    • dengan : Jumlah blok yang diterima dari perangkat blok
    • menjadi : Jumlah blok yang dikirim ke perangkat blok
  • sistem : Statistik penjadwalan
    • di dalam : Jumlah interupsi sistem
    • cs : Tingkat peralihan konteks
  • CPU : Berbagai statistik CPU
    • kita : CPU menghabiskan waktu pada proses non-kernel
    • Dan : CPU menghabiskan waktu pada proses kernel
    • pengenal : CPU menghabiskan waktu menganggur
    • dari : CPU menghabiskan waktu menunggu operasi I/O selesai
    • st : Waktu CPU yang digunakan oleh mesin virtual

Mengubah Unit Tampilan

Secara default, “vmstat” melaporkan nilai memori dalam kilobyte. Untuk mengubah unit, gunakan tombol “ -S ” bendera:

$ vmstat -S < argumen >

Di sini, “vmstat” mencetak nilai dalam megabyte.

Ada beberapa unit memori yang tersedia:

  • M : 1048576 byte (2^20 byte)
  • M : 1000000 byte (1000 kilobyte)
  • K : 1024 byte (1 megabita)
  • k : 1000 byte (1 kilobyte)

Pembaruan Statistik Berkelanjutan

Secara default, “vmstat” mencetak laporan satu kali. Namun, kita dapat menginstruksikan “vmstat” untuk memberikan laporan berkelanjutan pada interval waktu tertentu (dalam detik).

Struktur perintahnya adalah sebagai berikut:

$ vmstat < menunda >

Misalnya untuk mendapatkan update stats setiap 2 detik, perintahnya adalah sebagai berikut:

$ vmstat 2

Outputnya tidak akan berhenti kecuali diakhiri secara manual menggunakan “Ctrl + C”.

Alternatifnya, kita dapat menentukan “vmstat” untuk memberikan statistik beberapa kali:

$ vmstat < menunda > < menghitung >

Misalnya, untuk mendapatkan statistik yang diperbarui setiap 2 detik sebanyak 5 kali, perintahnya terlihat seperti ini:

$ vmstat 2 5

Memori Aktif dan Tidak Aktif

Memori aktif mengacu pada ruang memori yang sedang digunakan oleh suatu proses. Di sisi lain, memori tidak aktif mengacu pada ruang memori yang ditetapkan untuk proses yang tidak lagi berjalan.

Dengan menggunakan “vmstat”, kita dapat memeriksa jumlah memori aktif dan tidak aktif yang digunakan:

$ vmstat -A

Di sini, kolom “buff” dan “cache” masing-masing diganti dengan kolom “inact” dan “active”.

Memori dan Penjadwalan

Untuk mendapatkan laporan lebih detail tentang memori dan penjadwalan, gunakan perintah berikut:

$ vmstat -S

Di Sini:

  • Bagian 1: Bagian ini berkaitan dengan info sistem dasar seperti total memori fisik, memori aktif/tidak aktif, memori bebas/buffer/cache, dll.
  • Bagian 2: Berbagai statistik CPU
    • CPU yang tidak bagus berdetak : Berapa kali proses berprioritas tinggi menggunakan CPU.
    • CPU yang bagus berdetak : Berapa kali proses dengan prioritas lebih rendah menggunakan CPU.
    • CPU sistem berdetak : Berapa kali proses kernel menggunakan CPU.
    • CPU menganggur berdetak : Berapa kali CPU menganggur.
    • IO-tunggu CPU berdetak : Berapa kali CPU menunggu manajemen I/O.
    • IRQ : Berapa kali CPU menerima permintaan interupsi.
    • lembutirq : Berapa kali CPU menerima permintaan interupsi perangkat lunak.
    • kutu CPU yang dicuri : Berapa kali VM mencuri waktu CPU.
  • Bagian 3: Statistik halaman memori
  • Bagian 4: Penghitung acara

Garpu sejak Boot

Fork mengacu pada proses yang dihasilkan oleh proses yang ada. Untuk mendapatkan statistik jumlah garpu, jalankan perintah berikut:

$ vmstat -F

Statistik Disk dan Partisi

Perintah “vmstat” juga dapat memberikan info tentang aktivitas disk. Untuk mendapatkan ringkasan singkat aktivitas disk, jalankan perintah berikut:

$ vmstat -D

Untuk mendapatkan laporan aktivitas disk yang lebih detail (termasuk statistik baca/tulis), gunakan perintah berikut:

$ vmstat -D

Di Sini:

  • Membaca
    • total : Jumlah total pembacaan disk
    • digabungkan : Total jumlah pembacaan grup
    • sektor : Jumlah total sektor yang dibaca
    • MS : Jumlah total waktu untuk membaca data dari disk (dalam milidetik)
  • Menulis
    • total : Total jumlah penulisan disk
    • digabungkan : Jumlah penulisan grup total
    • sektor : Jumlah total sektor yang ditulis
    • MS : Jumlah total waktu untuk menulis ke disk (dalam milidetik)
  • IO
    • meletakkan : Total pembacaan/penulisan disk saat ini
    • detik : Jumlah waktu yang dihabiskan dalam operasi baca/tulis yang sedang berlangsung (dalam detik)

Perintah “vmstat” juga dapat menghasilkan laporan untuk partisi disk tertentu. Untuk mendapatkan laporan partisi, gunakan struktur perintah berikut:

$ vmstat -P < partisi_identifier >

Statistik Lempengan

Alokasi pelat dirancang untuk menjadi mekanisme yang efisien untuk alokasi memori objek. Dibandingkan dengan mekanisme sebelumnya, alokasi pelat menawarkan pengurangan fragmentasi memori (yang disebabkan oleh alokasi dan deallokasi memori).

Untuk memeriksa statistik pelat sistem, gunakan perintah “vmstat” berikut:

$ sudo vmstat -M

Perhatikan bahwa ini memerlukan izin root untuk melihat statistik.

Di Sini:

  • Cache : Nama data yang di-cache
  • pada satu : Jumlah objek yang aktif di Num cache
  • Total : Jumlah total objek dalam cache tertentu
  • Ukuran : Ukuran objek yang di-cache
  • Halaman : Jumlah halaman memori yang berisi objek yang di-cache

Kesimpulan

Dalam panduan ini, kami memamerkan berbagai cara menggunakan perintah “vmstat”. Selain memori virtual, “vmstat” juga dapat melaporkan statistik disk, fork, slab, dan banyak lagi.

Tertarik untuk mempelajari alat pemantauan sistem lainnya? Belajar lebih tentang htop , membunuh , hal , dll.

Selamat berkomputasi!