인생이 쓰다!인생쓰

공부/개발록

프로세스 간 통신 ( Interporsess Communication

Johnal 2021. 3. 12. 14:57
반응형

프로세스 간 통신(Inter-Process Communication, IPC)이란 프로세스가 서로 통신 할 수 있도록 운영 체제에서 제공하는 메커니즘입니다. 이 통신에는 일부 이벤트가 발생했음을 다른 프로세스에 알리거나 한 프로세스에서 다른 프로세스로 데이터를 전송하는 프로세스가 포함될 수 있습니다. 

 

IPC

 

 

여기서 말하는 프로세스가 무엇인지 말하자면,

 

프로세스는 일반적으로 CPU에 의해 처리되는 사용자 프로그램 , 시스템 프로그램 즉 실행중인 프로그램을 의미하며 ,작업 또는 태스크 라고 합니다. 

 

프로세스

 

프로세스 간 통신에 대한 접근 방식은 여러가지가 있는데 

 

파이프(Pipe) 유닉스 계열 운영 체제에서 제공되는 병행성 메커니즘의 하나로서, 두 프로세스 생산자-소비자 모델에 따라 통신할 수 있게 해주는 원형 버퍼이다. 즉, 파이프는 한 프로세스가 쓰고 다른 프로세스가 읽는 선입선출 형태의 라 할 수 있다. 그리고 두 개의 파이프를 사용하여 두 프로세스 사이에 양방향 데이터 채널을 만들 수 있습니다. 

 

단뱡향 pipe

 

소켓(Socket) 은 네트워크에서 데이터를 보내거나 받기위한 끝점입니다. 이는 동일한 컴퓨터의 프로세스간에 전송 된 데이터 또는 동일한 네트워크의 다른 컴퓨터간에 전송 된 데이터에 해당됩니다. 대부분의 운영 체제는 프로세스 간 통신에 소켓을 사용합니다. 

 

시그널(SIGNAL)  프로세스나 동일 프로세스 내의 특정 스레드로 전달되는 비동기식 통보이다. 특정 이벤트가 발생했을 때 프로세스에게 전달하는 신호라고 생각하면 됩니다. 

 

파일(FILE) 은 디스크에 저장되거나 파일 서버에서 요청시 획득 할 수있는 데이터 레코드입니다. 여러 프로세스가 필요에 따라 파일에 액세스 할 수 있습니다. 모든 운영 체제는 데이터 저장을 위해 파일을 사용합니다.

 

공유 메모리(Shared Memory)여러 프로세스에서 동시에 액세스 할 수있는 메모리입니다.이는 프로세스가 서로 통신 할 수 있도록 수행됩니다.

 

공유 메모리

 

 

메시지 큐(Message queue)는 여러 프로세스가 서로 연결하지 않고도 메시지 큐에 데이터를 읽고 쓸 수 있습니다. 메시지는받는 사람이 검색 할 때까지 큐에 저장됩니다. 메시지 큐는 프로세스 간 통신에 매우 유용하며 대부분의 운영 체제에서 사용됩니다.

 

메시지 큐

 

 

728x90
반응형

'공부 > 개발록' 카테고리의 다른 글

DNS와 Hosting  (0) 2021.05.20
인터넷,HTTP,Browsers 개념  (0) 2021.05.18
Backend란? 로드맵과 방향  (2) 2021.05.12
ES6(ES2015)와 JavaScript(자바스크립트)  (0) 2021.03.10
도메인 네임(Domain name)  (0) 2021.03.09