고등운영체제, 인터럽트 기반 운영체제
Programming/운영체제

고등운영체제, 인터럽트 기반 운영체제

1. 고등 운영체제

  1) 다중 프로세서 시스템(Multiprocessor system)

  • 병렬 시스템(parallel system)
  • 강결합 시스템(tightly-coupled system) : 다수의 CPU가 하나의 메인메모리로 결합되어 있다.
  • 3가지 장점 : performance(효율성), cost(비용), reliability(안정성) : 하나의 CPU가 고장나도 다른 CPU가 대신한다.
  • 다중 프로세서 운영체제(Multiprocessor OS)

다중 프로세서 시스템(Multiprocessor system)

  2) 분산 시스템(Distributed system)

  • 다중 컴퓨터 시스템(multi-computer system)
  • 소결합 시스템(loosely-coupled system) : 각각 메모리를 갖고 있어 다중 프로세서 시스템보다 결합이 약하다.
  • 3가지 장점 : performance(효율성), cost(비용), reliability(안정성) : 하나의 CPU가 고장나도 다른 CPU가 대신한다.
  • 분산 운영체제(Distributed OS)

분산 시스템(Distributed system)

  3) 실시간 시스템(Real-time system)

  • 시간제약 : Deadline / EX) 컴파일이 반드시 10msc 안에 끝나야 한다.
  • 공장자동화(FA, Factory Automation), 군사, 항공, 우주
  • 실시간 운영체제(Real Time OS, RTOS)

2. 인터럽트 기반 운영체제(Interrupt-Based System)

현대의 운영체제는 인터럽트 기반 시스템이다.

부팅이 끝나면 운영체제는 메모리에 상주(resident)한다. 키보드나 마우스 등으로부터의 사건(event)을 기다리며 대기한다.

  1) 인터럽트의 종류

    a. 하드웨어 인터럽트(Hardware interrupt)

  • 인터럽트 결과 운영체제 내의 특정 코드 실행(ISR, Interrupt Service Routine)
  • ISR 종료 후 다시 대기

    b. 소프트웨어 인터럽트(Software interrupt)

  • 사용자 프로그램이 실행되면서 소프트웨어 인터럽트(운영체제 서비스 이용을 위해)
  • 인터럽트 결과 운영체제 내의 특정코드 실행(ISR)
  • ISR 종료 후 다시 사용자 프로그램으로
  • 유저프로그램 > O/S 내에서 인터럽트(ISR) > 유저프로그램 > O/S 내에서 인터럽트(ISR)... 반복

운영체제는 평소에는 대기상태이다. 운영체제는 다음 세가지의 인터럽트에 의해 실행된다.

  • 하드웨어 인터럽트에 의해 운영체제 코드(ISR) 실행
  • 소프트웨어 인터럽트에 의해
  • 내부 인터럽트(Internal interrupt)에 의해 / EX) 0으로 나눌때 'Devide by zero interrupt' 실행

ISR이 종료되면 O/S는 원래의 대기상태 또는 사용자 프로그램으로 복귀한다.

인터럽트 기반 운영체제

'Programming > 운영체제' 카테고리의 다른 글

CPU 스케쥴링 알고리즘(1) - FCFS  (0) 2021.07.24
프로세스 관리 (Process Management)  (0) 2021.07.23
운영체제 서비스  (0) 2021.07.13
이중모드, 하드웨어 보호  (0) 2021.07.13
운영체제의 역사  (0) 2021.07.11