程序管理基本命令

2021-09-26 20:43:57 字數 1330 閱讀 8032

unix/linux下的共享記憶體、訊號量、佇列資訊的管理方法

管理命令

1.檢視共享資訊的記憶體的命令是:ipcs [-m|-s|-q]

缺省會列出共享記憶體、訊號量,佇列資訊.

-m列出共享記憶體,-s列出共享訊號量,-q列出共享佇列

2.清除命令是:ipcrm [-m|-s|-q] id

-m 刪除共享記憶體,-s刪除共享訊號量,-q刪除共享佇列。

共享記憶體段有時不能馬上刪除,需使用這個記憶體段的所有程序向os傳送detach命令時才有釋放,此時可以考慮刪除程序使用的訊號量,幫助釋放共享記憶體段

關鍵知識:訊號量、資源釋放、ipcs、ipcrm

訊號量又稱為訊號燈,它是用來協調不同程序間的資料物件的,而最主要的應用是共享記憶體方式的程序間通訊。

本質上,訊號量是乙個計數器,它用來記錄對某個資源(如共享記憶體)的訪問狀況;

共享記憶體是執行在同一臺機器上的程序間通訊最快的方式,因為資料不需要在不同的程序間複製。

通常由乙個程序建立一塊共享記憶體區,其餘程序對這塊記憶體區進行讀寫。在linux系統下 ,常用的方式是通過shm***函式族來實現利用共享記憶體進行讀寫。

相關知識

ipcs可用來顯示當前linux系統中的共享記憶體段、訊號量集、訊息佇列等的使用情況。

命令示例:

ipcs -a或ipc 顯示當前系統中共享記憶體段、訊號量集、訊息佇列的使用情況;

ipcs -m顯示共享記憶體段的使用情況;

ipcs -s顯示訊號量集的使用情況;

ipcs -q顯示訊息佇列的使用情況;

ipcrm可用來刪除對應的共享記憶體段、訊號量、訊息佇列; 命令示例:

ipcrm -s semid刪除對應的訊號量集

ipcrm -m shmid刪除對應的共享記憶體段

ipcrm -q msqid刪除對應的訊息佇列

ipcrm本身只能實現單個資源的刪除,利用以下命令可實現批量刪除:

1.ipcs -s|grep 使用者名稱|cut -d" " -f2|xargs -n1 ipcrm -s

2.ipcs -s|awk 『/使用者名稱/』|xargs -n1 ipcrm -s

3.ipcs -s|awk 『/使用者名稱/』

4.for i in echo ipcs|grep 使用者名稱|cut -d" " -f2; do ipcrm -s $i; done

Linux基本命令 檔案處理2程序管理

1 pkill pkill httpd 關閉所有httpd程序 2 pgrep pgrep httpd 查詢所有httpd程序 3 優先順序 nice 5 etc rc.d init.d httpd start 修改httpd的啟動優先順序為5 renice 6 pid 修改程序為pid的優先順序為...

磁碟管理基本命令

df 選項 選項 l僅顯示本地磁碟 預設 a顯示所有檔案系統的磁碟使用情況,包含比如 proc h以1024進製計算最合適的單位顯示磁碟容量 h以1000進製計算最合適的單位顯示磁碟容量 t顯示磁碟分割槽型別 t顯示指定型別檔案系統的磁碟分割槽,如df t ext4 x不顯示指定型別檔案系統的磁碟分...

Mysql 基本命令管理

mysql建立使用者與授權 mysql5.0 一,建立使用者 命令 create user username host identified by password 說明 username 你將建立的使用者名稱,host 指定該使用者在哪個主機上可以登陸,如果是本地使用者可用localhost,如果...