본문 바로가기

□컴퓨터 관련/★Linux

공유메모리 사용법

UNIX / LINUX상에서 프로세스가 서버다운같은 예기치 못한 상황이나,
프로세스 실행중 문제가 생겼을경우 오류가 나면서 실행이 안되는 경우가 발생한다.
이럴때는 ipcs로 해당 프로세스를 확인후에 삭제/재실행을 하면 정상적으로 작동한다.

* ipcs 사용법
ipcs는 활동중인 process간 통신 기능에 대한 정보를 출력한다.
# ipcs  (리스트 확인)

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status     
0x0105593c 32768      root      600        1336       51                     

------ Semaphore Arrays --------
key        semid      owner      perms      nsems    
0x0105593c 32768      root      600        11       

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages

# ipcs -q (queue 확인)
# ipcs -m (shard memory 확인)
# ipcs -s (semaphore 확인)

* ipcrm 사용법 (삭제)
# ipcrm -q ID (해당 queue 삭제)
# ipcrm -m ID (해당 memory 삭제)
# ipcrm -s ID (해당 semaphores 삭제)

공유 메모리가 attach, detach를 거치면서 free과정까지 와야 완벽히 해제된다.
가상공간에서도 위에명령어는 된다..

명령어가 없을경우 bin에서 복사해와서 쓰면 문제없음!!