728x90
반응형
운영체제의 개념
사용자 - 응용프로그램 - (유틸리티) - 운영체제 - 하드웨어
- 사용자가 컴퓨터 시스템을 원활하게 사용할 수 있도록 시스템을 제어하며 컴퓨터와 사용자간의 상호교신을 위한 프로그램
- 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종
운영체제의 목적
- 사용자와 컴퓨터 간의 편리한 인터페이스 제공
(CUI_Character User Interface) > GUI_Graphic User Interface > VUI_Voice User Interface)
- 자원의 효율적인 운영 및 자원 스케줄링(자원을 사용할 때 어떤 순서로 사용할 지)
- 데이터 공유 및 주변장치 관리 및 제어
- 처리 능력 및 신뢰성 향상, 사용가능도 향상
- 응답시간(첫번째 명령을 처리를 시작할 때까지 시간) 및 반환시간(최종결과값이 나오는 시간) 단축
- 입,출력을 편의제공
- 시스텀의 오류를 처리
운영체제의 성능 평가 기준
- 처리능력(Throughput)
일정 시간 내에 시스템이 처리하는 일의 양
- 반환시간(Turnaround time)
시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸리는 시간
- 사용가능도(Availability)
시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도
- 신뢰도(Reliability)
시스템이 주어진 문제를 정확하게 해결하는 정도
운영체제의 계층구조
* 프로세스 = 프로그램
임베디드 시스템
임베디드: 내장된
임베디드 시스템은 범용이 아닌 특별한 목적을 위해서 만든다.
ex) 카메라, 네비게이션, 블랙박스, TV
- 컴퓨터의 하드웨어와 소프트에어가 미리 정해진 특정한 기능을 수행하기 위하여 결합된 시스템
- 다양한 목적으로 사용되는 PC와 달리, 한가지 또는 몇 가지 특수한 작업을 수행
- 마이크로 프로세서/마이크로 컨트롤러를 내장(embedded)하여 원래 제작자가 의도한 특정한 기능만을 수행하는 장치
임베디드 시스템의 구성
- 임베디드 H/W: 프로세서/ 컨트롤러, 메모리, I/O장치, 네트워크 장치, 센서, 구동기
- 임베디드 S/W: 운영체제,시스템 S/W, 응용 S/W
임베디드 시스템의 특징
- 특정 목적 수행을 위해 최적화
- 실시간(real time) 처리 지원: 제한된 시간내에 명령 수행(적시성: timeless)
- 고도의 신뢰성 지원
- 소형 및 경량 지원
- 저전력 지원
운영체제의 운용기법
일괄처리 시스템(Batch Processing System)
- 초기의 컴퓨터 시스템에서 사용된 형태
- 일정량이 데이터를 모아서 한꺼번에 처리하는 방식
- 컴퓨터의 시스템을 효율적을 사용(가동률)
- 반환시간이 늦지만 하나의 작업이 모든 자원을 독점하므로 CPU 유휴 시간(idle time:노는 시간)을 줄임
- 급여계산, 수도/전기요금 계산, 연말 결산 등
다중 프로그래밍 시스템(Multi Programming System)
- 두 개 이상의 여러 프로그램을 주기억장치에 적재시켜 마치 동시에 실행되는 것처럼 처리하는 시스템
- I/O(입출력)작업과 CPU작업을 중첩함으로써 시스템 효율을 향상
- CPU위주의 작업, I/O위주의 작업을 잘 혼합하여 실행할 경우 CPU사용 효율이 매우 높아짐
- CPU의 사용률과 처리량이 증가
시분할 시스템(Time Sharing System)
- 여러명의 사용자가 사용하는 시스템에서 컴퓨터가 사용자들의 프로그램을 번갈아 가며 처리해 줌으로써 각 사용자에게 독립된 컴퓨터를 사용하는 느낌을 받음
- 하나의 CPU는 같은 시점에서 여러개의 작업을 동시 수행이 안되기 때문에 CPU를 같은 작업 시간량으로 나눠서 그 시간량 동안 번갈아가면서 CPU를 사용
- 좋은 응답 시간(response time)을 제공하기 위해 각 사용자들에게 CPU 시간(Time slice, quantum)만큼을 차례로 할당하는 라운드 로빈(round robin) 스케줄링을 사용
- 작업시간량 : Time Slice = Quantum
- 다중 프로그래밍 방식과 결합하여 모든 작업이 동시에 진행되는 것처럼 대화식 처리가 가능
- 시스템 전체 효율은 좋으나 사용자는 반응속도가 느려질 수 있음
다중모드 시스템(Multi Processing System)
- 여러개의 CPU와 하나의 주기억장치를 이용하여 여러개의 프로그램을 동시에 처리하는 방식
- 여러 CPU는 하나의 메모리를 공유함으로 단일 운영체제에 의해 관리
- 프로그램의 처리 속도는 빠르지만, 기억장치, 입/출력 장치등의 자원 공유에 대한 문제점을 해결해야함
실시간 처리 시스템(Real Time Processing System)
- 데이터 발생 또는 데이터에 대한 처리 요구가 있는 즉시 처리하여 응답해 주는 시스템
- 요구된 작업에 대하여 지정된 시간 내에 처리함으로써 신속한 응답이나 출력을 보장하는 시스템
- 우주선 운행이나 레이더 추적기, 은행의 온라인 업무 등 시간에 제한을 두고 수행되어야하는 작업에 사용
다중 모드 시스템(Multi Mode System)
- 일괄 처리 시스템, 시분할 시스템, 다중 처리 시스템, 실시간 처리 시스템을 한 시스템에서 모두 제공하는 방식
분산 처리 시스템(Distributed System)
- 자원 공유, 신속한 처리, 높은 신뢰성을 목적으로 여러개의 컴퓨터를 통신 회선으로 연결하여 작업과 자원을 분산시켜 처리하는 방식
- 각 단말은 고유의 운영체제와 CPU, 메모리를 가짐
분산 처리 시스템의 설계목적
- 자원 공유 : 각 시스템이 통신망을 통해 연결되어 있으므로 유용한 자원을 공유하여 사용
- 연산 속도 향상 : 하나의 일을 여러 시스템에 분산시켜 처리함으로써 연산속도가 향상
- 신뢰도 향상: 여러 시스템 중 하나의 시스템의 오류가 발생하더라도 계속 일을 처리할 수 있으므로 신뢰도가 향상
분산 처리 시스템의 단점
- 중앙 집중형 시스템에 비해 소프트웨어 개발이 어려움
- 중앙 집중형 시스템에 비해 보안 정책이 복잡
- 시스템 유지상 통일성을 잃기 쉬움
- 시스템의 설계가 복잡
분산 시스템의 투명성(Transparency)
- 분산 처리 운영체제에서 구체적인 시스템 환경을 사용자가 알 수 없도록 하며, 또한 사용자들로 하여금 이에 대한 정보가 없어도 원하는작업을 수행할 수 있도록 지원하는 개념
- 위치투명성: 자원의 물리적인 위치를 모르더라도 자원에 접근 가능
- 이주투명성: 사용자나 응용 프로그램의 동작에 영향을 받지 않고 시스템내에 있는 자원을 이동가능
- 복제투명성: 사용자에게 통지할 필요 없이 자원들의 부가적인 복사를 자유로이 수행가능
- 병행투명성 : 여러 다중 사용자들이 자원들을 병행하여 처리하고 공유 가능
운영체제 분류
windows , mac os , android, linux
728x90
반응형