溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統(tǒng)共享內存該如何理解

發(fā)布時間:2022-01-27 09:51:45 來源:億速云 閱讀:278 作者:kk 欄目:開發(fā)技術

這篇文章主要為大家分析了Linux系統(tǒng)共享內存該如何理解的相關知識點,內容詳細易懂,操作細節(jié)合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“Linux系統(tǒng)共享內存該如何理解”的知識吧。

共享內存在進程通信中會用到,共享內存是指兩個不同進程A、B共享內存的意思是,同一塊物理內存被映射到進程A、B各自的進程地址空間。

當下系統(tǒng)是Centos,執(zhí)行ipcs命令查看

Linux系統(tǒng)共享內存該如何理解

說明:

  • 第一列就是共享內存的key;

  • 第二列是共享內存的編號shmid;

  • 第三列就是創(chuàng)建的用戶owner;

  • 第四列就是權限perms;

  • 第五列為創(chuàng)建的大小bytes;

  • 第六列為連接到共享內存的進程數nattach;

  • 第七列是共享內存的狀態(tài)status。其中顯示“dest”表示共享內存段已經被刪除,但是還有用戶在使用它,當該段內存的mode字段設置為 SHM_DEST時就會顯示“dest”。當用戶調用shmctl的IPC_RMID時,內存先查看多少個進程與這個內存關聯(lián)著,如果關聯(lián)數為0,就會銷 毀這段共享內存,否者設置這段內存的mod的mode位為SHM_DEST,如果所有進程都不用則刪除這段共享內存。

具體的用法總結如下: 1、顯示所有的IPC設施

 # ipcs -a

2、顯示所有的消息隊列Message Queue

 # ipcs -q

3、顯示所有的信號量

 # ipcs -s

4、顯示所有的共享內存

 # ipcs -m

5、顯示IPC設施的詳細信息

 # ipcs -q -i id

id 對應shmid、semid、msgid等。-q對應設施的類型(隊列),查看信號量詳細情況使用-s,查看共享內存使用-m。

6、顯示IPC設施的限制大小

 # ipcs -m -l

-m對應設施類型,可選參數包括-q、-m、-s。

7、顯示IPC設施的權限關系

 # ipcs -c
 # ipcs -m -c
 # ipcs -q -c
 # ipcs -s -c

8、顯示最近訪問過IPC設施的進程ID。

 # ipcs -p
 # ipcs -m -p
 # ipcs -q -p

9、顯示IPC設施的最后操作時間

 # ipcs -t
 # ipcs -q -t
 # ipcs -m -t
 # ipcs -s -t

10、顯示IPC設施的當前狀態(tài)

 # ipcs -u

Linux上的ipcs命令,不支持UNIX上的-b、-o指令,同樣UNIX中不支持-l、-u指令,所以在編寫跨平臺的腳本時,需要注意這個問題。

刪除IPC

 ipcrm -m| -q| -s shm_id

例如,我們在以0x12345678為KEY創(chuàng)建了一個共享內存,可以直接使用ipcrm -M 0x12345678來刪除共享內存區(qū)域。

下面的命令可以釋放所有已分配的共享內存:

 ipcs -m | awk '$2 ~ /[0-9]+/ {print $2}' | while read s; do sudo ipcrm -m $s; done

Linux有哪些版本

Linux的版本有:Deepin、UbuntuKylin、Manjaro、LinuxMint、Ubuntu等版本。其中Deepin是國內發(fā)展最好的Linux發(fā)行版之一;UbuntuKylin是基于Ubuntu的衍生發(fā)行版;Manjaro是基于Arch的Linux發(fā)行版;LinuxMint默認的Cinnamon桌面類似Windows XP簡單易用;Ubuntu則是以桌面應用為主的Linux操作系統(tǒng)。

關于“Linux系統(tǒng)共享內存該如何理解”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI