프로그래밍/운영체제

운영체제 · 멀티 프로세싱, 멀티 프로그래밍, 멀티 태스킹

반응형

멀티 프로세싱, 멀티 프로그래밍, 멀티 태스킹의 차이점


멀티 프로세싱 : 다수의 프로세서가 다수의 프로세스를 동시에 처리하는 것

멀티 프로그래밍 : 다수의 프로세스를 메모리에 적재하여 프로세스를 번갈아가면서 처리하는 것

멀티 태스킹 : 다수의 작업을 운영체제 스케줄링에 의해 번갈아가면서 처리하는 것





멀티 프로세싱 (Multi-processing)


정의 : 다수의 프로세서가 다수의 프로세스를 협력적으로 동시에 처리하는 것

✓ 프로세서(Processor)는 CPU라고 생각하면 되며, 프로세스(Process)와 다른 개념이다.

✓ 각 프로세서는 다수의 프로세스를 처리하며, 각 프로세스는 다수의 프로세서에 의해 처리된다.

✓ 각 프로세서가 자원을 공유하면서 프로세스를 처리하기 때문에, 하나의 프로세서가 고장 나더라도 작업은 정지되지 않는다.





멀티 프로그래밍 (Multi-programming)


정의 : 하나의 프로세서에 대하여 다수의 프로세스를 메모리에 적재해 작업을 처리하는 것

✓ 특정 프로세서가 프로세스 A를 처리할 때, 다른 프로세스 B, C 등을 처리하게 만드는 것을 말한다.

✓ 멀티 프로그래밍을 통해 프로세서를 효율적으로 사용할 수 있다.





멀티 태스킹 (Multi-tasking)


정의 : 다수의 작업(Task)을 운영체제 스케줄링에 의해 번갈아가면서 처리하는 것

✓ Task란 작업의 단위를 말하며, 프로세스, 스레드가 모두 작업의 단위가 될 수 있다.

✓ 멀티 태스킹은 시분할 시스템에서 사용되며, 사용자에게 다수의 작업이 동시에 처리되는 것처럼 느끼게 할 수 있다.





반응형