목록스케줄링 (2)
변수의 기록

CPU 스케줄러와 디스패처, 그리고 스케줄링 알고리즘 총정리 CPU 스케줄러란?역할: CPU를 어떤 프로세스가 사용할지 선택동작: Ready 상태에 있는 프로세스들 중 하나를 선택하여 CPU에 할당대상: Ready Queue에 있는 프로세스들예: Ready Queue: P1, P2, P3 스케줄러가 P2를 선택 → 실행 준비 완료 디스패처(Dispatcher)란?역할: 스케줄러가 선택한 프로세스를 실제 CPU에 할당하고 실행세부 기능:컨텍스트 스위칭 수행사용자 모드로 전환 (커널 → 유저 모드)프로그램 카운터와 레지스터 설정예: P2를 스케줄러가 선택함 → 디스패처가 CPU에 할당 → P2 실행 시작 선점(Preemptive) vs 비선점(Non-Preemptive) 비선점 (Non-Preemp..

자바 스레드의 상태 – OS 프로세스와 어떻게 다를까?멀티스레드 프로그래밍을 하다 보면, Runnable, Blocked, Waiting 같은 자바 스레드 상태들이 헷갈릴 수 있습니다.운영체제(OS)의 프로세스 상태와도 비슷한 듯 다른 이 구조, 이번 글에서 명확하게 정리해보겠습니다.1. OS의 프로세스 상태 (Process States in OS)운영체제에서 프로세스는 기본적으로 다음과 같은 상태를 가집니다: 상태설명New프로세스가 막 생성됨 (아직 실행 준비 X)Ready실행 준비 완료, CPU 할당을 기다림RunningCPU에서 실행 중Waiting (Blocked)I/O 등 외부 자원을 기다리며 대기Terminated실행 완료 후 종료됨 특징:CPU 중심적인 상태 변화실행 준비 / 실행 중 / ..