이번 주제는 IPC 즉 Inter Process Communication.
OS 에서 상당히 중요한 파트 중 하나다.
프로세스 간 통신을 의미한다.
프로세스 그 자체는 독립 된 실행 객체라고 할 수 있다. 즉 다른 프로세스의 영향을 받지 않는다. 그러므로 서로간에 통신을 하기 위해 무언 가 장치가 필요하다.
커널 영역에서 IPC 를 제공하고 프로세스는 커널이 제공하는 IPC 설비를 통해 프로세스 간 통신을 할 수 있다.
메시지 큐를 사용하여 송신 프로세스는 큐에 enqueue, 수신 프로세스는 큐에 dequeue 하며 상호간 통신한다.
프로세스 끼리 특정 메모리 영역을 공유하며 상호간 통신하는 방법이다.
같은 메모리 영역을 공유하니 데이터 자체를 공유할 수 있다.
하지만 이럴 경우 메모리 간에 동기화 에러가 날 수 있다. 그러므로 세마포어와 뮤텍스를 사용하여 이러한 문제를 해결한다.
간단하게 IPC에 대해 알아보았다. IPC란 무엇인 지, 어떤 종류가 있는 지를 알아보았다.
다음 포스팅은 OS의 입출력 관리에 대해 다뤄 보도록 하겠다.