개요
TCB는 운영체제에서 스레드를 컨트롤 할때 사용하는 중요한 정보들을 모아놓은 커널의 한 자료구조이다. TCB는 스레드처리를 위해 필요한 필수정보들을 모아놓은 라이브러리 역활을 시스템에서 하게 된다. PCB는 TCB와는 다르게 데이터 섹션이나 프로세스-커널 정보(File descriptor와 같은 프로세스 의존정보)에대한 정보도 포함해야 하기 때문에 좀더 무겁고 느리다. 그에반해 TCB의 처리는 하드웨어 정보다 스레드를 식별하기 위해 필요한 정보들, 예들을어 스택 포인터, 레지스터 정보와 같은 정보만을 저장하기 때문에 가볍고 빠르다. 따라서 프로세스의 스케쥴링보다는 TCB를 이용하는 스레드 스케쥴링이 훨씬 빠르다.
TCB에는 다음과 같은 정보들이 포함된다.
- 스레드 ID
- 스택 포인터
- PC카운터
- thread state 정보
- Thread 레지스터 정보
- 스레드를 소유하는 프로세스에 대한 PCB정보