컴퓨터의 동작 방식
컴퓨터가 동작하는 방식은 아래의 세 단계를 반복하는 것과 같다.
- 입력 장치 혹은 네트워크 어댑터를 통해 컴퓨터에 처리 요청이 들어온다.
- 메모리에 있는 명령을 읽어 CPU에서 실행하고 그 결과를 다시 메모리의 다른 영역에 기록한다.
- 메모리의 데이터를 하드디스크(HDD)나 SSD 등의 저장 장치에 기록하거나 네트워크를 통해 다른 컴퓨터에 전송하거나, 혹은 디스플레이 등의 출력 장치를 통해 결과를 보여준다.
이러한 순서를 반복해서 하나의 처리(기능)으로 정리한 것을 프로그램이라고 하는데, 프로그램은 크게 애플리케이션, 미들웨어, OS(운영체제)로 구분할 수 있다.
프로그램의 종류
- 애플리케이션: 사용자가 직접 사용하는 프로그램. 오피스, 계산기, 브라우저 등
- 미들웨어: 여러 애플리케이션이 공통으로 사용하는 처리를 묶어 애플리케이션의 실행을 돕는 프로그램. 웹 서버, DB 등
- OS: 하드웨어를 직접 조작한다. 이를 통해 애플리케이션이나 미들웨어의 실행에 필요한 기능을 제공한다.
운영체제가 필요한 이유
운영체제의 중요한 역할은 디바이스를 조작하는 일이다. 만약 운영체제가 없다면 각각의 프로세스(프로그램의 단위)들은 디바이스 조작을 위한 코드를 각각 일일이 작성해야 한다.
동작은 될 수 있지만 개발자가 모든 디바이스의 스펙을 알아야만 디바이스를 조작할 수 있으며, 개별적으로 다 개발해야하기 때문에 개발 비용이 매우 커진다. 이러한 단점이 있기 때문에 운영체제에는 프로세스들이 디바이스를 다룰 수 있도록 디바이스 드라이버라는 프로그램을 가지고 있다. 프로세스들은 직접 디바이스를 조작하지 않고(조작할 수도 없음) 디바이스 드라이버를 통해 다룬다.
운영체제는 의도적으로
'Computer Science > Computer Architecture' 카테고리의 다른 글
System Bus (0) | 2022.02.13 |
---|---|
PIO(Programmed I/O)와 DMA(Direct Memory Access) (0) | 2022.02.13 |
메모리계층 (0) | 2022.02.06 |
메모리관리 (0) | 2022.02.05 |