프로세스, 스레드

Steve·2021년 12월 8일
0

기술면접 대비 공부

목록 보기
22/28

프로세스 - 운영체제에서 실행 중인 하나의 프로그램
사용자가 앱을 실행하면 운영체제로부터 실행에 필요한 메모리를 할당 받아 코드를 실행. 하나의 앱이 여러개의 프로세스를 가질 수도 있다. 예) 인터넷 윈도우를 두개 띄우면 두개의 프로세스 생성
CPU 하나는 한 시점에 하나의 process 밖에 실행 못한다.
single core 는 multi-process 를 할 수 있지만 multi-processing 은 불가. 멀티코어일경우 가능.

스레드 - 하나의 코드 실행 흐름
프로세스 내의 heap, data, code 메모리를 공유함.
스레드마다 각각의 스택과 레스터를 가지고 있음.
각 스레드마다 call stack 이 존재하고 각 스레드는 독립적으로 작동.
멀티스레드 - 두가지 이상의 작업을 동시에 처리.

프로세스 내부의 멀티태스킹 - 멀티스레드
운영체제 내부의 멀티태스킹 - 멀티프로세스

profile
게임과 프론트엔드에 관심이 많습니다.

0개의 댓글