CS

멀티태스킹과 멀티프로세싱, 비슷한듯 다른 두 개념

thinkySide 2025. 3. 17. 15:39

저는 멀티태스킹에 약합니다. 이게 무슨 뜻일까요? 한 번에 여러 가지 일을 잘하지 못한다는 뜻입니다. 전화하면서 딴짓이라도 하면 누군가 항상 알아차리는 것 같습니다 ㅋㅋ 아무튼 오늘 공부해 볼 개념은 멀티태스킹입니다. 생각보다 쉬운 개념이니 짧게 정리해보겠습니다! (둘의 차이를 이해하면 왜 '저는 멀티 프로세싱에 약합니다'라고 이야기할 수 없는지 알게 될지도 모릅니다)

 

멀티 태스킹 Multitasking

하나의 CPU(Core)가 여러 개의 작업을 동시에 실행하는 것

어떻게 하나의 시스템에서 여러 개의 작업을 동시에 실행할 수 있을까요? 보통 하나의 작업이 끝나야 다음 작업을 시작할 수 있는 구조 상 의문이 듭니다. 컴퓨터 과학자들은 이를 해결하기 위해 프로그램의 작업을 아주 작은 단위로 분리했습니다. 그리고 아주 짧은 시간 전환(switching)하며 실행되도록 해 여러 작업이 동시에 실행되는 것처럼 보이게 되는 것이죠! 여기서 작업 간 전환을 Context Switching이라고 합니다.

 

결과적으로 멀티태스킹은 실제로 하나의 시스템 안에서 사용되는 개념으로, 병렬 처리는 없지만 동시성은 제공할 수 있게 됩니다.

멀티태스킹 == 잘개 쪼개고 스위칭을 통해 번갈아 실행!

 

멀티 프로세싱

여러 개의 CPU(Core)가 여러 프로세스를 동시에 실행하는 것

멀티 태스킹의 개념을 알면 멀티 프로세싱을 이해하긴 더 쉽습니다. 이번엔 정말로 여러 개의 CPU가 작업을 실행하는 개념이죠! 즉, 병렬처리로 인한 실제 동시성을 제공하게 됩니다.

멀티 프로세싱 == 실제로 여러 개의 CPU가 병렬로 작업을 처리하는 것!

 

멀티 태스킹과 멀티 프로세싱은 함께 사용할 수 있습니다. 여러 개의 CPU에서 멀티 태스킹 방식을 도입하면 더욱 강력한 동시 처리가 가능해지는 것이죠. 현대 운영체제는 대부분 멀티 태스킹과 멀티 프로세싱을 함께 사용해 성능을 최적화 한다고 합니다.

 

Ref.

 

👩‍💻 멀티 태스킹 & 멀티 프로세싱 개념 한방 정리

컴퓨터의 병행 처리 우리가 음악을 들으면서, 웹서핑을 하고, 메신저의 메시지를 확인할 수 있는 이유는 컴퓨터가 자원을 효율적으로 사용하는 멀티 태스킹(Multi Tasking) 기술 덕분이다. 멀티 태

inpa.tistory.com