OracleStudy之--IPCS管理共享內(nèi)存

Oracle Study之--IPCS管理共享內(nèi)存

成都創(chuàng)新互聯(lián)公司是專業(yè)的永城網(wǎng)站建設(shè)公司,永城接單;提供成都網(wǎng)站設(shè)計、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行永城網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

Unix/linux下的共享內(nèi)存、信號量、隊列信息管理

在unix/linux下,經(jīng)常有因為共享內(nèi)存、信號量,隊列等共享信息沒有干凈地清除而引起一些問題。

查看共享信息的內(nèi)存的命令是:ipcs [-m|-s|-q]。

默認會列出共享內(nèi)存、信號量,隊列信息

-m列出共享內(nèi)存

-s列出共享信號量

-q列出共享隊列

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

-m刪除共享內(nèi)存

-s刪除共享信號量

-q刪除共享隊列

 

案例分析:

[oracle@trade_as02 ~]$ ipcs -a
------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status     
0x30024289 32768      futures   777        528384     1                       
0xca2fd414 491521     oracle    640        1730150400 16                   
 
------ Semaphore Arrays --------
key        semid      owner      perms      nsems     
0x00028009 0          futures   666        1         
0x0002800c 32769      futures   666        1         
0x30024003 262146     futures   777        3         
0x3002428a 294915     futures   777        2         
0x3002428b 327684     futures   777        2         
0x3002428c 360453     futures   777        2         
0x3002428d 393222     futures   777        2         
0x3002428e 425991     futures   777        2         
0x52dff7d0 3964936    oracle    640        151       
0x52dff7d1 3997705    oracle    640        151       
0x52dff7d2 4030474    oracle    640        151       
0x52dff7d3 4063243    oracle    640        151       
0x52dff7d4 4096012    oracle    640        151       
 
------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages

       共享內(nèi)存段有時不能馬上刪除,需使用這個內(nèi)存段的所有進程向OS發(fā)送detach命令時才有釋放,此時可以考慮刪除進程使用的信號量,幫助釋放共享內(nèi)存段

  

相關(guān)知識:信號量、資源釋放、ipcs、ipcrm

      信號量又稱為信號燈,它是用來協(xié)調(diào)不同進程間的數(shù)據(jù)對象的,而最主要的應(yīng)用是共享內(nèi)存方式的進程間通信。本質(zhì)上,信號量是一個計數(shù)器,它用來記錄對某個資源(如共享內(nèi)存)的存取狀況;共享內(nèi)存是運行在同一臺機器上的進程間通信最快的方式,因為數(shù)據(jù)不需要在不同的進程間復(fù)制。通常由一個進程創(chuàng)建一塊共享內(nèi)存區(qū),其余進程對這塊內(nèi)存區(qū)進行讀寫。在Linux系統(tǒng)下 ,常用的方式是通過shmXXX函數(shù)族來實現(xiàn)利用共享內(nèi)存進行存儲的。如Shmget,類似于 malloc函數(shù)

ipcs可用來顯示當(dāng)前Linux系統(tǒng)中的共享內(nèi)存段、信號量集、消息隊列等的使用情況。

命令示例:
ipcs -a或ipc 顯示當(dāng)前系統(tǒng)中共享內(nèi)存段、信號量集、消息隊列的使用情況;
ipcs -m 顯示共享內(nèi)存段的使用情況;
ipcs -s 顯示信號量集的使用情況;
ipcs -q 顯示消息隊列的使用情況;

ipcrm可用來刪除對應(yīng)的共享內(nèi)存段、信號量、消息隊列;

命令示例:
ipcrm -s semid 刪除對應(yīng)的信號量集
ipcrm -m shmid 刪除對應(yīng)的共享內(nèi)存段
ipcrm -q msqid 刪除對應(yīng)的消息隊列
ipcrm本身只能實現(xiàn)單個資源的刪除,利用以下命令可實現(xiàn)批量刪除:
1.ipcs -s|grep 用戶名|cut -d" " -f2|xargs -n1 ipcrm -s
2.ipcs -s|awk '/用戶名/{print $2}'|xargs -n1 ipcrm -s
3.ipcs -s|awk '/用戶名/{system("ipcrm -s "$2)}'
4.for i in echo `ipcs|grep 用戶名|cut -d" " -f2`; do ipcrm -s $i; done

更深入的了解:

Oracle 內(nèi)存段參數(shù)設(shè)定:

[root@rh7 ~]# sysctl -p

net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

 Oracle Study之--IPCS管理共享內(nèi)存

 

當(dāng)前名稱:OracleStudy之--IPCS管理共享內(nèi)存
當(dāng)前URL:http://www.muchs.cn/article4/jsocoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、軟件開發(fā)、網(wǎng)站內(nèi)鏈外貿(mào)網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站網(wǎng)站設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計