System V IPC의 아키텍처와 커널 관리 방식
System V IPC는 세 가지 프로세스 간 통신 메커니즘(메시지 큐, 세마포어, 공유 메모리)을 제공하며, 각 객체는 커널이 전역 식별자(IPC ID)를 할당합니다. IPC 리소스는 32비트 IPC 키로 식별되며, 별도의 32비트 IPC 식별자를 통해 실제 작업에 사용됩니다. 이 아키텍처는 ftok() 함수를 통해 특정 파일 경로와 프로젝트 ID를 기반으로 일관된 키를 생성하여 서로 다른 부모 프로세스를 가진 프로세스들도 같은 IPC 리소스를 공유할 수 있게 합니다.
커널 지속성과 리소스 정리의 중요성
IPC 리소스는 명시적으로 제거되지 않으면 메모리에 유지되어 시스템 종료까지 사용 가능합니다. System V IPC 객체는 커널에 명시적으로 삭제되거나 시스템이 재부팅될 때까지 지속되므로 사용 후 정리가 매우 중요합니다. ipcs 명령으로 활성 객체를 확인하고 ipcrm으로 수동 삭제해야 하며, IPC 네임스페이스를 통해 컨테이너나 가상화 환경에서 프로세스 격리를 구현할 수 있습니다.