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,如果...