본문 바로가기
IT 이것저것

쓰레드(Thread)란? 쓰레드와 프로세스 차이

by 관성맨 2023. 2. 8.
반응형

오늘은 쓰레드의 정의 및 특징에 대해 알아보며 쓰레드와 프로세스의 차이가 무엇인지 알아보도록 하겠습니다.

 

 

 

 

 

 

 

쓰레드란?

쓰레드(Thread)란 프로세스(Process) 의 실행 단위이며 실제 작업을 수행하는 주체입니다.

즉, 1개의 프로세스 내에 여러개의 쓰레드가 존재할 수 있습니다.

 

우리가 어떤 프로그램을 실행할 때, OS(Operating System)로부터 실행에 필요한 CPU, MEMORY를 할당받아 프로세스가 실행됩니다. 

프로세스가 실행되면서 실제 작업의 주체가 바로 이 쓰레드가 되는 것입니다.

프로세스는 여러개의 쓰레드가 존재할 수 있으므로 두 개 이상의 쓰레드를 가지는 프로세스를 우리는 멀티쓰레드 프로세스 라고 부릅니다.

 

 

이제 프로세스에 대해 알아보도록 하겠습니다.

 

 

 

 

 

 

 

프로세스란?

프로세스(Process)는 실행중인 프로그램을 말합니다. 즉, 우리가 게임아이콘을 더블클릭하여 게임 프로그램을 실행했다고 가정해봅시다. 그러면 더블클릭하는 순간 게임 프로그램이 실행된 것이고, 그 때부터 게임을 실행하기 위해 OS로부터 CPU, MEMORY의 자원을 사용하며 각각의 쓰레드가 실행되며 프로세스가 진행되는 것입니다.

 

 

 

자 그럼 이제 정리를 해보겠습니다.

 

 

쓰레드와 프로세스의 차이

 

쓰레드는 프로세스의 실행 주체로 프로세스가 할당받은 자원을 바탕으로 실행하는 실행 단위이고

프로세스는 운영체제로부터 자원을 할당받는 작업의 단위라고 보시면 됩니다.

 

 

 

 

 

 

 

 

쓰레드의 장점

쓰레드는 프로세스의 메모리, 자원 등을 공유하여 쓰레드간 상호 통신이 가능하고
프로세스보다 생성 및 종료시간이 짧습니다.

반응형

댓글