Hello

[정처기 필기] 페이지 부재, 디스크 스케줄링, 파일시스템, 다중 처리기

by 볼빵빵오춘기

페이지 부재(Page Fault)

  • 참조할 페이지가 주기억 장치에 없는 현상이다.
  • ex) 3개의 페이지를 수용할 수 있는 주기억 장치가 있으며, 초기에는 모두 비어 있다고 가정한다.
    페이지 참조 순서 : 1, 2, 3, 1, 2, 4, 1, 2, 5
    다음의 순서로 페이지 참조가 발생할 때, FIFO페이지 교체 알고리즘을 사용할 경우 몇 번의 페이지 결함이 발생하는가?

디스크 스케줄링(Disk Scheduling)

사용할 데이터가 디스크의 여러 곳에 저장되어 있을 때 데이터를 액세스하기 위해 디스크 헤드의 이동 경로를 결정하는 기법

디스크 스케쥴링의 종류

FCFS(First Come First Service)

  • 디스크 대기 큐에 먼저 들어온 트랙에 대한 요청을 먼저 서비스하는 기법이다.
  • FIFO(First In Fisrt Out) 방식이라고도 한다.
  • 구현은 쉬운 반면 부하가 크면 응답 지역이 발생한다.
  • ex) 사용자가 요청한 디스크 입출력 내용이
    (단, 현재 디스크 헤드 위치는 53이고, 가장 안쪽이 1번 가장 바깥쪽이 200번 트랙이라고 가정한다.)
  • 다음의 작업 큐(90 183 37 122 14 128 65 67)와 같다.
  • 답 : 현재 위치에서 다음 작업 큐 그대로 가면된다. 
    따라서 답은 
    53 -> 90 -> 183 -> 37 -> 122 -> 14 -> 128 -> 65 -> 67

 

SSTF(Shortest Seek Time First)

  • 탐색 거리가 가장 짧은 트랙에 대한 요청을 먼저 서비스하는 기법이다.
  • 안쪽이나 바깥쪽 트랙이 가운데 트랙보다 서비스를 적게 받아 탐색 패턴이 편중된다.
  • 응답 시간 편차로 인해 대화형에는 부적합하다.
  • ex) 현재 헤드 위치가 53에 있고 트랙 1번 방향으로 이동 중이다. 요청 대기 큐에는 다음과 같은 순서의 액세스 요청이 대기 중일 때 SSTF 스케쥴링 알고리즘을 사용하면서 헤드의 총 이동 거리는 얼마인가?
    요청 대기 큐 : 98, 203, 37, 122, 14, 124, 65, 67
    (단, 현재 디스크 헤드 위치는 53이고, 가장 안쪽이 1번 가장 바깥쪽이 203번 트랙이라고 가정한다.)
  • 답: 53에서 거리차이가 얼마안나는 순서부터 이동하면 된다.
    53 - 65 => |-12 | => 12
    53 - 37 => |16| => 16
    이런 식으로 계산하면
    53 -> 65 -> 67 -> 37 ->.... 
     

파일 시스템(File System)

  • 파일(File)은 연관된 데이터들의 집합이다.
  • 파일은 각각의 고유한 이름을 갖고 있다.
  • 파일은 주로 보조 기억 장치에 저장하여 사용한다.
  • 파일 시스템은 보조 기억 장치와 그 안에 저장된 파일을 관리하는 시스템이다.

 

파일 디스크립터(File Descriptor)

  • 파일을 관리하기 위해 필요한 파일에 대한 정보를 갖고 있는 제어 블록이다.
  • 파일 제어 블록(FCB)이라고도 한다.
  • 파일마다 독립적으로 존재하며, 시스템에 따라 다른 구조를 가질 수 있다.
  • 대개 보조 기억 장치에 저장되어 있다가 해당 파일이 열릴(Open) 때 주기억 장치로 옮겨진다.
  • 파일 시스템이 관리하므로 사용자가 직접 참고할 수 없다.

 

파일 디스크립터의 내용

  • 파일의 구조, 유형
  • 파일의 크기, 이름
  • 파일의 생성 시간, 수정 시간
  • 파일에 대한 접근 횟수
  • 보조 기억 장치 정보, 접근 제어 정보

 

파일 구조의 종류

순차파일(Sequential File)

  • 레코드들이 논리적인 순서에 따라 물리적인 연속 공간에 순차적으로 저장되는 파일 구조
  • 주기적으로 처리하는 경우에 시간적으로 속도가 빠르며, 처리 비용이 절감된다.
  • 순차적으로 실제 데이터만 저장되므로 기억 공간의 활용률이 높다
  • 특정 레코드를 검색할 때, 순차적 검색을 하므로 검색 효율이 낮다.

 

색인 순차 파일(Indexed Sequential File)

  • 키 값에 따라 순차적으로 정렬된 데이터를 저장하는 데이터 구역과 이 구역에 대한 포인터를 가진 색인 구역으로 구성된 파일 구조이다.
  • 순차 처리와 직접 처리가 모두 가능하다.
  • 레코드의 삽입, 삭제, 갱신이 용이하다.
  • 인덱스를 이용하여 해당 데이터 레코드에 접근하기 때문에 처리 속도가 랜덤 편성 파일보다 느리다.
  • 인덱스를 저장하기 위한 공간과 오버플로우 처리를 위한 별도의 공간이 필요하다.
  • 색인 순차 파일의 구성
    • 기본 구역(Prime Area) : 레코드가 기록되는 영역
    • 색인 구역(Index Area) : 기본 구역의 레코드의 위치를 찾는 색인이 기록된 영역
    • 오버플로우 구역(Overflow Area)
    • 기본 구역에 레코드를 삽입하지 못하는 오버플로우 처리를 위한 별도의 영역이다.

 

직접파일(Direct File)

  • 키에 일정한 함수를 적용하여 상대 레코드 주소를 얻고, 그 주소를 레코드에 저장하는 파일 구조이다.
  • 해싱 등의 사상 함수를 사용하여 레코드 키에 의한 주소 계산을 통해 레코드를 접근할 수 있도록 구성된다.

 

다중 처리기(Multi-processor)

  • 하나의 시스템에 2개 이상의 프로세서를 가지고 동시에 여러 개의 작업을 처리하는 장치이다.
  • 프로게서 중 하나가 고장 나도 다른 프로세서들에 의해 고장난 프로세서의 작업을 대신 수행하는 장애 극복이 가능하다.
  • 프로세서 간의 통신은 공유 기억 장치를 통하여 입출력 채널, 주변 장치들을 공유한다.
  • 대칭적 다중 처리 방식과 비대칭적 다중 처리방식이 있다.
  • 성능 개선 목표 : 유연성, 신뢰성, 수행 속도

 

다중 처리기 운영체제의 구조

대칭적(Symmetric) 처리기

  • 모든 프로세서가 하나의 운영체제를 공유해서 수행한다.
  • 가장 복잡하지만 가장 강력한 구조이다.
  • 여러 개의 프로세서가 동시에 수행될 수 있다.

 

주/종(Master/Slave) 처리기

  • 하나의 주 프로세서와 나머지 종 프로세서로 구성된다.
  • 주 프로세서만이 운영체제를 수행한다.
  • 주 프로세서는 입출력과 연산을 수행한다.
  • 종 프로세서는 입출력 발생 시 프로세서에게 서비스를 요청한다.

 

분리 수행(Separate Execution) 처리기

  • 주/종 처리기의 비대칭성을 보완하여 각 프로세서가 별도의 운영체제를 가진다.
  • 프로세서별 자신만의 파일 및 입출력 장치를 제어한다.
  • 프로세서별 인터럽트는 독립적으로 수행된다.
  • 한 프로세서의 장애는 전 시스템에 영향을 미치지 않는다.

블로그의 정보

Hello 춘기's world

볼빵빵오춘기

활동하기