java 배우기/TIL

프로세스 , 쓰레드

checkuu 2024. 8. 2. 20:19

프로세스 : 운영체제로 부터 자원을 할당받는 작업의 단위

쓰레드 : 프로세스가 할당받은 자원을 이용하는 실행의 단위

 

프로세스

OS 위에서 실행되는 모든 프로그램은 OS가 만들어준 프로세스에서 실행된다

프로세스 구조

OS가 프로그램 실행을 위한 프로세스를 할당해 줄때 프로세스 안에 프로그램 code와 data 그리고 메모리 영역(Stack,Heap)을 함께 할당해 준다.

 

각 프로그램은 프로세스를 통해 Code,Data,Memory (Stack,Heap)를 OS로 부터 할당 받는다.

 

쓰레드

쓰레드는 프로세스 내에서 일하는 일꾼이라고 보면 된다.

쓰레드의 생성

프로세스가 작업 중인 프로그램에서 실행요청이 들어오면 쓰레드를 만들어 명령을 처리하도록 한다.

쓰레드의 자원

프로세스 안에는 여러 쓰레드 들이 있고, 쓰레드 들은 실행을 위한 프로세스 내 주소 공간이나 메모리 공간(Heap)을 공유 받는다. 추가로 쓰레드 들은 각각 명령 처리를 위한 자신만의 메모리 공간(Stack)도 할당 받는다.

 

Java쓰레드

일반 쓰레드와 동일하며 JVM 프로세스 안에서 실행되는 쓰레드를 말한다.

'java 배우기 > TIL' 카테고리의 다른 글

SQL) JOIN  (0) 2024.08.05
동등성(Equality)과 동일성(Identity)  (0) 2024.08.03
git hub에서 merge할 때 생기는 오류  (0) 2024.08.01
Java 최댓값, 최솟값 구하기 Math.max / Math.min  (0) 2024.08.01
git 이용하기(2)  (0) 2024.07.30