본문 바로가기

기술면접/백엔드종합8

멀티쓰레드와 멀티프로세스의 차이점 멀티쓰레드와 멀티프로세스는 여러 작업을 동시에 처리할 수 있는 기술이다. 그러나 두 기술은 다음과 같은 차이점이 있다. 자원 공유 : 멀티쓰레드는 하나의 프로세스 내에서 여러 쓰레드가 자원을 공유하여 사용한다. 반면 멀티프로세스는 서로 다른 프로세스끼리 자원을 공유할 수 없다. 컨텍스트 스위칭 : 멀티쓰레드는 쓰레드 간의 전환 시에 컨텍스트 스위칭이 일어나며, 이는 비교적 빠른 속도로 일어난다. 반면 멀티프로세스는 프로세스 간의 전환 시에도 컨텍스트 위치잉이 일어나며, 이는 상대적으로 느린 속도로 일어난다. 메모리 사용 : 멀티쓰레드는 하나의 프로세스 내에서 여러 쓰레드가 메모리를 공유하여 사용하기 때문에, 메모리 사용량이 비교적 적다. 반면 멀티프로세스는 각각의 프로세스가 독립적으로 사용하기 때문에, .. 2023. 4. 24.
프로세스와 스레드의 차이 프로세스 메모리 상에서 실행중인 프로그램 운영체제로부터 시스템 자원을 할당받은 작업의 단위 최소 하나의 스레드를 보유하고 있으며, 각각 별도의 주소공간을 독립정으로 할당 받는다(code, data, stack, heap) 스레드 프로세스 안에서 실행되는 흐름 단위 stack만 따로 할당받고 나머지 영역(code, data, heap)은 스레드끼리 서로 공유한다 2023. 4. 14.