운영체제란?
- 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
- 하드웨어 위에 운영체제를 설치해놓으면, 두개가 한몸이 되서 하나의 컴퓨터 시스템이 된다.
- 사용자는 직접 하드웨어로 접근하지 않고도, 운영체제를 이용해서 컴퓨터를 쉽게 사용할 수 있다.
- 또한 다른 소프트웨어들도 운영체제의 관리를 받기 때문에 다른 하드웨어와 직접 접촉하지 않고도 실행할 수 있다.
운영 체제의 목적
컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공
- 운영체제는 동시 사용자/프로그램들이 각자 독자적 컴퓨터에서 수행되는것 같은 환상을 제공
- 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행
- 컴퓨터 한대 존재(운영체제 설치되어 있음)
- 사용자들이 프로그램을 실행시키게 되면 마치 자기 프로그램만 컴퓨터에서 실행되는거 같은 환상을 제공한다.
- 이러한 개념이 위의 그림 운영체제를 기준으로 윗 단의 내용이다.
- 그렇다면 아랫 단은 어떻게 될까?
- 컴퓨터 시스템의 자원(resource)을 효율적으로 관리해준다.
- 자원이란?
- 컴퓨터 시스템 안의 CPU나 메모리, 각종 입출력 장치, 하드디스크 같은 보조 기억장치 등
- 프로세서, 기억장치, 입출력 장치 등의 효율적 관리
- 여러 사용자가 컴퓨터를 실행시키면 각자 자신들 만의 컴퓨터가 있다고 생각을 하지만 실제로는 한대만 존재. 그리고 그 안에 CPU, 메모리 등이 있다.
- 원칙적으로 컴퓨터에는 하나의 CPU 존재
그렇다면 여러 프로그램이 동시에 실행되면??
- 하나의 CPU를 가지고 번갈아 가면서 사용
- 엄청나게 빠른 시간으로 번갈아 가면서 사용하기 때문에 사용자 입장에서는 여러 사용차 측면에서는 자신의 프로그램 하나만 컴퓨터에서 동작하는것 처럼 보임.
- 이런 CPU를 짧은 시간 간격으로 번갈아 가면서 실행하게 해주는 것이 운영체제가 하는 역할 중 하나이다.
메인 메모리
- 여러 프로그램이 동시에 실행되야 하기 때문에 메모리를 쪼개져서 프로그램들이 메모리에 올라가 있다.
- 그렇다면 어떤 프로그램에 메모리를 얼마나 할당해야 하는지에 대한 문제가 생김.
- 그런 문제 또한 운영체제가 담당한다.