티스토리 뷰

● 프로세스 통신

- 프로세스는 독립적으로 실행되기도 하지만 다른 프로세스와 데이터를 주고 받으며 통신을 하는 경우도 있다.

- 여기서 '통신'은 2가지가 있다.

1. 하나의 컴퓨터 내에서 실행되는 다른 프로세스와 통신
2. 네트워크로 연결된 다른 컴퓨터에 있는 프로세스와 통신

● 프로세스 간 통신 종류

1. 하나의 컴퓨터 내에서 서로 다른 프로세스 간 통신(파일과 파이프를 이용한 통신)

- 파일 : 통신을 하려는 프로세스들이 하나의 파일을 이용해 내용을 읽고 쓰는 방법이다.

출처 - 인프런, 그림으로 쉽게 배우는 운영체제

- 파이프 : OS(운영체제)가 생성한 파이프를 이용해 데이터를 읽고 쓰는 방법이다.

출처 - 인프런, 그림으로 쉽게 배우는 운영체제

 

2. Thread를 이용한 통신

출처 - 인프런, 그림으로 쉽게 배우는 운영체제

※ 내용을 보면 이건 Thread 간 통신인데 이게 프로세스 간 통신이 맞나 강사에게 질문을 올렸는데 Thread 간 통신(프로세스 내부 통신)이 맞다고 한다.

※ 즉, 이건 프로세스 간 통신에 대한 방법이 아니니 주의하자!

- 하나의 프로세스 내에서 Thread 간 통신을 하는 방법이다.

- Thread는 코드, 데이터, heap 영역을 공유하고 stack은 각자 자신의 것을 가지고 있다.

- 여기서 데이터 영역에 있는 전역변수나 heap을 이용하면 통신이 가능하다.

 

3. 네트워크를 이용한 통신

- OS(운영체제)가 제공하는 소켓통신이나 다른 컴퓨터에 있는 함수를 호출하는 RPC(원격 프로시저 호출)를 이용해 통신하는 방법이 있다.

출처 - 인프런, 그림으로 쉽게 배우는 운영체제

 

cf) RPC(Remote Procedure Call)

https://ko.wikipedia.org/wiki/%EC%9B%90%EA%B2%A9_%ED%94%84%EB%A1%9C%EC%8B%9C%EC%A0%80_%ED%98%B8%EC%B6%9C

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함