[정보처리기사] 개정 후 2020 시나공 필기 요약 정리 - 4과목 3장. 응용 SW 기초 기술 활용 (1)



:bulb: 정보처리기사 4과목 프로그래밍 언어 활용

3장. 응용 SW 기초 기술 활용

141 운영체제의 개념 Ⓐ

운영체제

  • 프로세서, 기억장치, 입출력장치, 파일 등의 자원 관리
  • 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경 제공
  • 사용자와 하드웨어 간의 인터페이스
  • 시스템의 오류 검사·복구
  • ex) Windows, UNIX, LINUX, MacOS, MS-DOS

운영체제의 목적

  • 처리 능력(Throughput) : 일정 시간 내에 시스템이 처리하는 일의 양
  • 반환 시간(Turn Around Time) : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
  • 사용 가능도(Availability) : 시스템 필요 시 즉시 사용 가능한 정도
  • 신뢰도(Reliability) : 정확하게 해결하는 정도

143 UNIX / LINUX / MacOS Ⓐ

UNIX

  • 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제
  • 이식성 높음
  • Multi-User, Multi-Tasking
  • 트리 구조의 파일 시스템

Kernel / Shell

  • Kernel
    • UNIX의 가장 핵심적인 부분
    • 컴퓨터 부팅 시 주기억장치에 적재된 후 상주하면서 실행
    • 프로그램과 하드웨어 간의 인퍼테이스 담당
    • 프로세스 관리, 기억장치 관리, 파일 관리, 입출력 관리, 프로세스간 통신 …
  • Shell
    • 명령어 해석기
    • 시스템과 사용자 간의 인터페이스 담당
    • 파이프라인 기능 지원
  • Utility Program : 에디터, 컴파일러, 인터프리터, 디버거

144 기억장치 관리의 개요 Ⓐ

기억장치 계층 구조

◀───────── 접근 속도 ↑, 비트당 가격 ↑ ─────────
레지스터 - 캐시 기억장치 - 주기억장치 - 보조 기억 장치
───────── 접근 시간 ↑, 용량 ↑ ─────────▶

기억장치 관리 전략

  • 반입(Fetch) 전략
    • 프로그램이나 데이터를 언제 주기억장치로 적재할지 결정
    • Demand Fetch : 프로세스가 특정 데이터를 요구할 때 적재
    • Anticipatory Fetch : 미리 예상하여 적재
  • 배치(Placement) 전략
    • 최초 적합(First Fit) : 들어갈 수 있는 크기의 빈 영역 중에서 첫번째에 배치
    • 최적 적합(Best Fit) : 들어갈 수 있는 크기의 빈 영역 중에서 단편화를 가장 작게 남기는 영역에 배치
    • 최악 적합(Worst Fit) : 들어갈 수 있는 크기의 빈 영역 중에서 단편화를 가장 많이 남기는 영역에 배치
  • 교체(Replacement) 전략
    • 어느 영역을 교체하여 사용할 것인지 결정
    • ex) FIFO, OPT, LRU, LFU, NUR, SCR

145 주기억장치 할당 기법 Ⓒ

연속 할당 기법

  • 단일 분할 할당 기법 : 오버레이, 스와핑
  • 다중 분할 할당 기법 : 고정 분할 할당 기법, 동적 분할 할당 기법
    분산 할당 기법 : 페이징, 세그멘테이션

단일 분할 할당 기법

  • 한명의 사용자만이 주기억장치의 사용자 영역을 사용
  • 오버레이(Overlay) : 프로그램을 분할 후 필요한 조각을 차례로 적재하여 실행, 공간이 부족하면 불필요한 조각을 overlay 하여 적재
  • 스와핑(Swapping) : 프로그램 전체를 주기억장치에 할당하다 필요에 따라 다른 프로그램과 교체

다중 분할 할당 기법

  • 고정 분할 할당 기법(정적 할당) : 사용자 영역을 여러 개의 고정된 크기로 분할하고 프로그램을 각 영역에 할당하여 수행, 내부 단편화 및 외부 단편화 발생
  • 가변 분할 할당 기법(동적 할당) : 프로그램을 주기억장치에 적재하면서 필요한 만큼의 크기로 영역을 분할, 영역과 영역 사이 단편화 발생

146 가상기억장치 구현 기법 / 페이지 교체 알고리즘 Ⓐ

페이징(Paging)

  • 프로그램과 주기억장치의 영역을 동일한 크기로 나눔
  • Page : 프로그램을 일정한 크기로 나눈 단위
  • Page Frame : Page의 크기로 일정하게 나누어진 주기억장치의 단위
  • Page Map Table : 주소 변환을 위한 Page의 위치 정보를 가짐
  • 내부 단편화 발생
  • 페이지 크기 ↓ 페이지 맵 테이블 ↑

세그멘테이션(Segmentation)

  • 프로그램을 다양한 크기의 논리적인 단위로 나눔
  • Segment : 프로그램을 논리적인 크기로 나눈 단위
  • Segment Map Table : 주소 변환을 위한 Segment의 위치 정보를 가짐
  • 기억공간 절약 가능
  • 주기억장치에 적재 시 다른 세그먼트에게 할당된 영역을 침범할 수 없음 -> 기억장치 보호키 필요
  • 외부 단편화 발생

기억장치 교체 알고리즘

  • OPT(Optimal replacement) : 앞으로 가장 오랫동안 사용하지 않을 페이지 교체
  • FIFO(First In First Out) : 가장 먼저 들어온 페이지 교체
  • LRU(Least Recently Used) : 가장 오랫동안 사용하지 않은 페이지 교체
  • LFU(Least Frequently Used) : 사용 빈도가 가장 적은 페이지 교체
  • NUR(Not Used Recently) : 최근에 사용하지 않은 페이지 교체, 참조 비트와 변형 비트 사용

:bulb: (참조비트, 변형비트) = (0, 0)인 경우 가장 먼저 교체 / (1, 1)인 경우 가장 나중에 교체


147 가상기억장치 기타 관리 사항 Ⓐ

페이지 크기

  • 페이지 크기 ↓ : 단편화 ↓, 효율적인 워킹 셋 유지, 기억장치 효율 ↑, 페이지 맵 테이블 크기 ↑, 입출력 시간 ↑
  • 페이지 크기 ↑ : 단편화 ↑, 입출력 효율 ↑, 페이지 맵 테이블 크기 ↓, 매핑 속도 ↑, 주기억장치로 이동하는 시간 ↑, 불필요한 내용도 적재 가능

Locality

  • 주기억장치를 참조 시 일부 페이지만 집중적으로 참조하는 성질
  • 워킹 셋 이론의 기반
  • Denning 교수에 의해 증명됨
  • 시간 구역성 : 루프, 스택, 서브 루틴, 카운팅, 집계
  • 공간 구역성 : 배연 순회, 순차적 코드 실행

워킹 셋

  • 프로세스가 일정 시간동안 자주 참조하는 페ㅣ지들의 집합
  • Denning이 제안
  • Locality의 성질 이용
  • 시간에 따라 변경됨

프리페이징(Prepaging)

  • 과도한 페이지 부재를 방지하기 위해 필요할 것 같은 모든 페이지를 한꺼번에 페이지 프레임에 적재

스레싱(Thrashing)

  • 프로세스의 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상
  • 다중 프로그래밍의 정도를 감소시켜야 함



:bookmark: REFERENCE
2020 시나공 정보처리기사 필기 : NCS 기반 전면 개편[개정판]