
비교 차트
비교의 근거 | 멀티 태스킹 | 멀티 스레딩 |
---|---|---|
기본 | 멀티 태스킹은 CPU가 동시에 여러 작업을 실행하게합니다. | 멀티 스레딩을 사용하면 CPU가 프로세스의 여러 스레드를 동시에 실행할 수 있습니다. |
스위칭 | 멀티 태스킹에서 CPU는 프로그램 간을 자주 전환합니다. | 멀티 스레딩에서 CPU는 스레드 간을 자주 전환합니다. |
메모리 및 리소스 | 멀티 태스킹 시스템에서는 CPU가 실행중인 각 프로그램에 별도의 메모리와 리소스를 할당해야합니다. | 멀티 스레딩 시스템에서 프로세스에 메모리를 할당해야하는 경우 프로세스의 여러 스레드가 프로세스에 할당 된 동일한 메모리와 리소스를 공유합니다. |
멀티 태스킹의 정의
멀티 태스킹은 단일 CPU가 여러 태스크 (프로그램, 프로세스, 태스크, 스레드) 를 동시에 수행하는 경우입니다. 멀티 태스킹을 수행하기 위해 CPU는이 태스크들 사이를 매우 빈번하게 전환하여 사용자가 각 프로그램과 동시에 상호 작용할 수 있도록합니다.
멀티 태스킹 운영 체제에서는 여러 사용자가 동시에 시스템을 공유 할 수 있습니다. CPU가 작업을 신속하게 전환하는 것을 보았으므로 한 사용자에서 다음 사용자로 전환하는 데 약간의 시간이 필요합니다. 이것은 전체 컴퓨터 시스템이 그에게 전념한다는 인상을 사용자에게줍니다.

멀티 스레딩의 정의
멀티 스레딩은 멀티 태스킹이 동시에 여러 작업을 허용하는 반면 멀티 스레딩은 단일 작업 (프로그램, 프로세스) 의 여러 스레드를 동시에 CPU에서 처리 할 수 있다는 점에서 멀티 태스킹과 다릅니다.
멀티 스레딩을 공부하기 전에 스레드 란 무엇인지 이야기 해 보겠습니다 . 스레드 는 자체 프로그램 카운터, 레지스터 세트, 스택을 가지고 있지만 자신이 속한 프로세스의 코드, 데이터 및 파일을 공유하는 기본 실행 단위입니다. 프로세스는 동시에 여러 개의 스레드를 가질 수 있으며 CPU 는 이러한 스레드 사이에서 전환 하여 모든 스레드가 동시에 실행되고 있다는 것을 사용자에게 너무나 자주 알려주고이를 다중 스레드라고합니다.


OS의 멀티 태스킹과 멀티 스레딩 간의 주요 차이점
- 멀티 태스킹과 멀티 스레딩의 기본적인 차이점은 멀티 태스킹 에서는 시스템이 동시에 여러 프로그램과 태스크를 실행할 수있는 반면, 멀티 스레딩 에서는 시스템이 동시에 또는 다른 프로세스의 여러 스레드를 실행한다는 것입니다.
- 멀티 태스킹에서 CPU 는 여러 프로그램 사이를 전환 해야 여러 프로그램이 동시에 실행되는 것처럼 보입니다. 다른 한편, 멀티 스레딩에서 CPU 는 모든 스레드가 동시에 실행되는 것처럼 보이도록 여러 스레드 사이를 전환 해야합니다.
- 멀티 태스킹은 각 프로세스 / 프로그램에 대해 별도의 메모리와 리소스 를 할당하는 반면, 동일한 프로세스에 속하는 멀티 스레드 스레드에서는 프로세스 와 동일한 메모리 및 리소스 를 공유합니다 .
결론:
멀티 태스킹은 멀티 프로그래밍과 유사하지만 멀티 스레딩은 스레드 기반 멀티 태스킹입니다. 멀티 쓰레딩은 쓰레드가 생성하기 쉽고 프로세스이기 때문에 멀티 태스킹보다 비용이 덜 든다.