728x90
프로세스끼리는 데이터 공유를 하고있지 않음
그러므로 데이터를 주고 받기 위해 IPC를 사용한다.
크게 공유메모리 방식과 메시지 전달방식으로 나뉨
IPC란?
프로세스는 각자 자신만의 독립적인 주소 공간을 가지는데 다른 프로세스가 이 주소공간을 참조할수 없다.
이때 프로세스끼리 데이터를 주고 받을수 있게 도와주는게 IPC
크게 공유메모리와 메시지 전달방식으로 나뉨
공유메모리
- 프로세스들이 주소 공간 일부 공유
- 공유한 메모리 영역에 읽기/쓰기를 통해서 통신
- 커널에 공유 메모리 할당을 요청
- 공유 메모리가 구축되면 커널 도움 없이 접근이 가능
- 빠르다는 장점 하지만 충돌 회피 해야함
메시지 전달방식
- system call(프로세스가 커널에 요청)을 사용하여 구현
- 커널을 통해 send와 receive를 제공 받음
- 프로세스1이 보내고 싶은 메시지를 커널에보내면 프로세스2에게 커널이 데이터를 보내줌
- 속도가 조금 느리지만 충돌을 회피할 필요가 없음 (적은양의 데이터를 교환하는데 유용)
'CS Study' 카테고리의 다른 글
[네트워크] 쿠키 vs 세션 (0) | 2024.09.26 |
---|---|
[운영체제] 멀티 프로세스/스레드의 동기화 문제 해결법 (0) | 2024.09.24 |
[운영체제] Multi Process vs Multi Thread (0) | 2024.09.13 |
[운영체제] Multi thread (0) | 2024.09.13 |
[운영체제] Multi process (0) | 2024.09.12 |