[운영체제] 1.1 운영체제의 개요

이두팔·2021년 4월 20일
0

운영체제

목록 보기
1/3

1.1 운영체제의 개요

1 운영체제의 역할

운영체제란 컴퓨터의 하드웨어 자원을 관리하고 컴퓨터 프로그램이 동작하기 위한 서비스를 제공하는 시스템 소프트웨어이다

(1) 컴퓨터 시스템의 운영

운영체제는 컴퓨터 시스템의 자원을 제어 및 관리하며 컴퓨터 시스템을 효율적으로 운영하는 역할을 한다. 여기에서 컴퓨터 시스템의 자원은 하드웨어 자원과 소프트웨어 자원으로 나누어 볼 수 있는데,

  • 하드웨어 자원: CPU, 메모리, 키보드, 마우스, 네트워크 카드
  • 소프트웨어 자원: 각종 프로그램, 데이터

(2) 사용자 지원

운영체제는 사용자가 편리하게 컴퓨터를 사용할 수 있도록 지원하는 역할을 한다. 사용자와 하드웨어 사이의 매개체 역할을 하는 것이 운영체제이다.

2 컴퓨터 시스템과 운영체제

하드웨어와 응용 프로그램 사이에 운영체제를 두고 하드웨어에 대한 제어는 운영체제만 하도록 하였다.

이렇게 함으로써 응용 프로그램은 하드웨어에 대한 자세한 정보를 모르더라도 운영체제에 부탁만 하면 운영체제가 대신 하드웨어를 제어하고 그 결과를 응용 프로그램에 제공해 주게 되었다.

  • 여러 응용 프로그램이 동시에 수행되더라도 운영체제가 중간에서 충돌없이 자원을 효율적으로 나눠 줌으로써 컴퓨터 시스템이 안정적으로 동작할 수 있게 되었다.
  • 이러한 형태로 동작하려면 응용 프로그램이 직접 하드웨어에 접근하는 것을 강제로 막을 필요가 있다.
  • 이를 위해 슈퍼바이저 모드와 보호 모드가 사용된다.
  • 슈퍼바이저 모드(= 커널 모드)는 하드웨어를 직접 제어할 수 있는 CPU의 명령어를 사용할 수 있는 모드, 운영체제의 커널이 동작되는 모드
  • 보호모드(=사용자 모드)는 하드웨어를 직접 제어하는 CPU의 명령어를 사용할 수 없는 모드, 응용 프로그램이 동작되는 모드


3 커널

응용 프로그램과 하드웨어 수준의 처리 사이의 가교 역할을 하는 운영체제의 핵심 요소를 커널이라고 한다.

일체형 커널과 마이크로 커널이 있다.

일체형 커널

  • 운영체제의 모든 서비스가 커널 내에 포함
  • 커널 내부 요소로 존재하는 여러 서비스들이 서로 효율적으로 상호작용 가능
  • 모든 요소가 커널 내부에 존재하기 때문에 하나의 요소에서라도 오류가 발생하면 시스템 전체에 장애를 일으킬 수 있다.
  • UNIX, Linux 운영체제들이 일체형 커널

마이크로 터널

  • 대부분의 요소들을 커널 외부로 분리하여 커널 내부에는 메모리 관리, 멀티 태스킹, 프로세스 간 통신(IPC) 등의 최소한의 요소들만 남겨 놓은 커널
  • 파일 시스템, 장치 드라이버, 네트워크 프로토콜 등은 보호 모드에서 동작하도록 분리
  • 새로운 서비스를 추가하여 운영체제를 확장하기 쉬움
  • 커널 외부의 요소에 문제가 발생하더라도 커널 자체에는 영향이 없기 때문에 유지보수가 용이하며 안정성이 우수
  • 커널 외부에 존재하는 운영체제의 요소들 사이에 데이터 전달이 필요한 경우 → 프로세스 간 통신을 통해야만 하기 때문에 성능 저하가 발생
profile
Software Engineer

0개의 댓글