Tech

Diary

Lecture

About Me

개발중

Process 관리 2

JeongSeulho

2023년 01월 17일

준비중...
클립보드로 복사

📌interrupt(인터럽트)

  • 예상하지 못한, 외부에서 발생한 이벤트
  • 인터럽트 종류
    • clock
    • console
    • program check
    • I/O 등

📌interrupt 처리 과정

  1. 인터럽트 발생
  2. 프로세스 중단(커널 개입)
  3. 인터럽트 처리 3-1. 인터럽트 발생 장소, 원인 파악(interrupt handling) 3-2. 인터럽트 서비스 여부 결정(interrupt handling) 3-3. 인터럽트 서비스 루틴 호출(interrupt service)

📌context에 관해

📖context

  • 프로세스와 관련된 정보들의 집합
    • cpu register context - cpu 내부에 위치
    • code & data, stack, PCB - memory에 위치

📖context saving

  • 현재 프로세스의 register context를 메모리에 저장
  • 인터럽트 발생시 cpu에서 쫓겨나고 메모리에 저장해두는 것임

📖context restoring

  • 메모리의 register context를 프로세스로 복구

📖context switching = process switching

  • 위의 saving, restoring 과정을 합쳐서 부르는 말
  • 커널의 개입으로 이루어짐

📖context switching overhead

  • context switching에 소모되는 메모리와 시간을 의미(비용, 자원)
  • os의 성능에 큰 영향을 준다
  • 불필요한 context switching을 줄이는 것이 중요
  • 해결방법 thread 사용

인터럽트 발생 플로우

📮출처 : https://www.youtube.com/watch?v=hzXVQIlSSos&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN