(OS) 컴퓨터 시스템의 구조

  • by

목적:

컴퓨터 시스템의 작동 원리를 이해하기 위해

​​


​​

​​

(컴퓨터 시스템 구조)

컴퓨터 내부 장치: Cpu + Memory (cpu 작업 공간)

컴퓨터 외부 장치: I/O device 입출력 장치(디스크, 키보드, 모니터, 네트워크 장치)

​​

Deivce controller:

각 I/O 디바이스에는 각 디바이스를 담당하는 작은 CPU가 설치되어 있습니다.

이를 디바이스 컨트롤러라고 합니다.

CPU는 장치 컨트롤러에 데이터를 읽도록 지시하고,

그렇게함으로써 CPU는 메모리 조작을 수행하고 I / O 장치의 작업은 장치 컨트롤러에

일을 분담하게 됩니다.

(디스크 내부를 제어하는 ​​것은 CPU 역할이 아니라 장치 컨트롤러 역할입니다.

)

​​

​​

Local buffer:

여기 메인 CPU의 작업 공간 인 Main Memory가 있습니다.

이러한 장치 컨트롤러도 작업 공간이 필요합니다.

그것을 Local buffer라고 부릅니다.

​​

​​

등록자:

CPU내에 메모리보다 고속으로 정보를 저장할 수 있는 스페이스

​​

​​

모드 비트:

CPU 내에서 실행되는 것이 OS인지 사용자 프로그램인지를 구별해주는 역할을 합니다.

​​

mode bit 0일 때 ==> OS에 CPU가 있기 때문에

메모리 액세스, I/O device 액세스 권한을 모두 갖게 된다

​​

mode bit 1일 때 ==> 사용자 프로그램에 CPU가 있기 때문에 제한됨

Instruction만 CPU에서 실행 가능(보안측)

​​

​​

인터럽트 라인 :

CPU에 붙어 있어 I/O 장치로부터 Local buffer에 내용을 모두 읽어들여 오면,

이것은 CPU에 알려야 하지만, 이 알리는 행위를 하기 위해서 Interrup line이 존재합니다.

Interrupt line이 있으므로 CPU는 자신의 일을 하고 Interrup line에 신호가 들어오면,

했던 일을 멈추고 인터럽트와 관련된 일을 합니다.

​​

​​

Timer 동작:

특정 프로그램이 CPU를 독점적으로 방지하는 하드웨어입니다.

예를 들어 for 또는 while 문을 통해 무한 루프가 들어가면,

CPU는 그 프로그램에서 빠져 나오지 않아 분할 작업을 할 수 없게 됩니다.

​​

여기서 OS가 CPU를 가지고 있지만, 복수의 프로그램이 실행되면 CPU를 인도하게 된다.

그래서 CPU가 Instruction을 실행해도 정해진 시간이 되면, 타이머는 CPU에 Interrupt를

걸어줍니다.

이렇게 하면 CPU 제어 권한이 OS로 전달됩니다.

​​

이 프로세스에서는 타이머에 값을 설정한 다음 전달합니다.

promgram이 CPU를 사용하여 시간이 만료되면 타이머 인터럽트가 들어가 CPU 제어권이 OS에

옮겨, 그 OS는 다음의 프로그램에 CPU를 인도해, 이러한 프로세스를 OS가 관리해 주게 됩니다.

​​

​​

DMA 컨트롤러:

Memory에 직접 액세스할 수 있는 controller

I / O 장치가 너무 자주 인터럽트를 걸면 CPU가 방해하기 때문에

DMA 컨트롤러를 통해 중간에 local buffer에 들어가는 작업이 끝나면

DMA는 직접 메모리에 복사합니다.

이렇게 작업이 끝난 후 CPU에

Interrupt를 한 번만 걸어 CPU를 효율적으로 관리할 수 있습니다.

​​

더 알아야 할 개념 System call

​​

​​

출처: http://kocw.net/home/search/kemView.do?kemId=1046323

강의: 이화여대, 반효경(운영체제)