운영체제 정의
컴퓨터 시스템의 4가지 요소
- 유저
- 어플리케이션
- OS
- 하드웨어
운영체제
- 유저 관점 : 어플리케이션을 수행함. 컴퓨터 사용을 편리하게 해줌
- 시스템 관점 : 자원할당자. 어플리케이션과 i/o 장치의 수행을 다루는 프로그램 컨트롤러
커널
OS에 속하며, 컴퓨터에서 항상 수행되는 프로그램.
하드웨어의 자원을 자원이 필요한 프로세스에게 나눠주고, 프로세스 제어, 메모리 제어, 시스템 콜 등을 수행하는 부분이다.
컴퓨터 시스템 수행
컴퓨터 시스템 조직
cpu, disk(buffer), memory, usb(buffer), graphic adapter(buffer)
각 I/O 장치들은, 각 장치 내부의 디바이스 컨트롤러가 있고, 이 디바이스 컨트롤러가 각 장치를 직접 다룸.
또 로컬버퍼를 가지고 있으며 이것은 시스템 버스에 연결돼있음
디바이스 컨트롤러는 데이터를 디바이스에서 로컬 버퍼로, 또 로컬버퍼에서 디바이스로 옮김
cpu는 메인 메모리를 통해 각 디바이스의 로컬 버퍼로 데이터를 보내거나 받음.
cpu와 각 I/O 디바이스는 각자의 작업을 독립적으로 수행함.
디바이스 컨트롤러는 인터럽트를 통해 CPU에게 작업의 끝을 알림.
Interrupt handling
키보드를 치는 작은 하나하나의 작업도 인터럽트이다. CPU는 인터럽트가 올때마다 하던일을 멈추고, ISR로 인터럽트를 처리함.
- ISR : Interrupt service routine
- 디스크 인터럽트가 발생
- 벡터 테이블(주소테이블)로 이동하고, 해당하는 ISR이 위치한 곳의 주소를 참조하여 이동함.
- ISR을 수행하고 다시 원래 장소로 이동하여 다음 명령을 수행함.