공룡책 ch1.1 ~ 1.3: 운영체제는 무엇을 하는가?

ino5·2022년 7월 3일

📖 Chapter 1 Introduction

운영체제

  • 컴퓨터의 하드웨어를 관리하는 소프트웨어
  • 응용프로그램의 기반을 제공
  • 컴퓨터 사용자와 컴퓨터 하드웨어 사이의 중재자 역할 수행

챕터 목적

  • 컴퓨터 시스템의 일반적인 구조와 인터럽트의 역할 설명
  • 현대 멀티프로세서 컴퓨터 시스템에서의 구성요소 설명
  • 유저 모드에서 커널모드의 transition 설명
  • 다양한 컴퓨터 환경에서 사용되는 여러 운영체제 설명
  • 무료 오픈 소스 운영체제 예시 제공

📖 1.1 What Operating Systems Do

세부 목차

  • 1.1 What Operating Systems Do
    • 1.1.1 User View
    • 1.1.2 System View
    • 1.1.3 Defining Operating Systems
  • 유저 관점에서 먼저 보고 그다음에 시스템 관점에서 본 뒤에 운영체제에 대해 정의한다.

컴퓨터 시스템

  • 컴퓨터 시스템을 크게 4개의 구성요소로 나눌 수 있다.
    • 하드웨어
    • 운영체제
    • 응용프로그램
    • 사용자

  • 컴퓨터 시스템을 하드웨어, 소프트웨어, 데이터로 이루어졌다고 볼 수도 있다

운영체제

  • 컴퓨터 시스템이 작동할 때 자원들을 적절히 사용하기 위한 수단
  • 다른 프로그램들이 잘 작동할 수 있는 환경 제공

📖 1.1.1 User View

일반적인 사용자를 위한 컴퓨터에서의 운영체제 목적

  • 컴퓨터 사용이 쉽도록 한다.
  • 퍼포먼스와 보안에 신경을 쓴다.
  • 상대적으로 자원 이용(resource utilization)에는 덜 신경을 쓴다.
    • 얼마나 다양한 하드웨어와 소프트웨어가 공유될 수 있는지

📖 1.1.2 System View

컴퓨터의 관점

  • 운영체제는 하드웨어와 가장 밀접한 프로그램이다.

자원 측면에서 관점

  • resource allocator로 볼 수 있다. (자원 할당자?)
  • 컴퓨터 시스템은 하나의 문제를 해결하기 위해 많은 자원을 가지고 있다.
    • CPU time, 메모리 공간, 저장 공간, 입출력 장치 등
  • 운영체제는 이 자원들의 관리자로서 수행한다.
  • 운영체제는 특정 프로그램 또는 사용자에게 어떻게 자원을 할당할지 정해서, 컴퓨터 시스템이 효율적이고 타당하게 작동할 수 있도록 한다.

프로그램 컨트롤 측면에서 관점

  • control program으로 볼 수 있다.
  • 다양한 입출력장치와 유저 프로그램들을 통제해야한다.
  • 유저 프로그램들의 실행을 관리해서 에러와 컴퓨터의 잘못된 사용을 막아야 한다.

📖 1.1.3 Defining Operating Systems

운영체제의 탄생

  • 군사목적으로만 쓰였던 컴퓨터가 일반적인 목적을 위한 컴퓨터로 진화되면서 운영체제가 생겼다.

운영체제의 존재 이유

  • 사용가능한 컴퓨터 시스템을 만드는 문제를 해결하기 위한 타당한 방법 제공
    • 컴퓨터 시스템의 근본적인 목적은 프로그램을 실행해서 사용자의 문제를 쉽게 해결하는 것이다.
    • 하드웨어는 이 문제를 위해 만들어졌다.
    • 하드웨어만으로는 사용하기 쉽지 않다. 그래서 응용 프로그램이 개발된다.
    • 응용프로그램들은 특정한 일반적인 작동(operation)이 필요하다. 입출력 장치를 컨트롤하는 것과 같은 것이 있다.
    • 자원을 컨트롤하고 할당하는 일반적인 함수들을 하나의 소프트웨어로 모은다.
    • 그것이 운영체제(operating system)이다.

커널, 시스템 프로그램, 응용 프로그램, 미들웨어

  • 커널
    • 컴퓨터에서 계속해서 실행되고 있는 한 프로그램
  • 시스템 프로그램
    • 운영체제와 연관이 있지만 커널의 필수적인 부분은 아닌 프로그램
  • 응용 프로그램
    • 시스템의 운영과 관계가 없는 모든 프로그램
  • 미들웨어
    • 개발자들에게 추가적인 서비스를 제공하는 소프트웨어 프레임워크들의 한 세트
    • 모바일 운영체제는 코어 커널 뿐만 아니라 미들웨어도 포함한다.
      • 미들웨어는 데이터베이스와 멀티미디어, 그래픽 등을 제공한다.

In summary

  • 운영체제는 다음을 포함한다.
    • 항상 실행 중인 커널
    • 어플리케이션 개발을 쉽게하고 여러 기능을 제공하는 미들웨어 프레임워크
    • 실행중인 동안 시스템을 관리를 지원하는 시스템 프로그램
  • 이 책에의 대부분에서는 범용 운영체제의 커널을 이야기한다.
  • 하지만, 운영체제 디자인과 동작을 충분히 설명해야 할 때 필요하다면 다른 구성요소들도 이야기한다.
profile
지금은 네이버 블로그만 해요... https://blog.naver.com/chero77

0개의 댓글