반응형

운영체제의 개요

운영체제란 시스템 자원을 효율적으로 사용하고, 컴퓨터-사용자간의 편리한 인터페이스를 제공하며 처리능력(Throughput), 신뢰도(Realiability), 사용가능도(Availability)의 향상과 반환시간(Turn Around Time) 단축의 목적이 있다. 또한 프로세스, 기억장치, 입출력 장치, 파일 등 자원관리 및 자원의 스케줄링기능, 시스템의 각종 하드웨어 및 네트워크 관리 제어 등을 포함하고 있다.


1. 운영체제의 주요기능

1) 프로세스 관리 : 하드웨어에 의존된 가장 하위 단위 수준으로 프로세스 스케줄링을 통해 실행 가능한 프로세스를 추적 관리한다.

2) 주기억장치관리 : 주기억장치의 접근을 제어하는 장치부분으로 주소변환, 기억보호, 버퍼기억 등의 기능을 수행한다.

3) 보조기억장치관리 : 하드디스크 및 주변기기의 기억장치에 대한 접근관리, 제어 등을 수행한다.

4) 입출력시스템관리 : 중앙시스템과 외부와 효율적인 통신방법을 제공하고 주변장치라고도 한다. 주로 키보드, 마우스, 디스플레이장치, 프린터와 보조기억장치인 자기테이프, 자기디스크 들이 있다.

5) 파일시스템관리 : 운영체제는 프로그램이나 데이터를 파일단위로 관리하며 저장장치에 파일단위로 저장한다.

6) 에러검출 및 응답

  * 내부 및 외부 하드웨어 에러(메모리 에러, 디바이스 결함)관리

  * 소프트웨어 에러 : 금지된 메모리 영역의 접근, 응용프로그램 수용 거부


2. 운영체제의 구조

1) 프로세서 관리(1계층-하위단계) : 동기화 및 프로세서 스케줄링 담당

2) 메모리 관리(2계층) : 메모리 할당 및 회수 기능을 담당

3) 프로세스 관리(3계층-상위단계) : 프로세스 생성, 제거, 메시지 전달, 시작과 정지 작업

4) 주변장치 관리(4계층) : 주변장치 상태파악과 입출력 장치의 스케줄링

5) 파일 관리(5계층) : 파일의 생성과 소멸, 파일의 열기와 닫기, 파일의 유지 및 관리


운영체제의 발전 흐름

1) 순차처리 : 운영체제가 없으며, 이 시대 컴퓨터들은 디스플레이 발광체(Light), 토글(Toggle), 스위치, 입력장치, 그리고 프린터로 구성된 콘솔(Console)을 통해 운영됨

2) 일괄처리시스템(Batch Processing System) : 초기의 컴퓨터 시스템에 사용한 형태로 일정량 또는 일정기간 데이터를 모아서 한꺼번에 처리하는 방식

3) 다중프로그램(Multi-Programming System) : 입출력 장치와 CPU 사이의 속도 차이를 이용하여 하나의 CPU와 주기억 장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식

4) 시분할시스템(Time Sharing System) : 여러 명의 사용자가 사용하는 시스템에서 컴퓨터가 사용자들의 프로그램을 번갈아가며 처리함으로써 각 사용자는 독립된 컴퓨터를 사용하는 느낌을 줌. 라운드 로빈(Round Robin)방식이라고도 함

5) 다중처리시스템(Muti-Processing System) : 여러 개의 CPU와 하나의 주기억 장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식

6) 실시간처리시스템(Real Time Processing System) : 데이터 발생 또는 데이터 처리요구가 있는 즉시 처리하여 결과를 산출하는 방식

7) 다중모드처리(Muti-Model Processing) : 일괄처리 시스템, 시분할 시스템, 다중처리 시스템, 실시간 처리 시스템을 한 시스템에서 모두 제공하는 방식

8) 분산처리시스템(Distributed Processing System) : 여러 개의 컴퓨터(프로세서)를 통신 회선으로 연결하여 하나의 작업을 처리하는 방식


1세대 : 순차처리, 일괄처리 시스템

2세대 : 다중프로그램, 시분할시스템, 다중처리시스템, 실시간처리시스템

3세대 : 다중모드처리

4세대 : 분산처리시스템


프로세스와 스레드의 차이점

프로세스

스레드

프로그램(코드)이 메모리상에 읽혀져서 실행중인 상태

하나의 프로그램 내에서 여러 개의 실행흐름을 두기 위한 모델

각 프로세스는 별도의 리소스를 할당받음

스레드들은 같은 프로세스에 있는 자원과 상태를 공유

논리적으로 운영체제가 해야 하는 작업

프로세스의 하위 작업 중에 하나. 프로세스보다는 작은 단위


기억장치의 종류

1. 주기억장치(Main Memory, Real Memory) - ROM,RAM : 주기억 장치는 비교적 비싼 자원이며 소량의 자료를 임시로 기억할 수 있고 영구히 저장할 수는 없다.

* CPU가 직접 접근하여 처리할 수 있는 기억장치

* 현재 수행되는 프로그램, 입력데이터, 작업, 출력데이터를 저장하는 기억장소

* ROM(Read Only Memory) : 기억된 내용을 자유롭게 읽을 수 있으나 자료를 임의로 기억 시킬 수 없는 읽기 전용 기억장치로 전원이 중단되어도 없어지지 않는다(비휘발성)

* RAM(Random Access Memory) : 임의로 사용할 수 있으며 전윈이 중단되면 데이터가 사라지는 휘발성 메모리로 컴퓨터 작업시 하드디스크에 있는 내용을 RAM으로 불러서 작업하게 된다.

* 주기억장치 공간분할 방식

 - 고정 분할(Fixed Partition) 방식 : 주기억장치 공간을 동일한 크기의 고정된 부분으로 미리 나누어 할당하는 방식으로 정적(Static) 방식이라고도 함

 - 가변 분할(Variable Partition) 방식 : 각 부분의 크기가 고정되어 있는 것이 아니라 프로세스를 처리하는 과정에서 필요한 만큼 공간을 할당하는 동적(Dynamic) 분할 방식이라고도 함


2. 가상기억장치(Virtual Memory) : 컴퓨터에서 프로그램이나 작업을 실행하는데 필요한 RAM이 부족한 경우 사용하기 위하여 확보된 실제 RAM 이상의 메모리 영역을 말한다.

* 가상 기억장치 구현방식

 - 페이징(Paging) 방식 : 프로그램을 동일한 크기의 물리적 단위(Page)로 나누어 이 페이지 단위로 가상기억장치를 구현하는 기법

 - 세그먼테이션(Segmentation) 기법 : 프로그램의 가변적인 크기의 논리적인 단위(Segment)로 나누어 세그먼트 단위로 가상 기억 장치를 구현하는 방식


3. 보조기억장치(Auxiliary Memory, Secondary Memory) : 대량의 데이터를 적은 비용으로 저장하기 위하여 사용되는 비휘발성의 기억장치로서 데이터를 반영구적으로 저장할 수 있다.

* 자기디스크 : 둥근 원형에 자성 물질을 입혀 이를 회전시키면서 데이터를 기록하고 읽는 장치(플로피디스크, 하드디스크)

* 자기테이프 : 기억된 순서에 따라 내용을 읽는 순차 접근만 가능하여 속도가 느리지만 용량에 비해 가격이 저렴하여 백업용으로 많이 사용됨.

* 자기드럼 : 원통형 표면에 자성물질을 입힌 것으로 고정 헤드디스크를 사용하므로 Seek Time이 없어 엑세스 시간이 빠르지만 낮은 용량으로 현재는 거의 사용되고 있지 않음.

* 기타저장장치 : CDROM(Compat Disk Read Only Memory), WORM(Write One Read Many Time), Zip Disk, DVD(Digital Versatile Disk), USB 등


반응형

'운영체제(OS)' 카테고리의 다른 글

VMware Workstation 12에서 macOS 10.12 Sierra 설치하기  (0) 2018.04.26

+ Recent posts