2. 컴퓨터 시스템의 동작

1. 컴퓨터 시스템의 동작과정

  1. 입력장치를 통해 정보를 입력받아 메모리에 저장한다.
  2. 메모리에 저장한 정보를 프로그램의 제어에 따라 인출하여 산술장치나 논리장치에서 처리한다.
  3. 처리한 정보를 출력장치에 표시하거나 디스크에 저장한다.

2.명령어의 구성

  • 명령어는 프로세서가 실행할 연산을 나타내는 연산코드와 명령어가 처리할 데이터나 데이터가 저장된 주소에 관한 정보(레지스터, 메모리)를 기술하는 오퍼랜드로 이루어진다.
  • 연산코드는 실행할 연산(동작)을 지정, 명령어 구성, 데이터 종류 등을 나타낸다.
  • 오퍼랜드는 명렁어가 처리할 데이터나 데이터가 저장된 주소에 관한 정보(레지스터,메모리)를 표시한다. 즉, 프로그래밍에 있어서 연산 대상이 되는 값이나 변수를 지칭하는 말이다.

3. 명렁어 실행

명령어 실행 과정

  • 인출 사이클
    • 명렁어 실행 사이클의 첫번째 단계이다.
    • 인출사이클은 메인메모리에서 명령어를 읽어 명령어 레지스터에 저장하기까지의 단계이다.
  • 간접 사이클
  • 실행 사이클
  • 인터럽트 사이클

4. 인터럽트

  • 컴퓨터에 설정된 상치(입출력 장치 등)에서 프로세서로 보내는 하드웨어 신호다. 인터럽트를 받은 프로그램은 실행을 멈추고 다른 프로그램이 실행된다.

  • 현재 실행 중인 프로그램의 수행을 연기하고 다른 프로그램의 수행을 요구하는 명령이다.

  • 프린터가 문자를 출력할 준비가 되어야 컴퓨터가 프린터로 문자를 전송할 수 있다. 따라서 프로세서는 연결된 각 입출력장치의 현재 상태를 파악하고 있어야 하는데, 이 상태를 나타내기 위해 1비트 이상의 정보로 표현된 준비 비트 또는 상태 비트가 필요하다.

  • 입출력장치가 새로운 입출력 연산(데이터 전송)을 수행하려고 하면, 프로세서는 먼저 폴링(Polling)을 통해 각 장치의 상태 비트를 검사한다.

  • 인터럽트를 사용하면 입출력 상태가 준비 상태가 될 때까지 프로세서가 다른 작업을 수행할 수 있다. 즉, 입출력장치가 준비 상태가 되었을 때 프로세서에 인터럽트 신호를 보냄으로써 이루어진다.

  • 버스제어선 중 하나를 이런 목적으로 사용하는데 이것을 인터럽트 요청 회선(IRQ, Interrupt Request Line)이라 한다.

  • 프로세서가 외부 장치의 상태를 직접 점검할 필요가 없어 이 기간동안 다른 연산을 수행하여 프로세서의 효율을 높일 수 있다.

  • 인터럽트는 크게 인터럽트 요청인터럽트 서비스 루틴으로 구성된다. 인터럽트 요청 신호에 의해 수행되는 루틴을 인터럽트 처리 프로그램, 즉 인터럽트 서비스 루틴(Interrupt Service Routine)이라 하며 인터럽트 발생 원인에 따라 적절한 처리 루틴을 수행한다.

  • 인터럽트 요청 신호가 발생하면 대부분의 컴퓨터는 정보를 단일 명령어로 저장할 수 있으므로 실행 중인 프로그램을 메모리에 저장하고 인터럽트 서비스 프로그램으로 분기한다. 그리고 인터럽트 루틴의 수행을 완료하면 인터럽트를 발생시킨 프로그램에 제어를 되돌려 준다.

인터럽트 처리과정

  • 인터럽트 신호가 도다하기 전 (a)처럼 프로그램A가 실행되고 있다고 해보자. 프로그램 카운터는 현재 명령어를 가리킨다. (b)에서 프로세서에 인터럽트 신호가 도달하여 현재 명령어를 종료한다. 모든 레지스터의 내용을 스택 영역(또는 프로세스 제어블록(PCB) 으로 보낸다. 그리고 프로그램 카운터(PC)에는 프로그램 B, 즉 인터럽트 처리 프로그램의 시작 위치를 저장하고 프로그램 B로 제어를 넘겨 프로그램B를 실행한다. (c)에서 인터럽트 루틴을 종료하면 스택 영역에 있던 내용을 레지스터에 다시 저장하고 프로그램 카운터를 비롯해 중단했던 프로그램에서 다시 시작한다.

'Computer > OS' 카테고리의 다른 글

1. 컴퓨터 시스템 구성요소  (0) 2020.07.28
4. 병행 프로세스와 상호배제  (0) 2020.02.19
3-2 프로세스와 쓰레드  (0) 2019.06.10
3-1 프로세스와 스레드  (0) 2019.06.09
2-1 운영체제의 역할과 목적  (0) 2019.06.09

댓글

Designed by JB FACTORY