컨텍스트스위칭

· 자바
컨텍스트 스위칭다른 스레드 없이 메인 스레드 하나만 스케줄링하다고 하면, 메인 스레드는 항상 실행될 것이다. 반대로 CPU 개수보다 실행 중인 스레드의 개수가 많다고 하면, 운영체제가 특정 스레드의 실행 스케줄을 선점하고 다른 스레드가 실행될 수 있도록 스케줄을 잡는다. 이처럼 하나의 스레드가 실행되다가 다른 스레드가 실행되는 순간 컨텍스트 스위칭이 일어난다. 컨텍스트 스위칭이 일어나는 상세한 구조를 보면, 먼저 현재 실행 중인 스레드의 실행 상태를 보관해두고, 다음번 실행되기로 스케줄 된 다른 스레드의 실행 상태를 다시 읽어 들인다. 스레드 스케줄링을 하려면 운영체제와 JVM 내부의 공용 자료 구조를 다뤄야 한다는 문제가 있다. 운영체제와 JVM 역시 프로그램 스레드가 사용하는 것과 같은 CPU를 함께..
belljun
'컨텍스트스위칭' 태그의 글 목록