Skip to content

[03-15] 운영체제 5편 - 프로세스 간 통신 (작성 중) #35

@Kjm04175

Description

@Kjm04175

서론

안녕하세요
오랜만에 뵙습니다.
Toeic speaking test를 end하고 return 했습니다.

사실 yesterday, i can write article이에요. but, i run away했습니다.

image

오늘은 #20 에 이어서 프로세스 간 통신을 다루어보도록 하겠습니다.

본론

프로세스 간 통신이란?

오늘도 열일하고 있는 컴퓨터 내부에는 많은 프로세스들이 존재합니다.
이 때 프로세스들이 서로 의사소통하는 것을 Inter Process CommunicationIPC라고 합니다.

혹자는 이렇게 말할 수도 있습니다.

"엥? Process간에 통신이 왜 필요한가요?"

좋은 질문입니다. 저 역시 뭔가를 배울 때, 이유를 아는 것과 모르는 것은 큰 차이가 있다고 생각해요.
하지만, 저는 오늘 강의를 하러 온 사람이 아니라 함께 공부하러 온 사람입니다.

같이 알아보도록 합시다.

소통을 한다는 것은 무슨 의미일까요? 프로세스 간 상호 정보를 주고 받을 수 있다는 것을 의미합니다. 이것은 곧, 모든 프로세스가 독립적으로 동작하지는 않는다는 의미죠.

프로세스는 다른 프로세스에 영향을 주거나 받을 수 있습니다.
이 때 주고 받는 영향의 전달 방식이 IPC인 것입니다.

IPC는 총 4개의 측면에서 장점이 존재합니다.

  • 정보의 공유 : 여러 사용자가 하나의 정보에 동시 접근을 했을 때, 이것을 가능하게 해줍니다.
  • 계산 속도 증가 : 작업을 분산해서 병렬 처리를 가능하도록 만듭니다.
  • 모듈성 : 시스템의 기능을 잘게 쪼개서 스레드 단위의 모듈 방식 시스템을 구축할 수 있습니다.
  • 편리성 : 사용자가 많은 작업을 동시에 수행할 수 있다.

결국 IPC는 작업을 분할하고, 다양한 방식으로 처리할 수 있게 만들어줍니다.

프로세스 간 통신의 방식

사실 IPC라는 것은 거창한게 아닙니다.
어떻게든 프로세스 간 정보를 전달하기만 하면 되는 것이죠.

하지만 가장 유명한 방식 둘을 소개해 드리도록 하겠습니다.

image

Shared Memory
shared memory는 프로세스 간 공유되는 메모리를 만들고, 이를 통해 정보를 교환하는 방식입니다.

Message Passing

결론

슈퍼 겁쟁이 모드로

참조

운영체제 IPC

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions