[OS] Lecture 3. OS Process Management (2/2)

2022. 1. 31. 18:30·OS

인터럽트(Interrupt)

예상치 못한, 외부에서 발생한 이벤트

 

인터럽트 처리과정

1. 인터럽트 발생

2. (커널 개입) 프로세스 중단

3. 인터럽트 처리(핸들링)

3.1. 인터럽트 발생 장소, 원인 파악

3.2  인터럽트 서비스 할 것인지 결정

4. 인터럽트 서비스 루틴 호출

 

 

인터럽트 서비스 호출 

- context saving 발생

- context saving= 책갈피. 흐름을 저장. PCB에 저장

 

커널의 개입

-프로세스 중단. 인터럽트 발생 장소, 원인 파악

- 파악 완료 후? 인터럽트 서비스 호출

- 서비스 호출의 의미는? 일종의 프로그램. 인터럽트를 처리하는 프로세스 CPU 할당

- 인터럽트 프로세스 종료 후? 중간에 중단됐던 프로세스가 CPU 할당? No!

- queue에서 ready 상태로 기다리고 있는 프로세스가 CPU 할당

 


context

프로세스와 관련된 정보 집합. 두 곳에 저장

- CPU register context-> in CPU

- code& data, stack, PCB-> in memory

 

context saving

인터럽트 발생-> 현재 프로세스(인터럽트 서비스 프로세스 아님!)의 register context을 메모리(PCB)에 저장하는 작업

 

context restoring

register context를 프로세스에 복구하는 작업

 

context switching

- context saving+ context restoring

- context switching= process switching

 

context switching overhead

context switching에 소요되는 비용

- OS마다 다르다.

- OS의 성능에 큰 영향 준다(커널의 개입)

- 해결책: thread

 

 

 

 

 

'OS' 카테고리의 다른 글

[OS] Lecture 4. Thread management  (0) 2022.02.05
CPU, Main Memory(Primary Memory), Disk(Secondary Memory)  (0) 2022.02.02
[OS] Lecture 3. Process Management (1/2)  (0) 2022.01.30
[OS] Lecture 2. OS Overview (2/2)  (0) 2022.01.26
[OS] Lecture 2. OS Overview (1/2)  (0) 2022.01.26
'OS' 카테고리의 다른 글
  • [OS] Lecture 4. Thread management
  • CPU, Main Memory(Primary Memory), Disk(Secondary Memory)
  • [OS] Lecture 3. Process Management (1/2)
  • [OS] Lecture 2. OS Overview (2/2)
사랑우주인
사랑우주인
  • 사랑우주인
    lovelyAlien
    사랑우주인
  • 전체
    오늘
    어제
  • 글쓰기
    관리
    • 분류 전체보기 (207)
      • Programming (4)
        • Spring (28)
        • Java (46)
        • JPA (2)
        • 디자인 패턴 (5)
        • 개발&아키텍처 (0)
      • Network (12)
      • OS (19)
      • Database (1)
      • Kubernetes (0)
      • Kafka (2)
      • Algorithm (49)
        • BaekJoon (1)
        • Programmers (19)
        • Algorithm (5)
        • Socar (2)
        • LeetCode (19)
      • Interview (2)
      • Issues (2)
      • DotJoin (1)
      • Git (4)
      • 독서 (3)
      • 끄적끄적 (1)
      • 외부활동 (26)
        • 항해플러스 (2)
        • JSCODE 네트워크 (19)
        • JSCODE 자바 (5)
      • SQL (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • GitHub
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    @JsonNaming
    트랜잭션
    LinkedList
    fcfs
    Thread
    @JsonProperty
    algorithm
    준영속 엔티티
    추상화 클래스
    clone graph
    제네릭
    socar
    AuthenticationSuccessHandler
    Process
    RR
    wildcards
    Reorder List
    pacific atlantic water flow
    lower bounded wildcards
    운영체제
    Climbing Stairs
    BFS
    Generic
    OS
    Oauth2
    디자인 패턴
    minimum number of arrows to burst balloons
    runner 기법
    JSCode
    rotting oranges
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.1
사랑우주인
[OS] Lecture 3. OS Process Management (2/2)

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.