SMALL
Multi Programming vs Multi Processing
Multi Programming과 Multi Processing은 다른 개념입니다.
이전 글에서 살펴봤듯이 Multi Programming은 CPU 한 개가 여러 개의 프로그램을 번갈아 실행했었습니다.
CPU가 한 개이기 때문에 프로그램들을 번갈아 실행할 수 밖에 없는 것이죠.
따라서 Multi Programming에서는 두 개 이상의 프로그램이 동시에 실행될 수 없습니다.
하지만, Multi Processing은 프로세서가 여러 개 있어 여러 개의 프로그램이 동시에 실행될 수 있습니다.
그림에서 위가 Multi Programming을 나타낸 것이고, 아래가 Multi Processing을 나타낸 것입니다.
검은색으로 표시된 부분이 프로그램이 실행중인 것인데,
Multi Programming을 보면 Process1, Process2, Process3의 검은색 부분이 겹치지 않는 것을 볼 수 있고,
Multi Processing에서는 겹치는 것을 볼 수 있습니다.
Multi Programming처럼 프로그램들이 서로 시간대를 다르게 해 실행하는 것을 Concurrent Programming이라고 하고,
Multi Processing처럼 동시에 여러 프로그램이 실행하는 것을 Parallel Programming이라고 합니다.
✅ 정리
Multi Programming vs Multi Processing
Multi Programming | Multi Processing |
한 개의 CPU가 여러 개의 프로그램을 번갈아 실행한다 => 여러 개의 프로그램이 동시에 실행될 수 없다 => 이런 방식을 Concurrent Programming이라고 한다 |
여러 개의 CPU가 여러 개의 프로그램을 각각 실행한다 => 여러 개의 프로그램이 동시에 실행될 수 있다 => 이런 방식을 Parallel Programming이라고 한다 |
'운영체제' 카테고리의 다른 글
[운영체제] 운영체제의 구성 (0) | 2023.04.03 |
---|---|
[운영체제] Timesharing (0) | 2023.04.02 |
[운영체제] SMP(Symmetric Multi Processing) (0) | 2023.04.02 |
[운영체제] Uni Programming, Multi Programming (0) | 2023.04.01 |
[운영체제] 운영체제 개요 (0) | 2023.03.28 |