ino5.log
로그인
ino5.log
로그인
공룡책 ch1.1 ~ 1.3: 운영체제는 무엇을 하는가?
ino5
·
2022년 7월 3일
팔로우
0
운영체제
운영체제 공룡책
📖 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
운영체제는 다음을 포함한다.
항상 실행 중인 커널
어플리케이션 개발을 쉽게하고 여러 기능을 제공하는 미들웨어 프레임워크
실행중인 동안 시스템을 관리를 지원하는 시스템 프로그램
이 책에의 대부분에서는 범용 운영체제의 커널을 이야기한다.
하지만, 운영체제 디자인과 동작을 충분히 설명해야 할 때 필요하다면 다른 구성요소들도 이야기한다.
ino5
지금은 네이버 블로그만 해요... https://blog.naver.com/chero77
팔로우
이전 포스트
Comparator와 compareTo 사용해서 정렬하기
다음 포스트
공룡책 ch1.2 Computer-System Organization 개요
0개의 댓글
댓글 작성