쓰레드(Thread) - 프로세스 내에서 실제로 실행중인 주체. 프로세스 내에 여러개가 있을 수 있다. 쓰레드는 프로세스로부터 독립적인 스택 공간과 레지스터(ex. Stack Point Register, Program Counter Register, Frame Pointer Register)를 갖고 있으면서, 동시에 Code, Heap, Data 영역은 쓰레드끼리 공유한다. -> 왜 쓰레드는 스택과 PC, SP, FP Register를 공유하지 않는지 생각해보면 당연하다. 쓰레드는 독립적인 실행 흐름을 갖고 있다고 했다. 독립적인 실행 흐름을 갖는다는 말은 쓰레드마다 실행중인 라인이 다를 수 있다는 것이고, 독립적으로 함수 호출이 가능하다는 것이므로 호출 스택과 관련된 SP, FP를 따로 갖는게 당연하다..