728x90
다수의 프로세스가 실행되는 방식은 2가지이다.
- concurrent방식:
프로세스간에 서로 독립적으로 실행되어 메모리의 간섭이 없고 CPU 스케줄링에 따라 실행되므로 서로 영향을 미치지 않는 선에서 실행된다. 즉, 서로 독립적으로 실행돼, 공유하는 것이 없다.
- cooperation 방식:
부모 프로세스와 자식 프로세스간의 커뮤니케이션이 있는 방식이다. 이러한 방식은 커뮤니캐이션 부분 때문에 오류가 생긴다. 이러한 문제를 IPC를 통해 해결할 수 있다.
IPC란, 프로세스 간의 통신을 뜻한다.
IPC는 데이터를 공유하는 방식이 2가지 있다. shared memory와 message passing이다.
- shared memory
프로세스는 자신만의 메모리 영역을 가지고 있다. 이 메모리 영역은 다른 프로세스가 접근할 수 없다.
shared memory는 프로세스간 메모리 영역을 공유해서 사용할 수 있도록 허용하여 프로세스간에 데이터를 공유할 수 있다.
- message passing
OS에서 관리되는 message queue를 이용하여 프로세스간에 데이터를 공유하는 방식이다. 데이터를 수송신 할 때마다 OS에 접근해야하기 때문에 system call이 빈번하게 일어난다.


728x90
'STUDY > 운영체제' 카테고리의 다른 글
| [운영체제] CPU 스케줄링 (0) | 2022.01.17 |
|---|---|
| [운영체제] 쓰레드 (thread) (0) | 2022.01.10 |
| [운영체제] 프로세스 (0) | 2021.10.18 |
| [운영체제] 컴퓨터 시스템 구조 (0) | 2021.10.12 |
| [운영체제] 운영체제란? (0) | 2021.10.11 |