GNU/Linux >> Belajar Linux >  >> Linux

10 Contoh Perintah IPCS (Dengan Pengenalan IPC)

IPC adalah singkatan dari Inter-process Communication.

Teknik ini memungkinkan proses untuk berkomunikasi satu sama lain.

Karena setiap proses memiliki ruang alamat dan ruang pengguna yang unik, bagaimana proses berkomunikasi satu sama lain?

Jawabannya adalah Kernel, jantung dari sistem operasi Linux yang memiliki akses ke seluruh memori. Jadi kita dapat meminta kernel untuk mengalokasikan ruang yang dapat digunakan untuk berkomunikasi antar proses.

Proses juga dapat berkomunikasi dengan memiliki file yang dapat diakses oleh kedua proses. Proses dapat membuka, dan membaca/menulis file, yang membutuhkan banyak operasi I/O yang menghabiskan waktu.

Berbagai Jenis IPCS

Ada berbagai IPC yang memungkinkan suatu proses untuk berkomunikasi dengan proses lain, baik di komputer yang sama atau komputer yang berbeda di jaringan yang sama.

  • Pipa – Menyediakan cara bagi proses untuk berkomunikasi satu sama lain dengan bertukar pesan. Pipa bernama menyediakan cara bagi proses yang berjalan pada sistem komputer yang berbeda untuk berkomunikasi melalui jaringan.
  • Memori Bersama – Proses dapat bertukar nilai dalam memori bersama. Satu proses akan membuat sebagian memori yang dapat diakses oleh proses lain.
  • Antrian Pesan – Ini adalah daftar segmen memori yang terstruktur dan berurutan tempat proses menyimpan atau mengambil data.
  • Semaphore – Menyediakan mekanisme sinkronisasi untuk proses yang mengakses sumber daya yang sama. Tidak ada data yang dilewatkan dengan semaphore; itu hanya mengoordinasikan akses ke sumber daya bersama.

Contoh Perintah 10 IPCS

ipcs adalah perintah UNIX / Linux, yang digunakan untuk membuat daftar informasi tentang komunikasi antar-proses Perintah ipcs memberikan laporan tentang Sistem V IPCS (Antrian pesan, Semaphore, dan Memori bersama).

Contoh IPCS 1:Daftar semua fasilitas IPC

Perintah ipcs dengan opsi -a mencantumkan semua fasilitas IPC yang memiliki akses baca untuk proses saat ini. Ini memberikan detail tentang antrian pesan, semaphore dan memori bersama.

# ipcs -a

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0xc616cc44 1056800768 oracle    660        4096       0
0x0103f577 323158020  root      664        966        1
0x0000270f 325713925  root      666        1          2

------ Semaphore Arrays --------
key        semid      owner      perms      nsems
0x0103eefd 0          root      664        1
0x0103eefe 32769      root      664        1
0x4b0d4514 1094844418 oracle    660        204

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages
0x000005a4 32768      root       644        0            0

Semua fasilitas IPC memiliki kunci dan pengenal unik, yang digunakan untuk mengidentifikasi fasilitas IPC.

Contoh IPCS 2:Daftar semua Antrian Pesan

ipcs dengan opsi -q, hanya mencantumkan antrian pesan dimana proses saat ini memiliki akses baca.

$ ipcs -q

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages
0x000005a4 32768      root       644        0            0

Contoh IPCS 3. Daftar semua Semaphore

ipcs -s option digunakan untuk membuat daftar semaphore yang dapat diakses.

# ipcs -s

------ Semaphore Arrays --------
key        semid      owner      perms      nsems
0x0103eefd 0          root      664        1
0x0103eefe 32769      root      664        1
0x4b0d4514 1094844418 oracle    660        204

Contoh IPCS 4. Daftar semua Memori Bersama

Opsi ipcs -m dengan perintah ipcs mencantumkan memori bersama.

# ipcs -m

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0xc616cc44 1056800768 oracle    660        4096       0
0x0103f577 323158020  root      664        966        1
0x0000270f 325713925  root      666        1          2

Contoh IPCS 5. Informasi lengkap tentang fasilitas IPC

ipcs -i option memberikan informasi rinci tentang fasilitas ipc.

# ipcs -q -i 32768

Message Queue msqid=32768
uid=0   gid=0   cuid=0  cgid=0  mode=0644
cbytes=0        qbytes=65536    qnum=0  lspid=0 lrpid=0
send_time=Not set
rcv_time=Not set
change_time=Thu Aug  5 13:30:22 2010

Opsi -i dengan -q memberikan informasi tentang antrian pesan tertentu. Opsi -i dengan -s memberikan detail semaphore. Opsi -i dengan -m memberikan detail tentang memori bersama.

Contoh IPCS 6. Mencantumkan Batas untuk fasilitas IPC

ipcs -l option memberikan batasan sistem untuk setiap fasilitas ipc.

# ipcs -m -l

------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 67108864
max total shared memory (kbytes) = 17179869184
min seg size (bytes) = 1

Perintah di atas memberikan batasan untuk memori bersama. -l dapat digabungkan dengan -q dan -s untuk melihat batas antrian pesan dan semaphore masing-masing.

Opsi tunggal -l memberikan batasan untuk ketiga fasilitas IPC.

# ipcs -l

Contoh IPCS 7. Detail Pembuat Daftar dan Pemilik untuk Fasilitas IPC

ipcs -c option daftar pencipta userid dan groupid dan pemilik userid dan group id. Opsi ini dapat digabungkan dengan -m, -s, dan -q untuk melihat detail kreator untuk fasilitas IPC tertentu.

# ipcs -m -c

------ Shared Memory Segment Creators/Owners --------
shmid      perms      cuid       cgid       uid        gid
1056800768 660        oracle     oinstall   oracle     oinstall
323158020  664        root       root       root       root
325713925  666        root       root       root       root

Contoh IPCS 8. Id proses yang mengakses fasilitas IPC baru-baru ini

Opsi ipcs -p menampilkan id pembuat, dan id proses yang baru-baru ini mengakses fasilitas ipc terkait.

# ipcs -m -p

------ Shared Memory Creator/Last-op --------
shmid      owner      cpid       lpid
1056800768 oracle     16764      5389
323158020  root       2354       2354
325713925  root       20666      20668

-p juga dapat digabungkan dengan -m,-s atau -q.

Contoh IPCS 9. Waktu Terakhir Diakses

ipcs -t option menampilkan waktu operasi terakhir di setiap fasilitas ipc. Opsi ini juga dapat dikombinasikan dengan -m, -s atau -q untuk mencetak untuk jenis fasilitas ipc tertentu. Untuk antrian pesan, opsi -t menampilkan waktu pengiriman dan penerimaan terakhir, untuk memori bersama ini menampilkan lampiran terakhir (bagian dari memori) dan cap waktu yang dilepas dan untuk semaphore menampilkan operasi terakhir dan detail waktu yang diubah.

# ipcs -s -t

------ Semaphore Operation/Change Times --------
semid    owner      last-op                    last-changed
0        root        Thu Aug  5 12:46:52 2010   Tue Jul 13 10:39:41 2010
32769    root        Thu Aug  5 11:59:10 2010   Tue Jul 13 10:39:41 2010
1094844418 oracle      Thu Aug  5 13:52:59 2010   Thu Aug  5 13:52:59 2010

Contoh IPCS 10. Status penggunaan saat ini

ipcs dengan perintah -u menampilkan penggunaan saat ini untuk semua fasilitas IPC. Opsi ini dapat digabungkan dengan opsi khusus untuk menampilkan status fasilitas IPC tertentu.

# ipcs -u

------ Shared Memory Status --------
segments allocated 30
pages allocated 102
pages resident  77
pages swapped   0
Swap performance: 0 attempts     0 successes

------ Semaphore Status --------
used arrays = 49
allocated semaphores = 252

------ Messages: Status --------
allocated queues = 1
used headers = 0
used space = 0 bytes

Linux
  1. Perintah Tee Linux dengan Contoh

  2. Perintah JQ di Linux dengan Contoh

  3. Perintah Gratis di Linux Dijelaskan Dengan Contoh

  1. Perintah kepala Linux dengan Contoh

  2. Perintah Nohup dengan Contoh

  3. Contoh Perintah ipcs di Linux

  1. Perintah wc Linux dengan Contoh

  2. Perintah sortir Linux dengan Contoh

  3. Perintah Echo di Linux (Dengan Contoh)