자격증 공부/정보보안기사

정보보안기사(필기) 1. 시스템 보안 - 운영체제

DevStory 2020. 5. 3.

1. 운영체제의 개요

운영체제의 개요

- 처리능력, 신뢰도, 사용가능도의 향상, 반환시간의 단축

 

운영체제의 주요 기능

- 프로세스의 관리, 주기억장치 관리, 보조기억장치 관리, 입출력시스템 관리, 파일시스템 관리, 에러검출 및 응답

 

운영체제의 구조

하드웨어 - 프로세서 관리(1계층-하위단계) - 메모리 관리(2계층) - 프로세스 관리(3계층 - 상위단계) - 주변장치 관리(4계층) - 파일 관리(5계층) - 사용자

 

운영체제의 기술 발전 흐름

운영체제가 없음 : 순차처리

1세대 : 일괄처리

2세대 : 다중프로그램(CPU 1개, 주기억장치 1개) - > 시분할 -> 다중처리(CPU n개, 주기억장치 1개) -> 실시간

3세대 : 다중모드(일괄처리 + 시분할 + 다중처리 + 실시간)

4세대 : 분산처리(여러개의 컴퓨터를 회선으로 연결)

 

2. 운영체제의 주요 구성 기술

프로세스 관리

프로세스 제어 블럭(PCB) : 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓은 장소

-> 각 프로세스가 생성시 PCB 생성, 프로세스 완료시 PCB 소멸

-> 부모 프로세스와 자식 프로세스는 PCB 공유 안함

 

프로세스 생성시 필수 작업

- 이름 결정, 리스트에 추가, 우선순위 부여, PCB 생성, 초기자원 할당

 

프로세스 전이 상태

생성 -> 준비 -> 실행 -> 대기 -> 종료상태

Dispatcher : 준비상태의 프로세스가 CPU를 할당 받아 실행 상태로 전이되는 과정

ㆍTimer Runout : 실행 상태의 프로세스에 할당된 CPU 사용시간이 완료되어 준비 상태로 되돌아가는 상태

ㆍWake Up : 대기상태에 있던 프로세스가 기다리던 어떤 사건의 발생으로 인해 나머지 부분의 실행을 위해 준비상태로 전이되는 것

 

프로세스 구성요소

- 코드, 데이터, 스택, 힙

 

스케줄링을 통한 CPU 성능요소

- CPU 이용률, 시스템 처리율, 반환시간, 대기시간(큐에서 대기하는 시간), 반응시간(첫 번째 반응이 시작되는 시간)

 

ㆍ스와핑(Swapping) : 프로세스가 메모리로 적재되어 실행되었다가 더 이상 실행되지 않을 경우 다시 디스크로 내려 보내는 방법

 

프로세스 스케줄링 정책구분

- 선점 스케줄링 : 최단작업 우선 처리(SJF), 최단 잔여 시간(SRT), 순환할당(RR), 다단계 큐(Feedback)

- 비선점 스케줄링 : 최단작업 우선 처리(SJF), 선입선출(FIFO), 우선순위(Priority)

 

프로세스 교착상태(자원을 기다리는 무한대기 상태)

- 상호배제, 점유와 대기, 비중단(비선점) 조건, 환형대기조건

 

프로세스 교착상태의 해결 방안

- 교착상태 예방, 회피, 탐지, 복구

 

기억장치의 종류

- ROM : 비휘발성(전원이 꺼져도 지워지지 않음)

- RAM : 휘발성(전원이 꺼지면 지워짐)

 

- 가상 기억장치

   페이징 기법 : 동일한 크기

   세그먼테이션 기법 : 가변적인 크기

   페이징 교체 알고리즘 : 선입선출(FIFO), 최근최소사용(LRU), 최적교체(OPT), 클럭(Clock)

 

- 보조기억장치 : 자기 디스크, 자기 테이프, 자기 드럼, 기타 저장장치(CDROM, WORM, Zip DIsk, DVD 등)

   디스크와 디스크 스케줄링 : 선입선출(FIFO), 최소탐색우선(SSTF), SCAN, C-스캔

 

주기억장치관리 방법

- 반입기법 : 보조기억장치 데이터를 주기억장치로 옮김

 요구 반입 정책 : 실행에 필요할때, 데이터를 옮기는 정책이며, 오버헤드 적지만 대기시간 길게 소요함

 예상 반입 정책 : 실행 시간을 예상에서 데이터를 미리 주기억장치로 옮기는 정책이며, 오버헤드가 크지만 실행시간은 감소

- 배치기법 : 최초 적합, 최적 적합, 최악 적합

- 교체기법 : 최적화 기법, FIFO, LRU, LFU, NUR

 

기억장치의 단편화

- 내부 단편화 : 남는 공간

- 외부 단편화 : 부족한 공간

 

기억장치의 단편화 해결 방법

- 압축(Compacting) : 빈 공간을 한 곳으로 모은다.

- 페이징(Paging) : 주소공간을 페이지 단위로 나누고, 실제 주소 공간은 페이지 크기와 같은 페이지 프레임으로 나누어 사용

 

윈도우 파일시스템의 종류

- FAT : 하드디스크에 FAT라는 영역을 두어 파일의 실제 위치 등의 정보를 기록해두고 이를 이용함

- NTFS : 파일 복구 가능, 대용량 하드디스크 지원, 보안 기능, 압축 기능, 원격저장소 기능

   Everyone 그룹에 대해서는 모든 권한 '허용'

   사용자마다 다른 NTFS 보안 적용 가능

   파일이 폴더보다 보안이 강하게 적용됨

   특정 사용자가 생성한 폴더나 파일은 생성한 사용자에게 소유자 권한이 있음

   Windows 2000 server의 시스템 폴더는 Adminstrators 그룹과 Power User 그룹만 설정 가능

 

FAT 장점 : 호환성, 단순성, 저용량 볼륨에 최적화

FAT 단점 : 보안, 대용량 볼륨의 비효율적 이용

 

NTFS 장점 : 대용량 볼륨 지원, 디스크 효율적 사용, 보안 기능, 자동 압축 및 안정성, 향상된 파일 이름 저장 및 길이 지원

NTFS 단점 : 다른 운영체제 호환 불가, 저용량 볼륨에서 FAT 대비 속도가 느림

 

유닉스 & 리눅스 파일 시스템 종류

- EXT2 파일 시스템 특징

   파일시스템의 모든 정보를 슈퍼블럭과 Group Descriptor Table에 저장

   Boot Sector와 Block Group으로 구성되며, Block Group은 파일시스템 손상시 데이터를 복원한다.

   Block은 윈도우 클러스터와 같은 개념으로 1k ~ 4k로 가능하며 피일시스템 생성시 그 크기를 정할 수 있다.

 

EXT2 장점

- 시스템 손상될 경우 FSCK 기능을 이용한 복구

- 비교적 간단 명료함

- 다른 리눅스 파일 시스템 대비

 

EXT2 단점

- /var 디렉토리와 같이 새로운 자료가 쌓이는 곳에 취약

 

EXT3 장점

- 사용자가 직접 데이터 보호 유형과 수준 결정 가능

- EXT2에 비해 빠른 속도

- 저널링 기능을 사용해 더욱 빠르고 안정적인 복구 가능

- 디스크 효율적 사용, 강력한 보안 기능

- 자동 압축 및 안정성

- 향상된 파일 이름 저장 및 길이 지원

 

EXT3 단점

- JFs, ext4, XFs와 같이 extneds 기능 지원 불가

- 조각모음 기능 없음

- Checksum 검사 안함

 

파티션

- 주 파티션( x 3) : 기본 파티션 

- 확장 파티션( x 1) : 논리 파티션을 만들 수 있게 해주는 커다란 그릇

- 논리 파티션( x 12)

 

분산 시스템 - 투명성

- 위치, 이주, 병행, 복제

3. 운영체제 사례별 특징과 주요 기능

유닉스 구성(커널, 쉘, 파일시스템)

- 커널 : 핵심

   프로그램 관리

   프로세스, 메모리, 입출력, 파일 관리의 4개의 부분으로 나뉨

   파일 시스템의 접근 권한을 가짐

- 쉘 : 명령어 해석기

   Bourne 쉘 : 유닉스에서 제공하는 기본 쉘, 빠른 수행과 최소한의 자원만을 요구

   C 쉘 : 대형시스템에서 사용, C언어와 유사

   Korn 쉘 : 벨 연구소의 David Korn에 의해 제작, Bourne 쉘을 포함

- 파일시스템

   부트 블럭 : 부팅시 필요한 코드

   슈퍼 블록 : 전체 파일시스템에 대한 정보(=디스크 자체에 관련된 정보)

   Inode 블럭 : 각 파일이나 디렉토리에 대한 모든 정보

   데이터 블럭 : 실제 파일에 대한 데이터

 

분산 운영체제 특징

- 접근권한 통제 = 사용자 인증 + 접근 통제

- 침입 탐지 및 방어 

 

반응형

댓글