컴퓨터 시스템 구조, 인터럽트(Interrupt), 동기식 입출력과 비동기식 입출력, 시스템콜(System Call), DMA(Direct Memory Access), 서로 다른 입출력 명령어, 저장장치 계층 구조, 프로그램의 실행(메모리 load), 커널 주소 공간의 내용, 사용자 프로그램이 사용하는 함수, 프로그램의 실행
동기식 입출력과 비동기식 입출력
두 경우 모두 I/O의 완료는 인터럽트로 알려줌
동기식 입출력(Syncronous I/O)
- I/O 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어감
- 제 1 구현 방법
- I/O가 끝날 때까지 CPU를 낭비시킴
- 매시점 하나의 I/O만 일어날 수 있음
- 제 2 구현 방법
- I/O가 완료될 때까지 해당 프로그램에게서 CPU를 빼앗음
- I/O처리를 기다리는 줄에 그 프로그램을 줄 세움
- 다른 프로그램에 CPU를 줌
비동기식 입출력(Asyncronous I/O)
- I/O가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어감
DMA(Direct Memory Access) Controller
- 빠른 입출력 장치를 메모리에 가까운 속도로 처리하기 위해 사용
- CPU의 중재 없이 device controller가 device의 buffer storage의 내용을 메모리에 block 단위로 직접 전송
- 바이트 단위가 아니라 block 단위로 인터럽트를 발생시킴(Buffer에 저장)
저장장치 계층 구조
- 윗 계층일수록 속도가 빠르며 비싸고 용량이 작다
- Primary
- 휘발성 매체
- CPU가 직접 접근 해서 처리 가능(byte 단위로 읽어 올 수 있어야함)
- Secondary
- 계층은 비휘발성 매체
- CPU가 직접 접근 해서 처리 불가(하드디스크는 섹터 단위로 접근)
- 캐싱은 재사용의 목적으로 사용
출처
http://www.kocw.or.kr/home/cview.do?mty=p&kemId=1046323
'OS(운영체제)' 카테고리의 다른 글
Process Management 1 (0) | 2023.07.29 |
---|---|
Process 2~3 (0) | 2023.07.29 |
Process 1 (0) | 2023.07.29 |
System Structure & Program Execution (1) (0) | 2023.07.22 |
운영체제란 (0) | 2023.07.22 |