728x90
반응형
운영체제란
운영체제(Operating System)란 하드웨어를 관리하는 소프트웨어로 사용자와 하드웨어 사이의 중재자 역할을 하며 응용 프로그램 기반을 제공한다.
운영체제의 목적
전체 컴퓨터 시스템에서 운영체제가 하는 일을 살펴보자. 컴퓨터 시스템은 하드웨어, 운영체제, 응용 프로그램, 사용자로 구분할 수 있다. 운영체제는 하드웨어 바로 위에 붙어서 하드웨어와 상호작용 및 각종 응용 프로그램들과 상호작용하는 역할을 한다.
- 하드웨어와 상호작용 : 중앙처리장치(CPU), 기억장치, 입출력(I/O) 장치 등 자원을 효율적 관리
- 실행중인 프로그램들에 CPU를 번갈아가며 할당
- 실행중인 프로그램들에 메모리 공간을 적절히 분배
- 각종 소프트웨어와 상호작용 : 컴퓨터 한 대에서 실행되는 프로그램들이 각 사용자의 독자적인 컴퓨터에서 수행되는 것처럼 관리
운영체제의 분류
- 동시 작업 가능 여부에 따른 분류
- 단일 작업(single tasking)
- 한 번에 하나의 작업만 처리
- MS-DOS에서는 하나의 명령 수행이 끝나기 전에 다른 명령을 수행시킬 수 없음
- 다중 작업(multi tasking)
- 동시에 두 개 이상의 작업 처리(CPU에서는 매순간 하나의 작업을 빠르게 전환하며 수행함)
- Unix, MS Windows 등에서는 하나의 명령 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음
- 단일 작업(single tasking)
- 지원하는 사용자의 수에 따른 분류
- 단일 사용자(single user)
- 다중 사용자(multi user)
- 처리 방식에 따른 분류
- 일괄 처리(batch processing)
- 작업이 주어지면 바로 처리하지 않고, 일정량을 모아 한 번에 처리 (interactive하지 않음)
- 시분할(time sharing)
- 여러 작업을 수행할 때, 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용
- 일괄 처리 시스템에 비해 응답 시간이 짧음
- 실시간(real time)
- 정해진 시간 내에 작업이 반드시 종료됨이 보장되어야 하는 실시간 시스템에 사용되는 운영체제
- [예시] 미사일 제어, 반도체 장비, 로봇 제어 등
- 실시간 시스템에는 미사일 제어와 같은 엄격한 Hard realtime system과 영화 상영과 같은 비교적 중대하지 않은 Soft realtime systmem이 있음
- 일괄 처리(batch processing)
동시 수행 관련 용어
컴퓨터가 여러 작업을 동시에 수행하는 것을 뜻하는 용어로 Multitasking, Multiprogramming, Time sharing, Multiprocess가 있다. Multiprogramming은 여러프로그램이 메모리에 올라가있음을 강조한 표현이고, Time sharing은 CPU의 시간을 분할하여 나누어 쓰는 것을 강조한 표현이다.
- Multiprocessor란 컴퓨터 한 대에 CPU가 여러개 있음을 의미하며, 하드웨어의 차이를 의미한다. 동시에 여러 작업을 수행하는 것 또한 당연히 지원이 된다.
운영체제 구조
컴퓨터 시스템의 자원(CPU, 메모리, 디스크, I/O장치 등)을 관리하는 것이 운영체제의 기능이며, 각 자원에서의 관리 이슈를 보자.
- CPU : "어떤 프로그램에 CPU를 줄까?" = CPU 스케줄링
- 메모리 : "어떤 프로그램에 얼만큼의 메모리를 할당할까?" = 메모리 관리
- 디스크 : 다시 사용될 가능성이 낮은 비교적 덜 중요한 데이터는 메모리로부터 디스크로 옮김. "디스크에 파일을 어떻게 보관할까?" = 파일 관리 (디스크의 헤드 이동은 엘레베이터와 유사하게 이동이 최소화되도록 작동)
- 입출력 장치 : "입출력 장치와 컴퓨터 간 정보를 어떻게 정보를 주고 받지?" = 입출력 관리
- 프로세스 관리 : 프로세스의 생성과 삭제, 자원 할당 및 반환, 프로세스 간 협력
- 그 외 : 보호 시스템, 네트워킹, 명령어 해석기
[reference]
http://www.kocw.net/home/search/kemView.do?kemId=1046323
728x90
반응형
'CS > 운영체제' 카테고리의 다른 글
[Operating System] 프로세스와 스레드 (0) | 2022.03.25 |
---|
댓글