shmat
[Unix Programming] Shared Memory
[Unix Programming] Shared Memory
2021.12.13Shared Memory는 여러 process가 동시에 접근할 수 있는 메모리로, 두 개 이상의 process가 물리적 메모리의 일부를 공유한다. 여기서 주의할 점은 아무 process가 접근할 수 있는 것이 아니라, 잘 제어된 함수를 통해 요청한 process만 접근이 가능하다. Shared Memory는 앞에서 봤던 IPC 기법들 중에서 가장 빠르고 효율적이다. Shared Memory 기법의 사용 방법에 대해 간략히 살펴보면, 먼저 shmget 함수를 통해 접근 가능한 메모리 공간 할당을 요청한다. 그다음 shmat 함수를 통해 논리 메모리에 shmget을 통해 얻은 물리 메모리를 mapping 시켜준다. 마지막으로 사용하지 않으면 shmdt 함수를 호출하여 논리 메모리를 통해 물리 메모리에 접근하..