운영체제: Difference between revisions
From IT Wiki
m (123.141.154.106(토론)의 편집을 기사도의 마지막 판으로 되돌림) Tag: Rollback |
|||
(4 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
;컴퓨터의 시스템 자원을 관리 및 운영함으로써 사용자 지향적인 환경을 제공하는 시스템 소프트웨어 | ;컴퓨터의 시스템 자원을 관리 및 운영함으로써 사용자 지향적인 환경을 제공하는 시스템 소프트웨어 | ||
==역할== | |||
*사용자 인터페이스 제공 | *사용자 인터페이스 제공 | ||
Line 12: | Line 11: | ||
*사용자들 간 하드웨어 자원의 공동 사용을 위한 자원 분배 및 관리 | *사용자들 간 하드웨어 자원의 공동 사용을 위한 자원 분배 및 관리 | ||
==발달 과정== | |||
#일괄 처리 시스템(1950년대) | #'''일괄 처리 시스템(1950년대)''' | ||
#*필요한 정보를 모아 한꺼번에 처리하는 초기 정보처리 시스템 | #*필요한 정보를 모아 한꺼번에 처리하는 초기 정보처리 시스템 | ||
#*현대에서도 배치 프로그램은 사용된다. 은행의 이자 정산, 학교의 성적 처리 등 | #*현대에서도 배치 프로그램은 사용된다. 은행의 이자 정산, 학교의 성적 처리 등 | ||
#실시간 처리 시스템(1960년대) | #'''실시간 처리 시스템(1960년대)''' | ||
#*입출력 장치의 개선으로 대화식으로 실시간 정보 처리 수행 | #*입출력 장치의 개선으로 대화식으로 실시간 정보 처리 수행 | ||
#*사용자가 필요한 연산을 바로바로 입력하고 결과를 받아본다. | #*'''사용자가 필요한 연산을 바로바로 입력하고 결과를 받아본다.''' | ||
#시분할 시스템(1960년대) | #'''시분할 시스템(1960년대)''' | ||
#*다중 프로그래밍 시스템이라고도 한다. | #*다중 프로그래밍 시스템이라고도 한다. | ||
#*짧은 주기로 여러 프로그램을 번갈아가면서 실행하여 여러 사용자가, 여러 프로그램을 동시에 사용할 수 있게 함 | #*짧은 주기로 여러 프로그램을 번갈아가면서 실행하여 여러 사용자가, 여러 프로그램을 동시에 사용할 수 있게 함 | ||
#*현대의 멀티 프로세싱, 멀티 스레드도 시분할 처리다. | #*현대의 멀티 프로세싱, 멀티 스레드도 시분할 처리다. | ||
#다중처리 시스템(1980년대) | #'''다중처리 시스템(1980년대)''' | ||
#*하나의 메모리에 복수의 연산장치를 이용하여 작업을 처리하는 방식 | #*하나의 메모리에 복수의 연산장치를 이용하여 작업을 처리하는 방식 | ||
#*2코어, 4코어 등의 멀티 프로세서 시스템을 말한다. | #*2코어, 4코어 등의 멀티 프로세서 시스템을 말한다. | ||
#[[분산 처리 시스템]](1980년대) | #'''[[분산 처리 시스템]](1980년대)''' | ||
#*여러 컴퓨터를 네트워크로 묶어 높은 성능을 구현하는 방식 | #*여러 컴퓨터를 네트워크로 묶어 높은 성능을 구현하는 방식 | ||
#*클러스터링이 분산 처리 시스템에 해당된다. | #*클러스터링이 분산 처리 시스템에 해당된다. | ||
== | ==[[운영체제 유형|유형]]== | ||
== | |||
*'''싱글 태스킹 시스템:''' 컴퓨터가 한 번에 하나의 작업만을 처리 | |||
*'''멀티 스위칭 시스템 :''' 다수의 작업이 동시 실행되나 포그라운드 프로그램만 동작하는 형태 | |||
*'''멀티 태스킹 시스템:''' 여러개의 작업을 동시에 처리가능한 시스템 | |||
*'''멀티 유저 시스템:''' 단일 시스템에서 여러 사용자가 동시에 프로그램을 이용가능한 시스템 | |||
*'''일괄처리 시스템:''' 여러 개의 작업을 묶어 한꺼번에 처리하는 시스템 | |||
*'''대화형 처리 시스템:''' 사용자와 컴퓨터가 명령과 결과 응답을 주고 받으며 구동되는 시스템 | |||
==기능적 구분== | |||
*'''제어 프로그램(Control Program)''' | *'''제어 프로그램(Control Program)''' | ||
Line 43: | Line 50: | ||
**서비스 프로그램(Service Program) | **서비스 프로그램(Service Program) | ||
==[[운영체제 5계층|자원 관리 5계층]]== | |||
#'''프로세서 관리'''(1계층): 동기화 및 프로세서 스케줄링 | #'''프로세서 관리'''(1계층): 동기화 및 프로세서 스케줄링 | ||
Line 51: | Line 58: | ||
#'''파일 관리'''(5계층): 파일의 생성과 소멸, 파일의 열기와 닫기 | #'''파일 관리'''(5계층): 파일의 생성과 소멸, 파일의 열기와 닫기 | ||
==[[운영체제 성능평가 기준|성능평가 기준]]== | |||
*'''처리능력(Throughput)''' | *'''처리능력(Throughput)''' |
Latest revision as of 09:24, 15 June 2022
- Operating System
- 컴퓨터의 시스템 자원을 관리 및 운영함으로써 사용자 지향적인 환경을 제공하는 시스템 소프트웨어
역할[edit | edit source]
- 사용자 인터페이스 제공
- 사용자 프로그램 제어 및 관리
- 입ㆍ출력에 대한 보조역할 수행
- 사용자들 간 하드웨어 자원의 공동 사용을 위한 자원 분배 및 관리
발달 과정[edit | edit source]
- 일괄 처리 시스템(1950년대)
- 필요한 정보를 모아 한꺼번에 처리하는 초기 정보처리 시스템
- 현대에서도 배치 프로그램은 사용된다. 은행의 이자 정산, 학교의 성적 처리 등
- 실시간 처리 시스템(1960년대)
- 입출력 장치의 개선으로 대화식으로 실시간 정보 처리 수행
- 사용자가 필요한 연산을 바로바로 입력하고 결과를 받아본다.
- 시분할 시스템(1960년대)
- 다중 프로그래밍 시스템이라고도 한다.
- 짧은 주기로 여러 프로그램을 번갈아가면서 실행하여 여러 사용자가, 여러 프로그램을 동시에 사용할 수 있게 함
- 현대의 멀티 프로세싱, 멀티 스레드도 시분할 처리다.
- 다중처리 시스템(1980년대)
- 하나의 메모리에 복수의 연산장치를 이용하여 작업을 처리하는 방식
- 2코어, 4코어 등의 멀티 프로세서 시스템을 말한다.
- 분산 처리 시스템(1980년대)
- 여러 컴퓨터를 네트워크로 묶어 높은 성능을 구현하는 방식
- 클러스터링이 분산 처리 시스템에 해당된다.
유형[edit | edit source]
- 싱글 태스킹 시스템: 컴퓨터가 한 번에 하나의 작업만을 처리
- 멀티 스위칭 시스템 : 다수의 작업이 동시 실행되나 포그라운드 프로그램만 동작하는 형태
- 멀티 태스킹 시스템: 여러개의 작업을 동시에 처리가능한 시스템
- 멀티 유저 시스템: 단일 시스템에서 여러 사용자가 동시에 프로그램을 이용가능한 시스템
- 일괄처리 시스템: 여러 개의 작업을 묶어 한꺼번에 처리하는 시스템
- 대화형 처리 시스템: 사용자와 컴퓨터가 명령과 결과 응답을 주고 받으며 구동되는 시스템
기능적 구분[edit | edit source]
- 제어 프로그램(Control Program)
- 감시 프로그램(Supervisor Program)
- 작업 관리 프로그램(Job Management Program)
- 데이터 관리 프로그램(Data Management Program)
- 처리 프로그램(Process Program)
- 언어 번역 프로그램(Language Translator Program)
- 문제 처리 프로그램(Problem Processing Program)
- 서비스 프로그램(Service Program)
자원 관리 5계층[edit | edit source]
- 프로세서 관리(1계층): 동기화 및 프로세서 스케줄링
- 메모리 관리(2계층): 메모리 할당 및 회수
- 프로세스 관리(3계층): 프로세스 생성,제거
- 주변장치 관리(4계층): 주변장치 상태파악
- 파일 관리(5계층): 파일의 생성과 소멸, 파일의 열기와 닫기
성능평가 기준[edit | edit source]
- 처리능력(Throughput)
- 일정 시간 내에 시스템이 처리하는 일의 양
- 반환 시간(Turn Around Time)
- 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간
- 사용 가능도(Availability)
- 시스템을 사용할 필요가 있을때 즉시 사용 가능한 정도
- 신뢰도(Reliability)
- 시스템이 주어진 문제를 정확하게 해결하는 정도
대표적 운영체제[edit | edit source]
- 아래 운영체제에 공통적인 사항
- 다중 사용자(Multi-User), 다중 작업(Multi-Tasking)을 지원한다.
- 백그라운드에서 작업을 수행할 수 있다.
- 다양한 유틸리티 프로그램이 존재한다.
윈도우(Windows)[edit | edit source]
- Microsoft사의 운영체제
- GUI기반 운영체제이다.
- 트리 디렉터리 구조를 가진다.
- 선점형 멀티태스킹 방식을 사용한다.
유닉스(UNIX)[edit | edit source]
- 시분할 시스템을 위해 설계된 대화식 운영체제
- 소스가 공개된 개방형(Open) 시스템
- 대부분 C언어로 작성되어 있어 이식성이 높다.
리눅스(Linux)[edit | edit source]
- 유닉스로부터 파생된 운영체제
- 소스가 공개된 개방형(Open) 시스템