반응형
Mode bit
mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원
- 0(모니터 모드) : OS 코드 수행
- 1(사용자 모드) : 사용자 프로그램 수행
※ 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 특권명령으로 규정
※ 모니터모드= 커널 모드, 시스템 모드
TIMER
- 정해진 시간이 흐른 뒤 운영체제에게 제어권이 넘어가도록 인터럽트를 발생시킴
- CPU를 특정 프로그램이 독점하는 것으로부터 보호
- 타이머 값이 0이 되면 타이머 인터럽트 발생
※ 현대의 운영체제는 인터럽트에 의해 구동됨
시스템 콜
사용자 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출 하는 것
Interrupt
- Interrupt(하드웨어 인터럽트) : 하드웨어가 발생시킨 인터럽트
- Trap(소프트웨어 인터럽트)
- Exception : 프로그램이 오류를 범한 경우
- System call : 프로그램이 커널 함수를 호출하는 경우
모든 입출력 명령은 "특권명령"
I / O device controller(hardware)
- 해당 I / O 장치유형을 관리하는 일종의 작은 CPU
Device driver(software)
- OS 코드 중 각 장치별 처리루틴
인터럽트 벡터 : 해당 인터럽트의 처리 루틴 주소를 가지고 있음
인터럽트 처리 루틴(인터럽트 핸들러) : 해당 인터럽트를 처리하는 커널 함수
동기식 입출력(Synchronous I / O)
- I / O 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어감
- 구현 방법 1
- I / O가 끝날 때까지 CPU를 낭비시킴
- 매 시점 하나의 I / O만 일어날 수 있음
- 구현 방법 2
- I / O가 완료될 때까지 해당 프로그램에게서 CPU를 빼앗음
- I / O처리를 기다리는 줄에 그 프로그램을 줄 세움
- 다른 프로그램에 CPU를 줌
비동기식 입출력(Asynchronous I / O)
- I / O가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어감
※ 두 경우 모두가 I / O의 완료는 인터럽트로 알려줌
DMA controller (Direct memory access)
- 빠른 입출력 장치를 메모리에 가까운 속도로 처리하기 위해 사용
- 바이트 단위가 아니라 block단위로 인터럽트를 발생시킴
Caching
- 동일한 데이터에 반복해서 접근해야 하거나 많은 연산이 필요한 일일때, 결과를 빠르게 이용하고자 성능이 좋은 혹은 가까운 곳에 저장하는 것
- 즉 캐시는 컴퓨터의 성능을 향상 시키기 위해 사용되는 메모리를 말한다
- 주기억장치와 CPU 사이에 위치하고, 자주 사용하는 데이터를 기억한다
반응형
'CS > 운영체제' 카테고리의 다른 글
운영체제(6) - CPU 스케줄링 (0) | 2023.09.22 |
---|---|
운영체제(5) - 프로세스의 생성과 관련 시스템콜 (1) | 2023.09.22 |
운영체제(4) - 스케줄러와 Thread (0) | 2023.09.22 |
운영체제(3) - 프로세스 (0) | 2023.09.13 |
운영체제(1)- 운영체제란 무엇인가? (0) | 2023.09.04 |