Skip to content

Latest commit

 

History

History
34 lines (26 loc) · 3.36 KB

hunsik.2장.md

File metadata and controls

34 lines (26 loc) · 3.36 KB

2장 운영체제란 ? 컴퓨터의 두뇌는 cpu가 아니라 운영체제다! 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어를 말한다. 영어로는 operating ststem이라고 부르며 하드웨어를 제어하는 역활을 한다. 운영체제는 사용자에게 편리한 환경을 제공하는 것도 있지만 정말 중요한 기능은 컴퓨터 시스템 내의 자원을 효율적으로 관리하는것이다. 그래서 운영체제를 자원관리자(resource manager)이라 부른다.

운영체제는 초기에는 단일작업 싱글테스킹 을 사용했었지만 기술의 발달로 요즘엔 다중 작업 멀티 태스킹을 사용한다.

처리 방식

일괄처리 방식 시분할 방식 실시간 운영체제 위와 같이 처리 방식으로는 일괄처리 방식과 시분할 방식, 실시간 운영체제가 있는데 시분할 방식은 cpu 작업시간을 여러 프로개름들이 조금씩 나누어 쓰는 시스템방식이라고 한다. 시분할방식의 특징으로는 사용자의 요청에 대한 결과를 바로 얻을수 있는 시스템을 말한다. 일괄처리 방식은 요청된 작업을 일정량씩 모아서 한꺼번에 처리하는 방식이다. 실시간 운영체제는 정해진 시간안에 어떠한 일이 반드시 처리됨을 보장해야하는 시스템에서 사용된다. 원자로,공장,미사일제어등을 떠올리면 된다.

대표적인 운영체제로는 MS윈도우나 유닉스 맥OS 등등이 있다. 윈도우 OS는 안정성은 떨어지지만 편리한기능들을 제공해서 일반사용자에 적합하다 유닉스는 개발환경을 위해 설계된 운영체제라 대형 컴퓨터 및 전문적인 목적의 컴퓨터에 사용하기에 적합하다.

운영체제는 시스템 내의 자원을 효율적으로 관리 하기 위해서 cpu,메모리,입출력장치 마다 관리 방식이 있는데 cpu는 cpu스케줄링 방식으로 선점형 방식과 비선점형 방식으로 나뉘는데 윈도우 OS가 전형적인 비선점형 방식인 라운드로빈 Round Robin 기법을 사용하고있고 유닉스OS는 선점형방식인 priority 기법을 사용한다. 라운드 로빈 방식은 시간을 일정하게 고정된 시간으로 제한하는 방식이고, priority 방식은 우선순위가 높은거부터 처리하는 방식이다. priority 단점으로 아주 유명한 "Starvation(기아현상)"을 보완하기위해 요즘은 Aging 기법을 더해서 priority+Aging 방식을 사용해 우선순위가 낮은 프로세스를 기다린 시간에 비례하여 우선순위를 높여 주는 방식이다.

메모리를 관리하는 방식으로는 고정분할 방식 가변분할 가상메모리 방식 등이있다. 고정 분할 방식은 물리적 메모리를 몇 개의 분할로 미리 나누어 관리한다. 가변분할 방식은 매 시점 프로그램의 크기에 맞게 메모리를 분할해서 사용하는 방식이다. 가상 메모리 기법은 물리적 메모리보다 더 큰 프로그램이 실행되는 것을 지원하고, 현대에서 가장 널리 사용한다.

주변 입출력장치는 인터럽트라는 메커니즘을 통해 관리를 하게 되고 인터럽트가 발생하면 운영체제는 해당하는 인터럽트 처리루틴을 찾아서 정의도니 코드에 따라 일을 수행하게 된다.

주변장치들은 컨트롤러를 통해 작업이 처리된다.