SW/OS

멀티태스킹, 멀티스레딩, 멀티프로세싱

seungH 2024. 1. 28. 13:47

멀티태스킹

다수의 작업(TASK)들을 운영체제가 스케줄링을 통하여 번갈아가면서 수행하도록 하는것.

최초의 컴퓨터는 (싱글코어) 한번에 한 작업만 진행할 수 있었기 때문에 어떤 작업이 실행되고 있으면 다른 작업을 실행을 할 수 없었다. 

하지만 멀티태스킹의 개발로 여러가지 일을 동시에 돌릴 수 있게 되었는데, 이는 프로세스 스케줄링 덕분이다.

아주 짧은 시간으로 일을 할 수 있는 영역의 시간을 나누어 놓고 우선순위에 기반하여 여러가지 TASK를 실행하는 것이다. 

멀티스레딩

한 프로세스 내에서 여러개의 스레드를 동시에 수행하는 것을 의미한다. 하나의 프로그램 내에서 동시에 여러 개의 일을 수행할 수 있도록 해준다.

 

멀티프로세싱

여러개의 프로세서가 협력적으로 일을 하는 것을 말한다.

예를 들어 라즈베리파이4 모델은 쿼드코어 프로세서를 가지고 있다. 이 4개의 프로세서에서 다수의 프로세스가 동시에 처리되는 것을 말한다. 

'SW > OS' 카테고리의 다른 글

FreeRTOS Porting  (0) 2024.02.04
RTOS 개론  (0) 2024.01.28
세마포어, 뮤텍스  (0) 2024.01.28