본문 바로가기

Study/정보처리기사 필기

운영체제

핵심 개념(Key Concept)


 * 디렉터리 구조

- 1단계 디렉터리

가장 간단한 형태

하나의 디렉터리 내에 위치하여 관리되는 구조

- 2단계 디렉터리

중앙에 마스터 파일 디렉터리

그 아래에 사용자별로 서로 다른 파일 디렉터리가 있는 2계층 구조

- 트리 구조 디렉터리

하나의 루트 디렉트리와 여러 개의 종속 디렉터리로 구성된 구조

UNIX에서 사용

- 비순환 그래프 디렉터리

하나의 파일 따위를 공동으로 사용할 수 있다

사이클이 허용되지 않음

- 일반 그래프 디렉터리

비순환과 다르게 사이클이 허용


 * 교착상태 (Deadlock) 발생의 4가지 필요 충분조건

- 상호 배제 (Mutual Exclusion)

한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있다.

- 점유와 대기 (Hold and Wait)

하나 이상의 자원을 점유하면서 다른 프로세스가 가지고 있는 자원을 추가하기 위해 대기하는 프로세스 존재

- 비선점 (Non-Preemption) 

다른 프로세스에 할당된 자원은 강제로 빼앗을 수 없다

- 환형 대기 (Circular Wait)

공유 자원을 사용하기 위해 대기하는 프로세스들이 원형으로 구성

자신의 왼쪽이나 오른쪽의 프로세스의 자원을 요구


 * 모니터 (Monitor)

- 동기화 구현 프로그램

- 자료 추상화 및 정보 은폐 개념 기초

- 병행성 구조

- 외부의 프로시저는 직접 접근할 수 없다.

- 한 순간에 하나의 프로세스만 모니터에 접근 가능

- 모니터의 경계에서 상호 배제 시행

- 모니터 내의 공유 자원을 사용하려면 프로세스는 반드시 모니터의 진입부를 호출해야한다.


 * 분산 운영체제 

- 약결합 시스템

각 프로세서마다 독립된 메모리를 가진 시스템

분산 처리 시스템

독립된 컴퓨터 시스템을 통신망을 이용해 연결한 시스템

시스템마다 독자적인 운영체제를 가진다

독립적으로 작동 가능

프로세서 간의 결합력이 약하다

- 강결합 시스템

동일 운영체제 하에서 여러 개의 포로세서가 하나의 메모리를 공유하여 사용하는 시스템

다중(병렬) 처리 시스템

하나의 운영체제가 모든 프로세서와 하드웨어 제어

프로세서 간의 통신은 공유 메모리를 통한다

프로세서 간의 결합력이 강하다

공유 메모리에 대한 경쟁을 최소화해야한다.


 * 페이지 교체 기법

- OPT (OPTimal replacement)

앞으로 가장 오랫동안 사용하지 않을 페이지를 교체

- FIFO (First In First Out)

가장 먼저 들어와있던 페이지를 교체하는 방법

- LRU (Least Recently Used)

최근에 가장 오랫동안 사용하지 앟은 페이지를 교체하는 기법

- LFU (Least Frequency Used)

사용 빈도가 가장 적은 페이지를 교체하는 기법

- NUR (Not Used Recently)

LRU와 비슷한 알고리즘

각 페이지마다 참조 비트와 변형 비트를 두는 교체 기법


 * 페이지 크기

- 작을 경우

내부 단편화 감소

기억장소 이용 효율 증가

페이지 맵 테이블의 크기가 증가해서 매핑 속도가 느려진다

디스크 접근 횟수가 많아져, 입출력 시간이 늘어난다.

- 클 경우

페이지 맵 테이블의 크기가 작아져 매핑 속도가 증가

디스크 접근 횟수가 줄어들어 입출력 효율성 증가

내부 단편화 증가

불필요한 내용까지 주기억장치에 적재될 수 있다.


 * 선점 또는 비선점 스케쥴링

- 선점

RR (Round Robin), SRT, 선점 우선순위, 다단계 큐, 다단계 피드백 큐

- 비선점

FIFO, SJF, 우선순위, HRN, 기한부


 * 시스템 소프트웨어의 구성

- 제어 프로그램 (Control Program)

감시 프로그램 (Supervisor Program)

제어 프로그램 중 가장 중요한 역할을 담당

각종 프로그램의 실행과 시스템 전체의 작동 상태를 감시하는 프로그램

작업 제어 프로그램 (Job Control Program)

어떤 업무를 처리하고 다른 업무로의 이행을 자동으로 수행하기 위한 준비

처리에 대한 완료를 담당하는 프로그램

작업의 연속 처리를 위한 스케쥴 및 시스템 자운 할당 담당

- 처리 프로그램 (Processing Program)

언어 번역 프로그램 (Language Translate Program)

원시 프로그램을 기계어 형태의 목적 프로그램으로 번역하는 프로그램

어셈블러, 컴파일러, 인터프리터

서비스 프로그램 (Service Program)

컴퓨터를 효율적으로 사용할 수 있는 사용 빈도가 높은 프로그램

문제 프로그램 (Problem Program)

특정 업무 및 해결을 위해 사용자가 작성한 프로그램


 * 운영체제 운용 기법

- 일괄 처리 시스템 (Batch Processing System)

초기의 컴퓨터 시스템에서 사용된 형태

데이터를 모아서 한꺼번에 처리하는 방식

- 다중 프로그래밍 시스템 (Multi-Programming System)

하나의 CPU와 주기억장치를 이용해서 여러 개의 프로그램을 동시에 처리하는 방식

- 시분할 시스템 (Time Sharing System)

컴퓨터가 여러 사용자들의 프로그램을 번갈아가면서 처리해 주는 시스템

독립된 컴퓨터 느낌을 줌

RR 방식

- 다중 처리 시스템 (Multi-Processing System)

여러 개의 CPU와 하나의 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식

- 실시간 처리 시스템 (Real Time Processing System)

데이터 발생 즉시, 또는 데이터 처리 요구가 있는 즉시 처리하여 결과 산출

- 다중 모드 처리 (Multi-Mode Processing)

일괄 처리 시스템, 시분할 시스템, 다중 처리 시스템, 실시간 처리 시스템을 한 시스템에서 모두 제공

- 분산 처리 시스템 (Distributed Processing System)

여러 개의 프로세서를 통신 회선으로 연결하여 처리





참고(Reference)


 시나공 기출문제집 - 정보처리기사 필기 



※ 정확하고 부드러운 태클은 언제나 환영입니다.

'Study > 정보처리기사 필기' 카테고리의 다른 글

소프트웨어 공학  (0) 2019.03.02
데이터베이스  (0) 2019.03.01
전자계산기 구조  (0) 2019.02.27
데이터 통신  (0) 2019.02.25