본문 바로가기

국가공인/정보처리산업기사

정보처리산업기사 1-1

반응형
  1. 운영체제의 정의
    • 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임
      • 자원이란 시스템에서 사용할 수 있는 CPU, 주기억장치, 보조기억장치, 프린터, 파일 및 정보 등
  2. 운영체제의 목적
    • 처리 능력 향상 : 일정 시간 내 시스템이 처리하는 일의 양
    • 반환 시간 단축 : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
    • 사용 가능도 향상 : 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
    • 신뢰도 향상 : 시스템이 주어진 문제를 정확하게 해결하는 정도
  3. 운영체제의 기능
    • 프로세서, 기억장치, 입출력장치, 파일 및 정보 등의 자원을 관리
    • 자원을 효율적으로 관리하기 위해 자원의 스케쥴링 기능을 제공
      • 스케쥴링 : 어떤 자원을 누가, 언제, 어떤 방식으로 사용할지 결정
    • 사용자와 시스템간의 편리한 인터페이스를 제공
    • 시스템의 각종 하드웨어와 네트워크를 관레, 제어한다.
    • 데이터를 관리하고, 데이터 및 자원의 공유 기능을 제공
    • 시스템의 오류를 검사하고 복구
    • 자원 보호 기능을 제공
    • 입출력에 대한 보조 기능을 제공
    • 가상 계산기 기능을 제공
  4. 운영체제 운용 기법
    • 일괄 처리 시스템(Batch Processing)
      • 초기의 컴퓨터 시스템에서 사용된 형태로, 일정량 또는 일정 기간 동안 데이터를 모아서 한꺼번에 처리하는 방식
      • 급여 계산, 지불 계산, 연말 결산 등의 업무에서 사용
    • 다중 프로그래밍 시스템(Multi-Programming)
      • 하나의 CPU와 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식
      • 하나의 주기억장치에 2개 이상의 프로그램을 기억시켜 놓고, 하나의 CPU와 대화하면서 동시에 처리
    • 시분할 시스템(Time Sharing)
      • 여러 명의 사용자가 사용하는 시스템에서 컴퓨터가 사용자들의 프로그램을 번갈아 가며 처리해 줌으로써 각 사용자에게 독립된 컴퓨터를 사용하는 느낌을 주는 방식으로, 라운드 로빈(Round Robin) 방식이라고도 한다
      • 다중 프로그래밍 방식과 결합하여 모든 작업이 동시에 진행되는 것처럼 대화식 처리가 가능하다.
    • 다중 처리 시스템(Multi-Processing)
      • 여러 개의 CPU와 하나의 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식
      • 하나의 CPU가 고장나더라도 다른 CPU를 이용하여 업무를 처리할 수 있으므로 시스템의 신뢰성과 안정성이 높다.
    • 실시간 처리 시스템(Real time Processing)
      • 데이터 발생 즉시, 또는 데이터 처리 요구가 있는 즉시 처리하여 결과를 산출
      • 우주선 운행, 레이더 추적기, 핵물리학 실험 데이터 수집, 전화교환장치 제어, 은행 온라인 업무, 좌석 예약 업무, 인공위성, 군함 등의 제어 업무 등 시간에 제한을 두고 수행되어야 하는 작업에 사용
    • 다중 모드 처리(Multi-Mode Processing)
      • 일괄 처리 시스템, 시분할 시스템, 다중 처리 시스템, 실시간 처리 시스템을 한 시스템에서 모두 제공하는 방식
    • 분산 처리 시스템(Distributed Processing)
      • 여러 개의 컴퓨터를 통신 회선으로 연결하여 하나의 작업을 처리하는 방식
      • 각 단말장치나 컴퓨터 시스템은 고유의 운영체제와 CPU, 메모리를 가지고 있음
  5. 운영체제 운용 기법 발달 과정
    • 1세대 : 일괄 처리
    • 2세대 : 다중 프로그래밍, 다중 처리, 시분할, 실시간 처리
    • 3세대 : 다중 모드
    • 4세대 : 분산 처리
  6. 프로세스의 정의
    • 프로세서(처리기, CPU)에 의해 처리되는 사용자, 시스템 프로그램, 즉 실행중인 프로그램을 의미한다
    • 운영체제가 관리하는 최소 단위의 작업, 테스크 이다.
    • 프로세스는 아래와 같은 형태로 정의 한다.
      • PCB를 가진 프로그램
      • 주기억장치에 저장된 프로그램
      • 프로세서가 할당되는 실체
      • 프로시저(부프로그램)가 활동중인 것
        • 한 프로그램은 여러 개의 작은 프로그램으로 분할될 수 있는데, 이때 분할된 작은 프로그램을 의미
      • 비동기적 행위를 일으키는 주체
        • 다수의 프로세스가 서로 규칙적이거나 연속적이지 않고 독립적으로 실행되는 것
      • 지정과 결과를 얻기 위한 일련의 계통적 동작
      • 목적 또는 결과에 따라 발생되는 사건들의 과정
  7. 프로세스 상태 전이
    • 출처 : https://minjiwoo.kr/185

      • 제출 : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태
      • 접수 : 제출된 작업이 스풀 공간인 디스크의 할당 위치에 저장된 상태
      • 준비 : 프로세스가 프로세서를 할당받기 위해 기다리고 있는 상태
      • 실행 : 준비상태 큐에 있는 프로세서가 프로세스를 할당받아 실행되는 상태
      • 대기, 보류, 블록 : 프로세스에 입출력 처리가 필요하면 현재 실행 중인 프로세스가 중단되고, 입출력 처리가 완료될 때까지 대기하고 있는 상태
      • 종료 : 프로세서의 실행이 끝나고 프로세스 할당이 해제된 상태
  8. 스레드
    • 프로세스 내에서 작업 단위로서 시스템의 여러 자원을 할당받아 실행하는 프로그램의 단위
    • 하나의 프로세스에 하나의 스레드가 존재하면 단일 스레드
    • 하나 이상의 스레드가 존재하면 다중 스레드
    • 프로세스의 일부 특징을 갖고 있기 때문에 경량 프로세스라고도 함
    • 자신만의 스택과 레지스터를 갖으며 독립된 제어 흐름을 갖는다.
  9. 스케쥴링
    • 프로세스가 생성되어 실행될 때 필요한 시스템의 여러 자원을 해당 프로세스에게 할당하는 작업
    • 프로세스가 생성되어 완료될 때까지 프로세스는 여러 종류의 스케쥴링 과정을 거침
  10. 스케쥴링 기법
    • 비선점 스케쥴링(Non-preemptive)
      • 이미 할당된 CPU를 다른 프로세스가 빼앗아 사용할 수 없는 스케쥴링 기법
      • 비선점 스케줄링의 종류에는 FCFS(FIFO), SJF, 우선순위, HRN, 기한부 등의 알고리즘이 있음
    • 선점 스케쥴링
      • 하나의 프로세스가 CPU를 할당받아 실행하고 있을 때 우선순위가 높은 다른 프로세스가 CPU를 강제로 빼앗아 사용할 수 있는 스케쥴링 기법
      • 선점 스케줄링의 종류에는 Round Robin, SRT, 선점 우선순위, 다단계 큐(MQ), 다단계 피드백 큐(MFQ) 등
  11. 주요 스케쥴링 기법
    • 실행 시간 : 프로세스가 실행한 시간 
    • 대기 시간 : 프로세스가 대기한 시간으로, 바로 앞 프로세스 까지의 진행 시간으로 계산
    • 반환 시간 : 프로세스의 대기 시간과 실행 시간의 합
      • 도착 시간이 있을 경우 대기시간 - 도착시간 + 실행시간 = 반환 시간
    • 평균 시간 계산 : 실행 or 대기 or 반환 / 프로세스의 개수
    • FCFS(Frist Come Frist Service, 선입선출) = FIFO(Frist In Frist Out)
      • 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당하는 기법, 가장 단순한 알고리즘
    • SJF(Shortest Job Frist, 단기 작업 우선)
      • 준비상태 큐에서 기다리고 있는 프로세스들 중에서 실행 시간이 가장 짧은 프로세스에게 먼저 CPU 할당
    • HRN(Highest Response-ratio Next)
      • 실행 시간이 긴 프로세스에 불리한 SJF기법을 보완하기 위한 것으로 대기 시간과 실행 시간을 이용하는 기법
      • 우선순위를 계산하여 그 숫자가 가장 높은 것부터 낮은 순으로 우선순위가 부여
      • 우선순위 = (대기시간 + 실행시간) / 실행시간
    • RR(Round Robin)
      • 시분할 시스템을 위해 고안된 방식으로 FCFS 알고리즘을 선점 형태로 변형한 기법
      • 할당되는 시간이 클 경우 FCFS 기법과 같아지고 작을 경우 문맥 교환 및 오버헤드가 자주 발생
      • 반환 시간 : 각 프로세스가 완료되는 시간을 이용하여 구함
      • 대기 시간 : 대기 시간을 구하고자 하는 프로세스의 가장 마지막 실행이 시작되기 전까지의 진행시간을 이용하여 구하되, 프로세스가 앞에서 여러번 실행되었을 경우 실행된 시간은 제외
반응형

'국가공인 > 정보처리산업기사' 카테고리의 다른 글

정보처리산업기사 1-2  (0) 2025.04.07