총 3개
-
쓰레드 구현 모델과 쓰레드 폴링에 대해 조사하시오.2025.01.171. 쓰레드 쓰레드는 프로그램 내에서 동시에 여러 작업을 처리하기 위한 실행 단위를 의미한다. 프로세스는 완전히 독립된 두 개의 프로그램의 실행을 위한 것이지만, 쓰레드는 하나의 프로그램 내에서 둘 이상의 실행을 위하기 때문에 독립시키는 구조가 필요하지 않다. 그래서 쓰레드를 이용하면 하나의 프로세스 내에서 여러 작업을 동시에 수행할 수 있으므로 프로그램의 성능과 효율성이 향상된다. 2. 쓰레드의 구현 모델 쓰레드는 크게 두 가지 방법으로 구현될 수 있다. 유저 레벨 쓰레드는 프로그램이 직접 쓰레드를 관리하는 방법으로 쓰레드를 구현...2025.01.17
-
쓰레드 구현 모델과 쓰레드 풀링에 대한 조사2025.01.171. 커널 레벨 쓰레드 커널 레벨 쓰레드는 운영체제가 지원하는 쓰레드 기능으로 구현되며, 커널이 쓰레드의 생성 및 스케줄링 등을 관리한다. 각 쓰레드는 독립적으로 커널의 스케줄링을 받으며, 쓰레드 간의 전환도 커널에 의해 이루어진다. 멀티프로세싱 환경에서 커널은 여러 개의 쓰레드를 각각 다른 프로세스에 할당할 수 있다. 하지만 스케줄링과 동기화를 위해 시스템콜을 하는 데 오래 걸리며, 커널 모드 전환이 필요해 성능 저하가 발생할 수 있다. 2. 사용자 레벨 쓰레드 사용자 레벨 쓰레드는 커널의 도움 없이 사용자 공간에서 직접 관리된다...2025.01.17
-
쓰레드 구현 모델과 쓰레드 폴링에 대해 조사하시오2025.01.271. 쓰레드 구현 방식 쓰레드의 구현 방식은 크게 사용자 수준 쓰레드와 커널 수준 쓰레드로 구분됩니다. 사용자 수준 쓰레드는 운영체제의 커널이 아닌 사용자 영역에서 직접 관리되며, 커널과 독립적으로 운영됩니다. 해당 방식의 장점은 문맥 전환이 빠르고 오버헤드가 적다는 점입니다. 그러나 하나의 쓰레드가 블록되면 해당 프로세스 내의 모든 쓰레드가 중단되는 단점이 존재합니다. 반면 커널 수준 쓰레드는 운영체제가 직접 관리하며, 각 쓰레드가 독립적으로 운영됩니다. 커널 수준 쓰레드는 하나의 쓰레드가 블록되더라도 다른 쓰레드가 계속 실행될 ...2025.01.27