OS Concepts 10th 16

[OS] 1-10. 계산환경

1. 전통적 계산 (Traditional Computing) 현재는 전통적인 시분할 시스템을 많이 사용하지 않아서 굳이 다루지는 않겠다. 2. 모바일 컴퓨팅 (Mobile Computing) : 스마트폰, 태블릿 컴퓨터의 컴퓨팅 환경 데스크톱이나 랩톱과 달리 장치들을 손쉽게 가지고 다닐 수 있다는 특징을 갖고 있다. 뿐만 아니라 이메일, 웹 브라우징, 음악 연주, 비디오, 사진 촬영, 비디오 녹화 등의 다양한 범위의 응용 프로그램을 사용할 수 있게 되면서 엄청나게 성장해왔다. 현재 모바일 컴퓨팅에서 사용되는 대표적인 OS는 Apple iOS와 Google Android이다. 이에 대해서는 2장에서 좀 더 자세히 다루겠다. 3. 클라이언트-서버 컴퓨팅 (Client-Server Computing) 현대 네..

OS Concepts 10th 2023.08.06

[OS] Chapter 1-4. 운영체제의 작동

지금까지 컴퓨터 시스템 구성 및 아키텍처에 대한 내용을 전반적으로 살펴봤다. 이제 OS에 대해서 다뤄보도록 하겠다. OS는 프로그램이 실행하는 환경을 제공한다. 이번 절에서는 여러 OS가 갖고 있는 공통적인 내용들에 대해서 살펴보도록 하겠다. 컴퓨터 전원을 켜거나 재부팅할 때와 같이 컴퓨터를 실행하려면 초기 프로그램을 실행해야 한다. 이러한 초기 프로그램 또는 부트스트랩 프로그램은 단순한 형태를 띠는 경향이 있다. 일반적으로 컴퓨터 HW 내에 펌웨어로 저장된다. 뿐만 아니라 CPU 레지스터, Device Controller, Memory content 까지 시스템의 모든 측면을 초기화한다. 부트스트랩 프로그램은 OS를 load하는 방법과 해당 시스템을 실행하는 방법을 알아야 한다. 때문에, 부트스트랩 프..

OS Concepts 10th 2023.08.01

[OS] Chapter 1-3. 컴퓨터 시스템 구조

1-2에서는 전형적인 컴퓨터 시스템의 일반적인 구조를 살펴봤다. 컴퓨터 시스템은 사용된 범용 처리기(general-purpose processor)의 개수에 따라 분류할 수 있다. 1. 단일 처리기 시스템 (Single-processor Systems) 코어(core)는 명령(instruction)을 실행하고 로컬로 데이터를 저장하기 위한 레지스터를 포함한 구성요소다. 코어를 가진 하나의 메인 CPU는 프로세스의 명령어를 포함한 범용 명령어 세트를 실행할 수 있다. 위와 같은 시스템에는 디스크, 키보드와 같은 장치별 프로세서 형태로 제공되는 특수 목적 프로세서도 포함된다. 쉽게 말하면 한 번에 오직 하나의 프로세스만 실행할 수 있는 시스템이 단일 처리기 시스템이다. 하지만, 현대 컴퓨터 시스템에서는 si..

OS Concepts 10th 2023.07.28

[OS] Chapter 1-2. 컴퓨터 시스템의 구성

현대의 범용 컴퓨터 시스템은 아래 그림과 같이 하나 이상의 CPU와 버스를 통해 연결된 여러 가지 장치 컨트롤러로 구성된다. 각각의 장치 컨트롤러는 특정 유형의 장치들을 담당한다. ex) 1개의 시스템 USB 포트 ⇒ 여러 장치를 연결할 수 있는 USB 허브에 연결할 수 있음 장치 컨트롤러(device controller)는 일부 로컬 버퍼 저장소 & 특수 목적 레지스터 집합을 유지관리한다. 또한 제어하고 있는 주변 기기들과 로컬 버퍼 저장소 간의 데이터가 이동할 수 있도록 한다. 일반적으로 OS에는 각 장치 컨트롤러(device controller)마다 장치 드라이버(device driver)가 있다. 장치 드라이버는 device controller의 동작에 대해 잘 알고 있고 나머지 OS에 대해 장치..

OS Concepts 10th 2023.07.24

[OS] Chapter 1-1. 운영체제가 할 일

컴퓨터 시스템은 크게 4가지 구성요소 HW, 응용프로그램, OS, 사용자로 구분할 수 있다. HW : CPU, 메모리, I/O 장치로 구성되어 기본적인 계산 자원을 제공한다 응용 프로그램 : 워드, 엑셀 등은 사용자의 계산 문제를 해결하기 위해 자원이 어떻게 사용될지를 정의한다. OS : 다양한 사용자를 위해 다양한 응용 프로그램 간의 HW 사용을 제어하고 조정한다. OS는 컴퓨터 시스템이 동작할 때 주어진 자원을 적절하게 사용할 수 있도록 해주는데 마치 정부(government)와 유사하다. 정부처럼 그 자체로는 특별한 기능을 수행하지는 않지만 다양한 프로그램들이 유용한 작업을 할 수 있도록 환경을 제공해주기 때문이다. OS의 역할을 좀 더 완벽하게 이해하기위해 사용자와 시스템 두 관점에서 살펴보겠다...

OS Concepts 10th 2023.07.21

[OS] Chapter 1. 서론

운영체제(Operationg System)는 컴퓨터 HW를 관리하는 SW이다. 또한 응용 프로그램(application)을 위한 기반을 제공하고 User와 HW 사이의 중재자 역할을 수행한다. 현대 컴퓨팅 환경에서 OS의 역할을 탐구하기 위해 먼저 컴퓨터 HW의 구성과 구조를 이해하는 것이 중요하다. 여기에는 CPU, 메모리, 입출력 장치와 저장장치가 포함되는데 OS는 이러한 자원들을 프로그램에 할당하는 역할을 담당하고 있다. 이번 장에서는 현대 컴퓨터 시스템의 주요 구성요소와 OS가 제공하는 기능에 대한 전체적인 내용을 살펴본다. 또한 뒤 장을 다루면서 많이 나오는 주제들, OS에 사용되는 자료구조, 계산 환경 및 오픈 소스 및 무료 운영체제를 다룬다. 목표 컴퓨터 시스템의 일반적인 구성과 인터럽트의 ..

OS Concepts 10th 2023.07.21