운영체제(Operating Sysetm)는 컴퓨터 사용자가 하드웨어를 잘 사용할 수 있도록 도와주고 하드웨어 자원을 관리하는 시스템 프로그램이다. 운영체제가 제공하려는 서비스의 목적은 다음과 같다.
- 환경 제공 : 사용자가 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공한다.
- 프로세스 제어 관리 : 사용자 프로그램을 효율적으로 실행시켜 사용자 문제를 좀 더 쉽게 해결한다.
- 자원 관리 : 컴퓨터 하드웨어를 효율적인 방법으로 사용할 수 있게 한다.
위 세 가지 이외에도 사용자에게 편리한 인터페이스를 제공하기도 하고 저전력으로 OS를 동작할 수 있게 하는 등의 여러가지 기능을 제공한다.
컴퓨터 시스템의 동작
- 속도가 느린 I/O device와 속도가 빠른 CPU가 동시에 동작할 수 있도록 한다.
- 각 device driver는 특정한 디바이스를 담당하고 자신마의 buffer를 가진다.
- CPU가 데이터를 main memory에서 device의 buffer로 쓰거나 읽도록 명령을 내린다.
- 입출력 요청을 device에서 controller의 buffer로 보낸다.
- Device controller는 CPU에게 interrupt를 보내면서 작업이 끝났다는 것을 알린다.
컴퓨터 시스템에서 발생하는 interrupt는 다음과 같이 두 가지 종류가 있다.
- H/W interrupt : CPU의 pin에서 신호를 일으켜서 발생한다. I/O device와 관련이 있다.
- S/W interrupt : OS가 발생시키는 interrupt이다. trap이라고도 하며 division by zero와 같은 run time error가 해당된다.
OS가 사용자나 프로그램이 프로그램을 실행할 수 있도록 제공하는 환경
- User interface
- Program execution
- I/O operation
OS가 사용자를 위해 제공하는 기능
- File-system manipulstion
- communications
- Error detection
OS가 효율적인 OS 시스템 자체를 위해 제공하는 기능
- Resource allocation
- accounting
- protection and security
'운영체제' 카테고리의 다른 글
[OS] 여러 가지 운영체제 구조 (0) | 2021.12.30 |
---|---|
[OS] 컴퓨터 시스템의 구조와 운영체제가 실행되는 과정 (0) | 2021.12.30 |