
정답C는 컴파일 방식 언어이므로 인터프리터 언어가 아닙니다.
핵심 개념
인터프리터 언어와 컴파일 언어의 구분
인터프리터(Interpreter) 방식은 소스 코드를 한 줄씩 해석하며 즉시 실행하는 방식으로, 별도의 목적 파일(실행 파일)을 미리 생성하지 않습니다. 반면 컴파일(Compile) 방식은 전체 소스 코드를 한 번에 기계어로 번역해 실행 파일을 만든 뒤 실행합니다. 대표적인 인터프리터 계열 언어로는 JavaScript, Basic, LISP, Python 등이 있고, 대표적인 컴파일 계열 언어로는 C, C++ 등이 있습니다. 이 문제는 인터프리터 방식에 해당하지 않는 언어를 고르는 문항입니다.
선지별 해설
①JavaScript는 웹 브라우저 등의 실행 환경에서 소스를 해석·실행하는 대표적인 인터프리터(스크립트) 언어입니다.
②C는 소스 전체를 기계어로 번역해 실행 파일을 만드는 대표적인 컴파일 언어이므로 인터프리터 방식이 아닙니다. 따라서 이 선지가 정답입니다.
③Basic은 초기 개인용 컴퓨터에서 널리 쓰인 대화형 인터프리터 언어입니다.
④LISP는 REPL 기반으로 코드를 즉시 해석·실행하는 인터프리터 방식으로 널리 사용됩니다.

정답라운드 로빈은 문맥 교환 오버헤드가 커 FIFO 대비 높은 처리량을 보장하지 않습니다.
핵심 개념
라운드 로빈(Round Robin) 스케줄링
라운드 로빈은 각 프로세스에 동일한 크기의 시간 할당량(Time Quantum)을 부여하고, 그 시간이 지나면 실행을 중단시킨 뒤 준비 큐 맨 뒤로 보내는 선점형(Preemptive) CPU 스케줄링 기법입니다. 시간 할당량이 작을수록 응답 시간은 좋아지지만 문맥 교환(Context Switch) 횟수가 늘어 오버헤드가 커집니다. 잦은 문맥 교환 때문에 단순히 도착 순서대로 끝까지 실행하는 FCFS(FIFO)보다 처리량(Throughput)이 높다고 보기는 어렵습니다. 이 문제는 라운드 로빈에 대한 설명 중 틀린 것을 고르는 문항입니다.
선지별 해설
①라운드 로빈은 시간 할당량이 끝나면 프로세스를 강제로 중단시키므로 선점 스케줄링 기법이 맞습니다.
②여러 프로세스에 동일한 크기의 시간 할당량을 순환적으로 부여하므로 옳은 설명입니다.
③시간 할당량이 작아지면 그만큼 프로세스 전환이 잦아져 문맥 교환 횟수와 오버헤드가 증가하므로 옳은 설명입니다.
④라운드 로빈은 잦은 문맥 교환으로 인한 오버헤드 때문에 FIFO(FCFS)보다 처리량이 높다고 단정할 수 없습니다. 라운드 로빈의 장점은 처리량 향상이 아니라 응답 시간 개선과 공정성이므로 이 설명이 틀렸습니다.