프로세스와 쓰레드

김기태·2021년 9월 29일
0

프로세스 컴퓨터가 어떤 일을 하고 있는 상태
쓰레드 쉽게말해 하나의 흐름

여러 프로세스를 함께 돌리는 작업은 동시적, 병렬적 또는 혼합으로 이루어 진다.
동시성
프로세스 하나가 조금씩 여러작업을 돌아가면서 일부분씩 작업 (Context Switching), 이 과정이 엄청 빨라서 동시에 진행되는 것 처럼 느낀다
병렬성
프로세서 하나에 코어 여러개가 달려서 각각 동시에 작업들을 수행. 듀얼코어, 쿼드코어, 옥타코어 이런 명칭이 붙는 멀티코어 프로세서가 달린 컴퓨터에서 할 수 있는 방식.
CPU의 속도가 물리적 제약 때문에 빠르게 발전하지 못하자 대안으로 코어를 여러개 담아 작업을 분담할 수 있게 만든 것.
쓰레드
브라우저도 하나의 프로그램이고 돌면서 하나의 프로세스가 진행됨
하지만 브라우저도 하나의 작업을 하는 도중에 다른 작업을 할 수 있어야 한다
즉 한 프로세스 안에서도 여러 작업들이 동시에 진행될 필요가 있는데 이를 쓰레드라고 한다.
자원
프로세스들은 컴퓨터의 자원을 분할해서 쓰지만 쓰레드는 프로세스마다 주어진 전체 자원을 함께 사용
쓰레드는 함께 자원을 사용하다 보니 시간문제에 따른 에러가 생길수 있다.

profile
김개발

0개의 댓글