1층 : 하드웨어(Physical)
2층 : Kernel 소프트웨어 (Logical ≒ Virtyal)
3층 : User
OS 운영체제는 하드웨어를 제어 관리하고, 프로세스가 잘 실행되게 지원하는 역할을 한다.
Interupt : 컴퓨터와 주변기기가 입출력 할 때 발생하는 방해 요소 (간섭)
IRQ(InteruptRequest) : Interupt를 요청, 장치마다 번호가 다름
API (Application Programming Interface) 커널 영역에서 입출력이 일어나도록 역할을 하는데 이때 수행되는 함수를 System Call이라고 한다.
사전적 의미는 ‘끼어들다', '중단 시키다’ 의 의미를 가진 말로 프로그램을 실행하는 도중에 예기치 않은 상황이 발생할 경우 현재 실행 중인 작업을 중단하고 발생된 상황을 처리 후 다시 실행 중인 작업으로 복귀 하는 것을 말한다.
여러 장치에서 인터럽트가 동시에 발생하거나 인터럽트 서비스 루틴 수행 중 인터럽트가 발생하였을 경우 우선순위를 따져서 처리한다.
전원 이상 > 기계착오 > 외부 신호 > 입출력 > 명령어 잘못 > 프로그램 검사 > SVC(슈퍼바이저 콜)
일반적으로 하드웨어 인터럽트가 소프트웨어 인터럽트보다 우선순위가 높고 내부 인터럽트보다 외부 인터럽트가 우선순위가 높다.
I/O 성능의 중요성 - 모든 과정에 인터럽트가 발생되기 때문

DirectX - 과거에 일부 고사양 프로그램이나 게임을 실행 시 프로세스에서 User을 거치지 않고 Kenel과 직접 수행하여 지연 시간을 줄이고 복사하는 과정을 없애서 최대 성능을 끌어 내기 위해 설치 하였다.
| 6. 멀티스레드와 동기화 기본 / CPU스케줄링 개요 (0) | 2023.06.29 |
|---|---|
| 5. 프로세스 생성과 복사 (0) | 2023.06.28 |
| 4. 프로세스와 스레드 / 프로세스 휴식, 보류 상태와 문맥 (0) | 2023.06.27 |
| 3. CPU 예측이 가져올 수 있는 문제(보안사고)/프로세스와 스레드 (0) | 2023.06.26 |
| 2. DMA와 고성능 소켓/CPU의 예측 (0) | 2023.06.25 |