책너두 (컴퓨터 밑바닥의 비밀) 5일차 스레드 간 공유되는 프로세스 리소스

요약

  • 스레드 전용 리소스
    • 스레드에 속한 스택 영역과 프로그램 카운터, 스택 포인터, 함수 실행 시 사용되는 레지스터 정보가 모두 해당 스레드 전용임.
    • 이 모든 정보를 스레드 상황 정보 라고 함.
    • 스레드는 프로세스 주소 공간에서 스택 영역을 제외한 나머지 영역을 모두 공유함
  • 코드 영역 : 모든 함수를 스레드에 배치하여 실행할 수 있다.
    • 스레드 간에 공유되므로 어떤 함수든지 모두 스레드에 적재하여 실행할 수 있음.
    • 특정 함수를 특정 스레드에서만 실행되도록 하는 것은 불가능 함.
  • 데이터 영역 : 모든 스레드가 데이터 영역의 변수에 접근할 수 있음.
    • 전역 변수가 저장되는 곳임.
    • 프로그램이 실행되는 동안 데이터 영역 내에 전역 변수의 인스턴스는 하나만 있기에 모든 스레드는 이 전역 변수에 접근할 수 있음.
  • 힙 영역 : 포인터가 핵심
    • 포인터를 얻을 수 있으면 포인터가 가리키는 데이터에 접근할 수 있음.
    • 스레드 간 공유 리소스임.
  • 스택 영역 : 공유 공간 내 전용 데이터
    • 서로 다른 프로세스 주소 공간은 서로 격리되어 있음.

댓글

Designed by JB FACTORY