[정보처리기사_필기] 운영체제 <2>

반응형

스케줄링


✔ 운영체제가 순서와 시간을 배정


✔ 프로세스 스케줄러

  - 대기단계에서 실행단계로 프로세스를 옮김


✔ 비선점형 스케줄링 : 강력한 제어권 부재

  - FIFO (First in First out) : 질서구조(Queue), 대화형 시스템에 부적합

  - SJF (Shortest Job First) : 짧은 프로세스 우선, 예상시간보다 처리시간이 길어질때 문제가 발생한다. 

                                         가장 적은 평균 대기 시간,실행시간이 긴 프로세스는 무한 연기

 - HRN (Highest Respons-ratio next) : SJF의 단점(무한대기)보완 -> Aging 기법 사용

                                                      우선순위 = (대기시간 + 실행시간) / 실행시간

 - 기한부(Deadline) : 제한시간후 프로세스 종료여부에 관계 없이 소멸

 - 우선순위(Priority) : 에이징 기법에 사용되는 우선순위부여 방법


✔ 선점형 스케줄링 : 대화식 시분할 시스템에 사용

 - SRT(Shortest Remain Time) : SJF를 선점형으로 바꿈

 - RR(Round Robin) : FIFO을 선점형으로 바꿈, 할당시간(Time Slice)적용

                               할당시간 종료후 다시 대기상태로 돌아감

                               할당되는 시간이 클 경우 FIFO와 같아짐

                               할당되는 시간이 작을 경우 문맥교환이 잦아짐

 - MLQ(Multi level Queue) : 대기 프로세스를 중요도별로 그룹지어서 처리

                                        시스템 프로세스 -> 대화형 프로세스 -> 일괄처리 프로세스

 - MFQ(Multi level Feedback Queue) : 할당시간 종료후 하위큐로 순서가 밀림

                                                       상위큐에서는 FIFO, 하위큐에서는 RR로 작동


✔ 스케줄링의 목적

 - 처리율 증가, CPU이용률 증가, 오버헤드 최소화, 시간 최소화


주 기억장치


✔ 반입전략(Fetch) : 언제 주기억장치로 옮길것인가

 - 요구반입 / 예상반입


✔ 배치전략(Placement) : 주기억장치 어디로 옮길 것인가.

 - First fit (최초 적합) : 적재 가능한 첫 번째 공간에 배치

 - Best fit (최적 적합) : 단편화(낭비되는 공간)가 적은 공간에 배

                                 내부단편화 : 저장후 남는 공간

                                 외부단편화 : 저장할 수 없어 스킵된 공간

 - Worst fit (최악 적합) : 가장 큰공간에 배치, 빠르고 간단


✔ 교체전략(Replace) : 무엇을 가상메모리로 떨어트릴 것인가.


✔ 주기억장치 할당 기법

 - 좁은 기억장치 공간을 최적으로 활용하는 기법

 - 오버레이기법(프로그램의 필요한부분만 스테이징) -> 스와핑 기법(필요프로그램 전체) -> 가상메모리 기법(오버레이 + 스와핑)


✔ 단편화 해결방법

 - 통합기법(Coalescing)기법 : 인접된 공간을 합쳐서 넓은 공간 확보

 - 압축기법(Compaction)기법 : 떨어져 있는 낭비 공간을 모음(Garbage Collection)


가상 기억장치


✔ 보조기억장치를 주기억장치처럼 사용


✔ 스와핑처럼 프로그램을 올렸다가 내렸다를 하지만, 블록단위로 나누어서 수행


✔ 페이징

 - 가상기억장치에 분할된 공간 = 페이징

 - 주기억장치에 분할된 공간 = 블록

 - 외부단편화는 발생하지 않으나 내부단편화는 발생

 - 시간효율이 좋다


✔ 세그멘테이션

 - 내부단편화는 생기지 않지만 마지막에 외부단편화가 1회 발생한다.

 - 공간 효율이 좋다


✔ 페이지 교체 알고리즘

- 페이지 부재 수(요청된 프로세스가 주기억장치에 없을 경우 카운트됨)

- OPT기법 : 가장 오래 사용하지 않을 페이지 교체 -> 실현 불가

- FIFO기법 : 가장 오래된 페이지 교체

- LRU(recently)기법 : 마지막 사용 시간, 오래 사용하지 않은 페이지 교체

- LFU(Frequency)기법 : 사용 회수 적은것 교체

- NUR(Not Used Recently) : LRU, LFU 의 단점 보완

                                        참조비트와 변형비트를 두어서 교체 우선 순위 부여


✔ 페이지 크기

 - 작을 경우 : 외부단편화 발생, 이동시간 증가, 디스크 접근 횟수 증가

 - 클 경우 : 내부단편화 발생, 이동시간 감소, 디스크 접근 횟수 감소


✔ 구역성(Locality)

 - CPU는 일정시간에 일정 구역을 호출

 - 시간 구역성 : 시간예측이 가능 반복문(for문, Stack, Subroutine)

 - 공간 구역성 : 배열, 순차적 코드 실행


✔ 워킹셋(Working Set)

 - 자주 참조되는 페이지의 집합


✔ 스래싱(Threshing)

 - 프로그램 교체 시간이 늘어나면서 어느순간 CPU효율이 급 하락


디스크 스케줄링


✔ 디스크 스케줄링 기법

 - FIFO

 - SSTF (Shortest Seek Time First) :가까운 거리 트랙부터 차례대로 Seek

                                                   일괄처리에는 적합, 응답시간은 길어짐.

 - SCAN (엘레베이터 기법) :0번 방향으로 가까운 거리 트랙부터 차례로 수행 후 0번 도착하면 역방향 진행

 - C-SCAN :0번 방향으로 가까운 거리 0번까지 수행후 가장 먼곳에서 다시 0번 방향으로 진행

 - LOOK (C-LOOK) :SCAN(C-SCAN)보완 : 0번까지 안가고 0에 가까운 마지막 트랙에서 방향 바꿈


파일 시스템


✔ 파일

 - 보조기억장치에 저장된 상태


✔ 파일 시스템 (ex : 윈도우 탐색기)

 - 사용자와 보조기억장치 사이에 인터페이스 제공


✔ 파일 디스크립터(= 파일제어블록 FCB)

 - PCB와 같은 역할

 - 이름, 위치, 구조, 보조기억장치 유형, 시간정보, 엑세스 횟수 등이 저장되어 있다.


✔ 파일구조

 - 순차파일 : 저장효율은 높지만 접근 속도 느리다. (자기테이프)

                  파일 수정 삭제에 시간이 많이 걸린다.

 - 직접파일 : 직접접근방식

                   해싱함수를 이용하여 주소계산

                   저장효율은 낮지만 접근 속도 빠르다.

 - 색인순차파일(Indexed Sequential File)

➤ Prime 영역(기존 DATA)

      ➤ Index 영역(색인정보) - 트랙 색인(소), 실린더 색인(중), 마스터 색인(대)

      ➤ Overflow 영역(추가되는 DATA)

      ➤ 추가적인 기억공간 필요, 색인에 들러야 하므로 접근시간 증가


자원보호


✔ 접근 제어 행렬

 - 각각의 자원에 대한 접근 권한의 정도를 행렬로 표현


✔ 파일 보호 기법

 - 파일명명

 - 비밀번호 : 개인정보와 연관되지 않은것, 주기적 변경

 - 접근제어


보안


✔ 인증 : Login


✔ 부인방지 : 로그(증거)를 남김


✔ 보안유지기법

 - 외부보안 : 물리적보안

 - 내부보안 : 운영체제나 하드웨어의 암호

 - 사용자 인터페이스 보안 : 데이터 접근의 암호


✔ 정보 보안 기법

 - 비밀키(대칭형) : 암호생성 방법 = 암호해독 방법

 - 공개키(비대칭형) : 암호생성 방법 ≠ 암호해독 방법 (암호 생성방법 공개가능)


다중 처리기


✔ 여러개의 CPU가 하나의 작업을 나누어 수행


✔ 프로세서 연결방식

 - 공유 버스


✔ 운영체제 구조

 - 주/종 처리기 (하나의 Master프로세서와 여러개의 Slave프로세서)

 - 주프로세서 : 입출력, 운영체제

 - 종프로세서 : 연산만 담당


✔ 프로세서의 결합도

 - 약결합 시스템(Loosely Couples System) : 각각 독자적 메모리,O/S 사용

                                                               메시지를 통해 정보 공유

 - 강결합 시스템(Tightly Couples System) : 메모리 공유, O/S 공유

                                                             메모리를 통해 정보 공유

✔ Flynn의 분류

 - SISD

 - SIMD

 - MISD : 거의 사용 X

 - MIMD


분산 시스템


✔ 자원공유, 연산속도 향상, 신뢰도 향상, 보안이 약해지고, 설계가 복잡


✔ 투명성

 - 위치 투명성 : 자원의 위치를 몰라도 접근 가능

 - 이주 투명성 : 상대의 OS를 몰라도 접근 가능

 - 복제 투명성

 - 병행 투명성


✔ 분류

 - 클라이언트/서버 모델 (분산 처리)

 - 망형 (완전 연결형)(Mesh형) :각 컴퓨터가 서로 직접 연결 -> 성능 최적화

                                             설치 비용이 비쌈.

 - 트리형 (계층형)

 - 성형 (중앙집중형) : 모든 컴퓨터가 중앙 컴퓨터와 직접 연결

                               중앙 컴퓨터 오류시 전체 시스템 마비

 - 링형 (환형) :인접한 컴퓨터가 서로 연결

                     하나가 오류나면 일부 네트워크 오류

                     통신 비용이 증가, 노드 추가가 어렵다.

- 다중접근 버스형 :하나의 버스에 각각의 컴퓨터들이 연결


✔ 데이터 이주 : 데이터를 옮겨와서 연산


✔ 연산 이주 : 데이터를 고정해놓고 연산수행


운영체제


✔ UNIX 개요

 - 대부분 C언어로 작성 -> 이식성과 확장성이 높음

 - 멀티유저(서버 O/S를 공유), 멀티태스킹(여러 작업을 동시 수행)

 - CUI 이다


✔ UNIX 구성

 - Shell : 명령 해독

 - Kernel(엔진) : 핵심적인 부분

                       입출력관리, 파일관리, Process관리, Memory관리

                       하드웨어와 프로그램간 인터페이스 역할

 - 사용자 -명령-> Shell -해독-> 커널 -처리-> HDD


✔ UNIX 파일 시스템

 - 계층형 파일 시스템


✔ UNIX 구조

 - 부트블록 : 부팅관련 정보

 - 슈퍼블록 : 전체 시스템 정보

 - I-node(=FBC) : 저장된파일이나 디렉토리에 대한 모든 정보


✔ UNIX 파일시스템 보호

 - 사용자 구분 : 파일 소유자, 그룹, 기타 사용자

 - 접근 허가 방식 : 파일이름-rwxr--r--

            d 'or' - rwx rw- r--

                D:Directory 오너권한 그룹권한 기타권한

                -: File


✔ UNIX 명령어

 - Fork : 새로운 프로세스 생성, 복제

 - Exec : 새로운 프로세스 수행

 - Chmod (change mode) : 접근권한을 수정

                                       r = 4 / w =2 / x =1

                                       7 = RWX 가능 / 6 = RW- 가능 / 5 = R-X 가능 / 3 = -WX 가능

 - Ls : 현재 디렉토리의 파일 목록

 - Cat : 파일의 내용을 화면에 출력


✔ 윈도우 및 MS-DOS

 - Command.com = Shell

 - Msdos.sys + IO.sys = 커널

댓글

Designed by JB FACTORY