실기 공부방READ · TRACE · RECALL

정보처리 실무 · 학습 노트

운영체제

스케줄링·페이지 교체를 표로 풀기

공식만 외우지 않고 시간축과 프레임 상태를 직접 적는다. 특히 선점 시점과 페이지 적중 때의 갱신 여부가 중요하다.

기초부터 실전까지

처음 배우는 분의 학습 순서

기호와 용어가 낯설면 기초·상세 보강을 먼저 읽고, 기존 핵심 정리로 연결하세요. 예제의 값을 손으로 계산한 뒤 확인 질문을 답하고 마지막에 문제를 풉니다.

추가된 상세 학습 7개 펼쳐보기
이 단원 목차 14개
이번 단원 완료 기준

핵심 규칙을 설명하고, 연습문제의 답과 이유를 해설 없이 적을 수 있으면 체크하세요. 이해 체크와 정답 기록은 별도로 저장됩니다.

01

프로세스와 스레드

프로세스는 실행 중인 프로그램과 자원 단위, 스레드는 실행 흐름 단위다. 같은 프로세스의 스레드는 일반적으로 코드·데이터·힙을 공유하고 각자의 스택과 레지스터 상태를 가진다.

답을 가리고 확인

“프로세스와 스레드”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

상태: 생성→준비→실행→대기→준비→종료. 문맥 교환은 실행 상태 저장·복구. 대기는 CPU를 기다리는 준비 상태와 다르다. I/O 완료를 기다리는 상태다.

꼭 기억할 것

상태: 생성→준비→실행→대기→준비→종료. 문맥 교환은 실행 상태 저장·복구.

헷갈리는 지점 대기는 CPU를 기다리는 준비 상태와 다르다. I/O 완료를 기다리는 상태다.

02

스케줄링 공식

반환시간=완료-도착, 대기시간=반환-실행시간, 응답시간=최초 실행-도착. FCFS는 도착순, SJF는 짧은 작업 우선 비선점, SRT는 남은 시간이 짧은 작업 우선 선점, RR은 시간 할당량만큼 순환.

답을 가리고 확인

“스케줄링 공식”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

HRN 우선순위=(대기+서비스)/서비스. 숫자가 큰 작업을 먼저 선택한다. SRT는 원래 총 실행시간이 아니라 현재 남은 시간을 비교한다. 동률 처리 규칙은 문제 조건을 따른다.

꼭 기억할 것

HRN 우선순위=(대기+서비스)/서비스. 숫자가 큰 작업을 먼저 선택한다.

헷갈리는 지점 SRT는 원래 총 실행시간이 아니라 현재 남은 시간을 비교한다. 동률 처리 규칙은 문제 조건을 따른다.

03

SRT 손풀이

A(도착0,실행6), B(도착1,실행2), C(도착2,실행1). 동률은 현재 작업 유지라면 0~1 A,1~3 B,3~4 C,4~9 A. 완료 A9,B3,C4.

과정으로 이해하기

  1. 시각0: A 실행. 시각1: A 남은5와 새 B2를 비교해 B로 선점.
  2. 시각2: B 남은1과 C1은 동률, 조건에 따라 B 유지.
  3. B는3에 완료, C는3~4, A는4~9. 대기시간은 완료-도착-실행으로 구한다.

답을 가리고 확인

이 예의 A 응답시간은?

확인 답안 보기

0. A는 도착 즉시 최초 실행했다. 대기시간3과 다르다.

꼭 기억할 것

대기 A=9-0-6=3, B=3-1-2=0, C=4-2-1=1. 평균 4/3.

헷갈리는 지점 도착 시점마다 비교하고, 완료되면 대기 중 작업의 남은 시간을 다시 비교한다.

04

페이지 교체

FIFO는 가장 먼저 들어온 페이지, LRU는 가장 오래 사용하지 않은 페이지, LFU는 사용 횟수가 적은 페이지, OPT는 앞으로 가장 늦게 쓸 페이지를 교체한다.

답을 가리고 확인

“페이지 교체”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

처음 빈 프레임에 적재할 때도 페이지 부재다. LRU는 적중 때도 최근 사용 순서를 바꾼다. FIFO는 적중했다고 적재 순서가 바뀌지 않는다. OPT는 미래 참조열이 있어야 계산할 수 있다.

꼭 기억할 것

처음 빈 프레임에 적재할 때도 페이지 부재다. LRU는 적중 때도 최근 사용 순서를 바꾼다.

헷갈리는 지점 FIFO는 적중했다고 적재 순서가 바뀌지 않는다. OPT는 미래 참조열이 있어야 계산할 수 있다.

05

메모리와 교착상태

페이징은 고정 크기, 세그먼테이션은 의미 단위 가변 크기. 내부 단편화는 할당 공간 안 낭비, 외부 단편화는 작은 빈 공간 분산이다. 교착의 필요조건은 상호배제·점유대기·비선점·환형대기다.

답을 가리고 확인

“메모리와 교착상태”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

예방은 조건을 깨기, 회피는 안전 상태 유지(은행가), 탐지는 발생 확인, 회복은 중단·선점 등. 교착 회피와 예방을 같은 뜻으로 쓰지 않는다. 스래싱은 페이지 교체가 과도하여 유효 작업이 줄어드는 현상이다.

꼭 기억할 것

예방은 조건을 깨기, 회피는 안전 상태 유지(은행가), 탐지는 발생 확인, 회복은 중단·선점 등.

헷갈리는 지점 교착 회피와 예방을 같은 뜻으로 쓰지 않는다. 스래싱은 페이지 교체가 과도하여 유효 작업이 줄어드는 현상이다.

06

동기화·디스크·RAID

뮤텍스는 임계구역의 상호배제, 세마포어는 카운터와 대기/해제로 접근을 조절한다. 디스크 SSTF는 가까운 요청, SCAN은 한 방향 이동 후 역방향, C-SCAN은 한 방향 처리 후 되돌아간다.

답을 가리고 확인

“동기화·디스크·RAID”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

RAID 0 스트라이핑·복구 중복 없음 / 1 미러링 / 5 분산 패리티·디스크 1개 장애 대응 / 6 이중 패리티·2개 장애 대응. RAID는 백업을 대체하지 않는다. 삭제·오염이 복제되는 것은 별도 문제다.

꼭 기억할 것

RAID 0 스트라이핑·복구 중복 없음 / 1 미러링 / 5 분산 패리티·디스크 1개 장애 대응 / 6 이중 패리티·2개 장애 대응.

헷갈리는 지점 RAID는 백업을 대체하지 않는다. 삭제·오염이 복제되는 것은 별도 문제다.

07

세마포어 동작 추적

세마포어는 wait 연산으로 값을 감소시켜 자원을 점유하고, signal 연산으로 값을 증가시켜 자원을 반납하며 대기 중인 프로세스를 깨운다. 초기값 1인 이진 세마포어는 상호배제(뮤텍스 대체)로 흔히 쓰인다.

답을 가리고 확인

“세마포어 동작 추적”의 핵심 규칙과 헷갈리는 지점을 설명해 보세요.

확인 답안 보기

뮤텍스는 점유한 주체가 있는 상호배제 도구, 세마포어는 개수 기반의 신호 도구로 구분한다. 대기 중인 프로세스가 여러 개면 어떤 프로세스를 먼저 깨우는지는 스케줄링 정책에 따라 달라진다. 시험에서는 특별한 조건이 없으면 단순히 대기·해제 여부만 판정한다.

꼭 기억할 것

뮤텍스는 점유한 주체가 있는 상호배제 도구, 세마포어는 개수 기반의 신호 도구로 구분한다.

헷갈리는 지점 대기 중인 프로세스가 여러 개면 어떤 프로세스를 먼저 깨우는지는 스케줄링 정책에 따라 달라진다. 시험에서는 특별한 조건이 없으면 단순히 대기·해제 여부만 판정한다.

08

CPU 스케줄링 계산의 출발점

프로세스마다 도착시간, CPU 실행시간, 남은시간, 최초 실행시간, 완료시간을 기록한다. 반환시간은 도착부터 완료까지, 응답시간은 도착부터 처음 CPU를 받기까지, 대기시간은 준비 큐에서 기다린 시간이다. I/O 없는 단일 CPU 문제에서는 대기=반환-실행으로 계산한다.

비선점은 실행 중 작업을 완료·자발적 대기 전까지 빼앗지 않고 선점은 더 우선인 작업 도착·시간 할당 만료 등으로 교체한다. FCFS는 도착순, SJF는 현재 준비 작업 중 실행시간 최솟값, SRT는 남은시간 최솟값이다.

CPU 스케줄링 계산의 출발점 · 한눈에 비교
작업도착실행최초완료반환대기응답
A0404400
B1246533

과정으로 이해하기

  1. A(도착0,실행4), B(도착1,실행2)의 FCFS: A 0~4, B 4~6.
  2. A 반환4·대기0·응답0. B 반환5·대기3·응답3.
  3. 평균 대기=(0+3)/2=1.5.

답을 가리고 확인

도착2, 최초 실행5, 완료10, 실행4이면 반환·대기·응답은?

확인 답안 보기

8,4,3. 반환10-2, 대기8-4, 응답5-2.

꼭 기억할 것

도착·완료·최초 실행을 시간축에서 읽고 공식을 적용한다.

헷갈리는 지점 아직 도착하지 않은 짧은 작업을 SJF가 먼저 실행할 수는 없다.

09

RR·HRN·기아·에이징

RR은 준비 큐에서 한 작업을 시간 할당량 q만큼 실행하고 남았으면 뒤에 넣는다. 할당량이 너무 작으면 문맥 교환 비용, 너무 크면 FCFS와 비슷해지는 영향을 살핀다. 같은 시각의 도착과 재삽입은 문제의 큐 처리 조건을 따른다.

HRN은 (대기+서비스)/서비스의 큰 값부터 고르는 비선점 방식으로 오래 기다린 작업의 우선순위가 올라간다. 기아는 낮은 우선 작업이 계속 밀리는 현상이고 에이징은 대기시간에 따라 우선순위를 올리는 해결 기법이다.

과정으로 이해하기

  1. 모두 도착0, A 실행5·B 실행3, q=2, 교환비용0: A0~2 B2~4 A4~6 B6~7 A7~8.
  2. 완료 A8,B7. 대기 A=8-5=3, B=7-3=4. 평균3.5.

답을 가리고 확인

HRN에서 대기6·서비스3의 우선순위는?

확인 답안 보기

(6+3)/3=3.

꼭 기억할 것

RR은 큐 회전, HRN은 큰 비율 우선, 에이징은 오래 기다린 작업 배려.

헷갈리는 지점 문맥 교환 시간이 0인지 주어졌는지 확인한다. 기아와 교착은 다른 현상이다.

10

FIFO·LRU·OPT 페이지 교체 추적표

페이지 참조를 왼쪽부터 하나씩 읽으며 프레임에 있으면 적중, 없으면 부재다. 빈 프레임에 처음 올리는 것도 부재다. FIFO는 들어온 순서를, LRU는 마지막 사용 시점을 기록한다. OPT는 미래에 가장 늦게 다시 쓰거나 다시 쓰지 않을 페이지를 내보낸다.

프레임 3개, 참조 1,2,3,1,4,2를 비교한다. FIFO는 두 번째 1에서 들어온 순서를 바꾸지 않지만 LRU는 1을 가장 최근으로 바꾼다. 이 차이가 4가 들어올 때 교체 대상을 바꾼다.

FIFO·LRU·OPT 페이지 교체 추적표 · 한눈에 비교
참조FIFO 프레임FIFO 결과LRU 프레임LRU 결과
11,-,-부재1,-,-부재
21,2,-부재1,2,-부재
31,2,3부재1,2,3부재
11,2,3적중1,2,3적중(1 최근)
44,2,3부재(1 교체)1,4,3부재(2 교체)
24,2,3적중1,4,2부재(3 교체)

답을 가리고 확인

위 참조열의 FIFO와 LRU 부재 수는?

확인 답안 보기

FIFO 4회, LRU 5회. LRU가 모든 참조열에서 FIFO보다 좋은 것은 아니다.

꼭 기억할 것

FIFO 적중 시 순서 유지 / LRU 적중 시 최근 사용 갱신.

헷갈리는 지점 프레임 수가 증가해도 FIFO는 부재가 증가할 수 있는 Belady 이상이 있다.

11

페이징·주소 변환·단편화

페이징은 가상 메모리와 물리 메모리를 같은 크기의 페이지·프레임으로 나눈다. 가상 주소는 페이지 번호와 페이지 내 오프셋으로 나누고 페이지 테이블에서 프레임 번호를 찾는다. 물리 주소는 프레임 번호×페이지 크기+오프셋이다. TLB는 최근 주소 변환 정보를 캐시한다.

세그먼테이션은 코드·데이터 같은 의미 단위로 가변 크기를 할당한다. 내부 단편화는 할당 공간 안의 낭비, 외부 단편화는 공간이 작은 조각으로 흩어져 연속 할당이 어려운 것이다. 스래싱은 페이지 부재·교체가 과도해 실제 작업이 줄어드는 현상이다.

과정으로 이해하기

  1. 페이지 크기 1024, 가상 주소2500 → 페이지2, 오프셋452.
  2. 페이지2가 프레임5라면 물리주소5×1024+452=5572.

답을 가리고 확인

연속 빈 공간이 부족하지만 작은 빈 공간 합은 충분한 상황은?

확인 답안 보기

외부 단편화.

꼭 기억할 것

페이징 고정 크기·내부 단편화 / 세그먼트 가변 크기·외부 단편화.

헷갈리는 지점 TLB 미스와 페이지 부재는 다르다. TLB에 없어도 페이지는 메모리에 있을 수 있다.

12

교착·안전 상태·세마포어

교착상태는 작업들이 서로 가진 자원을 기다려 더 이상 진행하지 못하는 상태다. 상호배제·점유대기·비선점·환형대기 네 조건이 모두 필요하다. 예방은 조건 하나를 깨는 정책이고 회피는 요청을 승인해도 안전 순서가 남는지 확인한다.

은행가 알고리즘에서 Need=Max-Allocation이다. 가용 자원으로 어떤 작업의 Need를 충족하면 그 작업을 완료시키고 보유 자원을 반환했다고 가정해 다음 작업을 찾는다. 모든 작업 완료 순서를 찾으면 안전하다. 세마포어 wait(P)는 진입 가능 자원을 기다리고 signal(V)은 자원을 돌려주거나 대기 작업을 깨운다.

과정으로 이해하기

  1. 자원1종, Available=1, A Allocation1·Max2 → Need1, B Allocation1·Max3 → Need2.
  2. A 먼저 완료 가능. A의 1 반환 → Available2. 이어 B 완료. 안전 순서 A→B.

답을 가리고 확인

자원 획득 순서를 통일해 순환 대기를 막는 것은 예방인가 회피인가?

확인 답안 보기

예방. 환형대기 조건을 깨는 정책이다.

꼭 기억할 것

안전 상태는 완료 가능한 순서가 존재. 불안전 상태가 즉시 교착이라는 뜻은 아니다.

헷갈리는 지점 뮤텍스와 카운팅 세마포어의 소유·허용 수 차이를 구분한다.

13

디스크 이동량·파일·UNIX 권한·RAID

SSTF는 현재 헤드와 가장 가까운 요청을 먼저 처리한다. SCAN은 한 방향으로 디스크 끝까지 갔다가 반대 방향으로 처리하며 LOOK은 그 방향의 마지막 요청에서 돌아온다. C-SCAN은 한 방향 처리 후 반대쪽 끝으로 돌아가고 C-LOOK은 요청 경계 기준으로 순환한다.

파일 권한 r=4,w=2,x=1을 합쳐 소유자·그룹·기타 세 자리로 표시한다. 754는 소유자 rwx, 그룹 r-x, 기타 r--다. RAID 0은 분산 기록, 1은 미러, 5는 분산 패리티 1개 장애 대응, 6은 이중 패리티 2개 장애 대응이다.

과정으로 이해하기

  1. 헤드50, 요청10·40·90의 SSTF: 50→40→10→90.
  2. 이동량10+30+80=120.
  3. 동일 크기 N개 RAID5 가용 용량=(N-1)×디스크용량, RAID6=(N-2)×용량(통상 구성).

답을 가리고 확인

권한 640은?

확인 답안 보기

소유자 rw-, 그룹 r--, 기타 ---.

꼭 기억할 것

이동량은 인접 방문 위치 차이 절댓값의 합. chmod 754 → rwxr-xr--.

헷갈리는 지점 SCAN과 LOOK의 회전 위치가 다르다. 디스크 끝 번호·방향·복귀 이동 포함 여부를 확인한다.

14

선점 계산에서 도착·완료·응답 분리

반환시간은 완료-도착, 대기시간은 반환-CPU 실행시간, 응답시간은 최초 실행 시작-도착이다. SRT는 새 프로세스가 도착할 때 현재 남은 시간과 비교한다. 동률이면 문제의 우선순위 조건을 따른다.

과정으로 이해하기

  1. 0~1: P1 실행. P2가 도착할 때 P1의 남은 시간은 7이다.
  2. 1~3: 더 짧은 P2 실행 후 완료.
  3. 3~10: P1 완료. 반환시간 P1=10, P2=2. 대기는 2와 0, 평균 1.

답을 가리고 확인

P1(도착0,실행8), P2(도착1,실행2)를 SRT로 실행하면 평균 대기시간은?

확인 답안 보기

1. P1은 0~1, P2는 1~3, P1은 3~10. 대기는 P1=2, P2=0이다.

2026.10.14 재확인: OSTEP CPU 스케줄링

꼭 기억할 것

SRT는 최초 실행시간이 아니라 매 시점의 남은 실행시간으로 선택한다.

헷갈리는 지점 응답시간과 반환시간은 다르다. I/O 없이 CPU burst만 있는 계산인지 먼저 확인한다.

직접 풀어보기 15문제

모두 유형 연습을 위해 직접 만든 문제입니다. C 예제의 printf·strlen은 필요한 표준 헤더가 포함된 상황을 가정합니다. Java는 표시된 클래스·main 위치에서 실행합니다. 단답은 동의어가 있을 수 있어 자동 판정 대신 자기 채점을 사용합니다.

운영체제 · 기본 · 창작 01미풀이

대기시간

도착 2, 실행 5, 완료 11인 작업의 대기시간은?

정답과 풀이 확인

정답 4

반환시간 11-2=9, 대기시간 9-5=4다.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 02미풀이

SRT 평균

위 개념의 A(0,6),B(1,2),C(2,1) 예에서 평균 대기시간은? 동률은 현재 작업 유지.

정답과 풀이 확인

정답 4/3

A3,B0,C1이므로 합 4/3. 소수로는 약 1.333이다.

해설과 비교해 직접 채점
운영체제 · 응용 · 창작 03미풀이

LRU 부재

프레임 3개, 처음 비어 있음. 참조 1,2,3,1,4,2의 LRU 부재 횟수는?

정답과 풀이 확인

정답 5

1,2,3 적재로 3회. 1 적중. 4는 가장 오래 안 쓴 2를 교체해 4회. 다시 2에서 3을 교체해 5회.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 04미풀이

FIFO 부재

같은 참조 1,2,3,1,4,2를 FIFO로 처리하면 부재 횟수는?

정답과 풀이 확인

정답 4

처음 3회. 1 적중은 순서 변화 없음. 4가 가장 먼저 들어온 1을 교체해 4회. 2는 남아 있어 적중한다.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 05미풀이

교착 회피

자원 할당 전 안전 상태인지 검사하는 대표 알고리즘은?

정답과 풀이 확인

정답 은행가 알고리즘

필요량·가용량으로 모든 작업이 완료 가능한 순서가 있는지 확인한다.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 06미풀이

HRN

대기 8, 서비스 4인 작업의 HRN 비율은?

정답과 풀이 확인

정답 3

(8+4)/4=3이다.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 07미풀이

이진 세마포어

초기값 1인 세마포어에 프로세스 A가 wait를 호출해 임계구역에 들어간 뒤, A가 나가기 전에 프로세스 B가 wait를 호출하면 B는 어떤 상태가 되는가?

정답과 풀이 확인

정답 대기 상태

세마포어 값이 0이 되어 B는 A가 signal을 호출할 때까지 블록된다.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 08미풀이

신호와 깨우기

대기 중인 프로세스를 깨우기 위해 세마포어 값을 증가시키는 연산은?

정답과 풀이 확인

정답 signal(V) 연산

wait(P)는 값을 감소시켜 자원을 점유하고, signal(V)는 값을 증가시켜 반납·대기자를 깨운다.

해설과 비교해 직접 채점
운영체제 · 응용 · 창작 09미풀이

RR 평균 대기

A,B 모두 도착0, 실행 A5·B3, q=2, 문맥 교환 비용0, A부터 실행한다. 평균 대기시간은?

정답과 풀이 확인

정답 3.5

A0~2 B2~4 A4~6 B6~7 A7~8. 대기 A3,B4. 평균3.5.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 10미풀이

페이지 부재 비교

프레임3개, 초기 빈 상태, 참조1,2,3,1,4,2의 FIFO·LRU 부재 수는?

정답과 풀이 확인

정답 4 / 5

FIFO는 적중1에서 순서 유지해 4에서1교체. LRU는1사용 갱신해2교체, 이후2참조도 부재.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 11미풀이

주소 변환

페이지 크기1024, 가상주소2500의 페이지가 프레임5에 있다. 물리주소는?

정답과 풀이 확인

정답 5572

페이지2, 오프셋452. 5×1024+452=5572.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 12미풀이

UNIX 권한

chmod 754의 소유자·그룹·기타 권한을 쓰시오.

정답과 풀이 확인

정답 rwx / r-x / r--

7=4+2+1, 5=4+1, 4=읽기.

해설과 비교해 직접 채점
운영체제 · 기본 · 창작 13미풀이

안전과 교착

불안전 상태이면 반드시 이미 교착상태인가?

정답과 풀이 확인

정답 아니다

안전 순서를 보장할 수 없는 상태이며 실제 교착 발생과는 다르다.

해설과 비교해 직접 채점
운영체제 · 응용 · 창작 14미풀이

응답과 대기 구별

도착0, 최초 실행3, CPU 실행4, 완료10인 프로세스의 응답·반환·대기시간은? I/O는 없다.

정답과 풀이 확인

정답 3, 10, 6

응답=3-0, 반환=10-0, 대기=10-0-4. 최초 시작까지의 시간만이 대기는 아니다.

해설과 비교해 직접 채점
운영체제 · 응용 · 창작 15미풀이

SRT 재계산

P1(도착0,실행8), P2(도착1,실행2). SRT의 평균 대기시간은? 문맥 교환 비용은 0이다.

정답과 풀이 확인

정답 1

실행 순서는 P1(0~1),P2(1~3),P1(3~10). 대기 2와 0의 평균은 1.

해설과 비교해 직접 채점

기출과 연결하기

2024년 3회 · 문자열 비교·Python 슬라이싱·LRU·상속·C 연결 구조

2026년 2회 · 구조체·상속·딕셔너리·외부 조인·상관 서브쿼리·SRT·서브넷

문법 문서·출처·확인 범위 보기