프로세스 대 스레드

쉬운 목차

소송 절차

프로세스 = 관리 단위(OS)(계산 거리)

프로그램이 실행되면 운영 체제는 프로세스가 되기 위해 필요한 리소스(메모리)를 할당합니다.

스레드는 실제로 프로세스의 리소스를 사용하여 작업을 수행합니다.

운영 체제는 프로세스에 가상 메모리(제한된 메모리 공간)를 할당합니다.

-> 프로세스에 속하는 모든 스레드는 프로세스의 가상 메모리에 의해 공간이 제한됩니다.

  • 소송 절차 = 프로그램 + 흐름 제어 블록
  • 각 프로세스에는 자체 메모리 영역(코드, 데이터, 스택, 힙 구조)이 할당됩니다.


기본적으로 프로세스에는 하나 이상의 스레드가 있어야 합니다.

프로세스당 다중 스레드 -> 멀티스레딩(여러 프로세스에서 멀티태스킹)

  • 각 스레드는 프로세스 내에서 별도의 스택만 할당되며 코드, 데이터 및 힙 영역이 공유됩니다.
  • 스레드는 프로세스 내에서 실행되는 여러 실행의 흐름이며 다음과 같이 프로세스 내의 스레드 간에 공유되면서 실행됩니다. B. 프로세스 내의 주소 공간 또는 리소스(힙 공간 등).
  • 동일한 프로세스 내의 여러 스레드는 동일한 힙 공간을 공유합니다.


각 스레드에는 고유한 TLS(Thread Local Storage)가 있고 각 스레드에는 고유한 TLS가 있습니다.

그리고 스레드는 그룹화되어 운영 체제가 프로세스에 할당한 메모리로 제한됩니다.

/*

리소스 공유(가상 메모리)

스레드 단위는 작업을 처리하는 데 사용됩니다.

*/