IPC   InterProcess Communication   프로세스간 통신

(2018-04-10)
1. IPC (프로세스통신)
  
  ㅇ 실행 프로세스 간에 통신을 가능케하는 메커니즘
     - 네트워크화(Networked)/분산된(Distributed) 컴퓨터들 간에 또는 멀티타스킹 운영체제
       에서 각각 실행되는 프로세스 간에 정보를 교환하는 것


2. IPC 구현 기법들 구분

  ㅇ 대표적인 주요 기법 둘
     - 공유 메모리 기법 : 협력적 프로세스들이 공유 메모리 영역을 통해 데이터 교환 
        . 충돌 가능성 있으나, 일반적으로 더 빠르고 커널 도움이 필요 없음
     - 메세지 전달 기법 : 협력적 프로세스 간에 메세지 교환
        . 충돌하지 않으나, 적은 양의 데이터 교환 위주 (분산성 프로세스에 보다 더 유리)

  ㅇ 유닉스 초기 IPC 구현 3가지 기법 
     - 공유 메모리 (Shared Memory) : 다중 프로세스들이 가상 메모리(Virtual Memory)를 공유
        . 협력 프로세스들 간에 공유되는 메모리 영역이 구축됨
     - 세마포어 (Semaphore)        : 공유 자료에 대한 접근을 통제하는 일종의 카운터
     - 메세지  (Message Queue)

  ㅇ 메세지 전달 (Message Passing)에 기반을 둔 기법들
     - 시그널 (Signal) : 실시간으로 프로세스이벤트 발생을 알리기 위함 
     - 세마포어 (Semaphore)        : 공유 자료에 대한 접근을 통제하는 일종의 카운터
     - 파이프 (Pipe)   : 2개의 프로세스 입출력을 직렬 연결하여 하나의 공유페이지를 제공
        . 파이프의 例 :  ls | pr   (ls를 수행한 표준출력이 pr의 표준입력으로 전달 됨)
     - 소켓 (Socket)   : 네트워크에 기반을 둔 IPC 메카니즘
        . 파이프 개념을 네트워크로 확장시킨 것

  ㅇ 원격지 프로세스 간에 함수의 호출에 기반을 둔 기법
     - RPC (Remote Procedure Call) : 클라이언트-서버 모델을 이용하는 기법
        . 한편, LPC (Local Procedure Call)는 동일 시스템내에서 호출 기법을 말함


3. 통신계층의 관점

  ㅇ IPC는 트랜스포트 계층(Layer 4) 또는 세션계층(Layer 5)에서 이루어짐


[IPC] 1. IPC(프로세스간 통신) 2. 세마포어 3. 공유 메모리 4. 파이프 5. Named Pipe 6. 소켓
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
      1.   운영체제(일반)
      2.   프로세스
      3.   윈도우즈
      4.   UNIX (LINUX)
        1.   UNIX 일반
        2.   UNIX 프로세스
        3.   메모리 관리
        4.   IPC
          1.   1. IPC(프로세스간 통신)
              2. 세마포어
              3. 공유 메모리
              4. 파이프
              5. Named Pipe
              6. 소켓
        5.   UNIX 장치
        6.   UNIX 파일시스템
        7.   UNIX 유틸리티
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공업일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록(시험중)     참고문헌