쓰레드 구현 모델과 쓰레드 풀링에 대한 조사
2025.01.17
1. 커널 레벨 쓰레드
커널 레벨 쓰레드는 운영체제가 지원하는 쓰레드 기능으로 구현되며, 커널이 쓰레드의 생성 및 스케줄링 등을 관리한다. 각 쓰레드는 독립적으로 커널의 스케줄링을 받으며, 쓰레드 간의 전환도 커널에 의해 이루어진다. 멀티프로세싱 환경에서 커널은 여러 개의 쓰레드를 각각 다른 프로세스에 할당할 수 있다. 하지만 스케줄링과 동기화를 위해 시스템콜을 하는 데 오래 걸리며, 커널 모드 전환이 필요해 성능 저하가 발생할 수 있다.
2. 사용자 레벨 쓰레드
사용자 레벨 쓰레드는 커널의 도움 없이 사용자 공간에서 직접 관리된다...
2025.01.17