<운영체제와 정보기술의 원리> 반효경 저

1. 컴퓨터 시스템의 구조

컴퓨터는 외부장치에서 내부장치로 데이터를 읽어와 각종 연산을 수행한 후, 그 결과를 외부장치로 다시 내보내는 방식으로 업무를 처리한다.

각 하드웨어 장치에는 컨트롤러라는 것이 붙어있다.

운영체제는 컴퓨터가 부팅되었을 때부터 항상 수행되면서 각종 자원들을 관리해야 하므로 항상 메모리에 올라가 있다. 하지만 운영체제의 모든 코드를 다 메모리에 상주시키면 메모리의 낭비가 발생하므로 항상 메모리에 올라가 있는 부분은 전체 운영체제 중 핵심적인 부분에 한정된다.

2. CPU 연산과 I/O 연산

입출력 장치에서 로컬 버퍼로 읽어오는 일은 컨트롤러가 담당하며, 컨트롤러는 인터럽트를 발생시켜 이 작업이 끝났는지를 CPU에 보고한다.

기본적으로 CPU는 메모리에서 명령을 하나씩 읽어와 수행한다. 명령 하나를 수행할 때마다 인터럽트가 발생했는지 확인하고, 발생했으면 다음 명령을 수행하기 전에 인터럽트를 처리한다.