본문 바로가기
OS/쉽게 배우는 운영체제

운영체제의 개요 (1)

by re-hwi 2022. 2. 12.

운영체제에 대해 공부하기 위해 며칠간 책을 찾아봤다.

 

어렵지만 완벽히 정리되어 있는 원서와 조금 쉽고 초보자를 위한 책 둘중에 고민을 해봤는데 원서를 읽게되면 시간도 오래걸리고 이해하기도 쉽지 않을 것 같아 초심자를 위한 쉬운 책을 선택했다. 

 

이 책은 전에 공부했던 '소프트웨어 공학 에센셜'보다 단원이 길고 내용도 더 어려워서 이틀에 한번 블로그를 올릴 생각이다. 


운영체제 소개

: 컴퓨터나 노트북을 켰을 때 가장 먼저 만나게 되는 소프트웨어 ex) window

 

임베디드 운영체제 : CPU의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제 ex) 아이팟

 

운영체제의 필요성 

: 운영체제는 일반 사용자가 컴퓨터를 조금 더 쉽게 이용하기 위해 만들어진 소프트웨어이다. 

 

→ 예를 들어 카페에서 커피를 만들 수 있는 손님은 자기의 입맛에 맞는 커피를 만들어 마시지만 커피를 만들줄 모르는 손님은 카페 직원에게 커피를 만들어 달라고 부탁한다. 

 

Q. 운영체제가 없어도 컴퓨터는 작동하는가

A. 작동한다. 최초의 컴퓨터 에니악은 운영체제 없이 운영이 가능했다.

 

Q. 운영체제가 있는 컴퓨터와 없는 컴퓨터의 차이점은?

A. 운영체제를 가지고 있는 컴퓨터는 새로운 기능의 추가나 성능을 변경 할 수 있다. ex) 유선 전화기/ 스마트폰

 

Q. 운영체제가 자원을 관리하는 방법은?
A. 사용자가 자원에 직접 접근하는것을 막음. 응용 프로그램과 사용자에게 모든 정보를 숨김으로서 자원을 보호함

 

운영체제의 역할

 

1. 자원관리 (효율성) : 자원을 응용프로그램에 나누어주어 사용자가 원활하게 작업할 수 있도록 도움

→ 같은 자원을 사용하여 더 많은 작업을 처리

 

2. 자원보호 (안정성) : 악의적인 사용자나 미숙한 사용자에게 자원을 보호함

→ 사용자와 응용프로그램의 안전문제와 하드웨어적인 보안 문제를 처리할 수 있어야함

 

3. 하드웨어 인터페이스 제공 (확장성) : 여러 하드웨어를 복잡한 과정없이 컴퓨터에 연결해 사용할 수 있게 해줌

→ 다양한 시스템 자원을 추가하거나 제거하기 편리해야함 

→ 플러그 앤드 플레이 : 하드웨어의 종류에 상관없이 꽂으면 바로 실행

 

4. 사용자 인터페이스 제공 (편리성) : 사용자가 운영체제를 편리하게 사용하도록 지원함

→ 사용자에게 다양한 편리성을 제공하면서도 자원의 낭비요소를 막아야함


운영체제의 역사

구분 시기 주요 기술 특징
0기 1940년대 - 진공관 사용
1기 1950년대 카드리더/라인프린터 일괄작업 시스템
운영체제의 등장
2기 1960년대 초반 키보드/모니터 대화형 시스템
3기 1960년대 후반 C 다중 프로그래밍 기술
시분할 시스템
4기 1970년대 PC 개인용 컴퓨터의 등장
분산시스템
5기 1990년대 클라이언트/서버 시스템
6기 2000년대 스마트폰 P2P시스템
그리드 컴퓨팅
클라우드
사물 인터넷

0세대

하드와이어링 : 전선을 연결하여 논리회로를 구성하는 것

→ 에니악

1세대

일괄작업 시스템 : 한번에 하나의 작업만 실행 가능. 실행 중간에 사용자가 데이터를 입력하거나 수정이 불가능함

→ 천공카드 리더, 라인 프린터

2세대

대화형 시스템 : 작업 중간에 사용자가 입력을 하거나 사용자에게 중간 결과값을 보여줄 수 있으며 입력값에 따라 작업의 흐름을 바꿀 수 있음

→ 키보드, 모니터

3세대

시분할 시스템 : CPU사용 시간을 아주 잘게 쪼개서 여러 작업에 나눔. 하나의 CPU로 여러 작업을 동시에 실행

→ 동시에 실행되는 작업의 개수를 멀티 프로그래밍 수준이라고 함

→ 여러 사람이 하나의 컴퓨터로 작업할 수 있는 다중 사용자 시스템을 가능하게함 (컴퓨터의 가격이 높아 보급이 어려웠음)

 4세대

분산 시스템 : 네트워크상에 분산되어 있는 여러 컴퓨터로 작업을 처리하고 그 결과를 상호 교환하도록 구성한 시스템

→ 애플의 애플Ⅱ로 인해 개인용 pc가 보급되어짐

→ 모든 컴퓨터가 동일한 지위이기 때문에 컴퓨터가 고장 나거나 추가되면 작업을 분배하고 결과를 모으기 어려움

 

5세대 

클라이언트/서버 시스템 : 작업을 요청하는 클라이언트와 작업을 처리하는 서버의 이중 구조로 나뉨

→ 웹시스템은 전형적인 클라이언트/서버 구조

→ 단점으로는 서버 과부하가 있음

 

6세대

P2P시스템 : 사용자의 컴퓨터를 이용하여 사용자와 사용자 사이를 직접 연결함

→ 사용자와 사용자를 직접 연결하기 때문에 서버 과부하가 없다는 장점이 있음

ex) 비트코인, 소리바다

그리드 컴퓨팅

: 여러대의 컴퓨터의 처리능력을 한 곳으로 집중시켜 대규모 연산이나 데이터를 처리하기 쉽도록 함

그리드 컴퓨팅 쉽게 이해하기

 

클라우드 컴퓨팅

: 언제 어디서나 응용 프로그램과 데이터를 자유롭게 사용할 수 있는 컴퓨팅 환경

ex) 네이버 클라우드

 

사물 인터넷

: 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술

ex) 자율주행 자동차 (테슬라)

 

 

용어 정리

* 펌웨어 : 소프트웨어와 하드웨어의 결합형태 

* 인터페이스 : 사용자가 컴퓨터와 소통하기 위한 문과 같은 역할. 컴퓨터의 상태를 사용자가 이해할 수 있도록 도움

* 유틸리티 : 운영체제를 보조하는 소프트웨어

* 데몬 : 클라이언트/서버 시스템에서는 서버가 멈추지 않고 24시간 계속 작동하여야하는데 이렇게 멈추지 않고 계속 작동하는 프로그램

 

반응형

댓글