OS

운영체제_2

사랑우주인 2021. 7. 10. 17:43

OS의 역사

1940년대

Card reader > memory > processing > line printer
직접 기계어를 사용하여 모든 명령어를 코딩

 

1950년대

Batch processing system (일괄처리)=resident monitor
: 여러 동작을 한번에 처리

 

1960년대 초

Multiprogramming system (다중프로그래밍)

  • 컴퓨터는 비싼 자원
  • 빠른 CPU, 느린 I/O 때문에 CPU가 놀 수 있다-> 메모리에 여러 개의 job
  • CPU scheduling, 메모리 관리, 보호

 

1960년대 초

Time-sharing system (시공유 시스템)

  • 강제 절환(switch) interactive system(대화형)
  • 가상 메모리, 프로세스 간 통신, 동기화

 

현대

Interrupt-Based System(인터럽트 기반 시스템)

 

인터럽트란(=새치기)?
CPU가 프로그램을 실행하고 있을 때, 입출력 하드웨어 등의 장치에 예외상황이 발생하여 처리가 필요할 경우에 CPU에게 알려 처리할 수 있도록 하는 것을 말한다.

 

  • 부팅이 끝나면?
    • OS는 메모리에 상주(resident)
    • 사건을 기다리며 대기: 키보드, 마우스, ...
  • 하드웨어 인터럽트
    • 인트럽트 결과 OS 내의 코드 실행(ISR)
    • Interrupt Service Routine 종료 후 다시 대기
  • 소프트웨어 인터럽트
    • 사용자 프로그램이 실행되면서 소프트웨어 인터럽트(운영체제 서비스 이용을 위해)
    • 인터럽트 결과 OS 내의 특정 코드 실행(ISR)
    • ISR 종료 후 다시 사용자 프로그램으로