주간 베스트 월간 베스트 3개월 베스트 베스트 게시물
꽃배달 한국, 중국 전지역배송

Android IPC(Inter Process Communication)

hmily1129 | 2013.05.20 10:09:31 댓글: 0 조회: 2021 추천: 0
분류웹 프로그래밍 https://life.moyiza.kr/itstudy/1856744

IPC 는 Inter Process Commuication 의 약자로 프로세스

혹은 쓰레드가 데이터를 교환하는 기법 전체를 의미합니다.


프로세스의 데이터를 주고받는다면, 

프로세스의 메모리에 직접 접근하면 되는데 굳이 

IPC 기법이 필요한 이유는 무엇일까요?


다음과 같은 경우를 생각해봅시다.


프로세스1, 프로세스2 라는 두개의 프로세스가 있다고 가정할 때,

프로세스2 가 프로세스1 의 메모리를 직접 접근한다면,

특히 프로세스1의 스택부분을 건드리게 된다면,

경우에 따라서는 시스템의 치명적인 오류가 될 수도있습니다.

따라서 OS의 커널은 일반적으로, 임의의 프로세스가 다른 프로세스의

메모리 주소 공간에 접근 할 수 없도록 조치를 취해 놓았습니다.

이것을 OS의 보호(Protected) 모드라고 합니다.


보호모드에서는 프로세스 마다 메모리가 독립적으로 할당되며,

프로세스끼리 메모리 접근을 할 수가 없습니다.


하지만 경우에 따라서는 프로세스 간 데이터를 공유해야 하는 경우가 있습니다.


예를 들어 LCD에 출력할 문자 메시지를 전달하거나,

혹은 센서로부터 읽은 값을 다른 프로세스에게 전달 하는 등 다양한 상황이 존재합니다.


따라서 프로세스의 주소공간을 보호 하는 동시에, 

프로세스 간 서로 데이터를 주고 받는 기법이 필요해지는데,

이러한 이유로 생기게 된 것이 IPC 기법입니다.


그렇다면 IPC 기법에는 어떠한 것들이 있을까요?

IPC 기법은 OS에 의존적이라고 할 수 있습니다.

그럴수 밖에 없는 것이 IPC 기법은 OS가 보호모드를 선택한 대신

데이터 공유 방법을 제시하는 것이니까요.


다음은 위키에서 참조한 IPC의 종류 입니다.


Method

제공 되는 OS

File

대부분의 OS 시스템

Signal

대부분의 OS 시스템.

몇몇 시스템, 예를 들어 윈도우의 경우 Signal C 런타임 라이브러리로 사용 되지만 IPC 기법으로 제공되지 않음.

Socket

대부분의 OS 시스템

Message

Queue

대부분의 OS 시스템

Pipe

모든 POSIX 시스템, Windows

Named Pipe

모든 POSIX 시스템, Windows

Semaphore

모든 POSIX 시스템, Windows

Shared Memory

모든 POSIX 시스템, Windows

Message Passing

MPI 패러다임이 사용된 시스템, Java RMI, COBRA

Memory mapped file

모든 POXIS 시스템, Windows.

임시 파일을 사용하는 경우 Race Condition 문제를 야기함


위에 표를 보면 POSIX 시스템 이라는 것이 있습니다.


윈도우즈야 항상 주로 사용하므로 알고 있었는데,

POSIX 시스템은 무엇일까요?


POSIX 시스템은 Portable Operating System Interface for UNIX 의 약자입니다.

결국 UNIX 환경 인터페이스를 지원하는 OS 시스템이라는 이야기입니다.


리눅스를 포함하여, 임베디드 시스템에서 사용하는 다양한 OS 들이 

POSIX 시스템으로 되어 있습니다.


이것으로 IPC의 개념정리를 마치고, 

다음 포스팅에서는 IPC 기법 중 Shared Memory 를 포스팅 하겠습니다.

 
추천 (0) 선물 (0명)
IP: ♡.101.♡.52
3,006 개의 글이 있습니다.
제목 글쓴이 날짜 조회
관리자
2003-09-20
11662
관리자
2003-09-20
11213
관리자
2003-09-20
20255
지구인
2010-08-27
19109
지구인
2009-09-07
13400
SOLIDH
2010-01-29
15417
엔죠라이프
2004-10-07
16521
CHOSUN
2014-01-11
2438
CHOSUN
2014-01-07
2595
CHOSUN
2014-01-07
2378
CHOSUN
2014-01-07
2047
CHOSUN
2014-01-07
1790
CHOSUN
2014-01-07
1611
CHOSUN
2014-01-07
1176
즐거운개굴
2013-09-29
3001
hmily1129
2013-09-03
4909
hmily1129
2013-08-29
5362
hmily1129
2013-08-26
4792
hmily1129
2013-08-25
3634
hmily1129
2013-08-24
4162
hmily1129
2013-08-23
4321
hmily1129
2013-08-23
3592
hmily1129
2013-08-22
1886
hmily1129
2013-08-10
1622
hmily1129
2013-08-05
2149
hmily1129
2013-08-05
2089
hmily1129
2013-07-30
1462
CHOSUN
2013-07-23
1941
모이자 모바일