| 동기 입출력
- 애플리케이션은 입출력 함수를 호출한 후 입출력 작업이 끝날때까지 대기
- 입출력 작업이 끝나면 입출력 함수는 리턴하고 애플리케이션은 입출력 결과를 처리하거나 다른 작업을 진행
| 비동기 입출력
- 애플리케이션은 입출력 함수를 호출한 후 입출력 작업의 완료 여부와 무관하게 다른작업 수행
- 입출력 작업이 끝나면 운영체제는 작업 완료를 애플리케이션에게 알려줌. 이때 애플리케이션은 다른 작업을 중단하고 입출력 결과를 처리
| Overlapped 모델(비동기 입출력 + 비동기 통지)
사용 절차
1. 비동기 입출력을 지원하는 소켓 생성
2. 비동기 입출력을 지원하는 소켓 함수 호출
3. 운영체제는 소켓 입출력 작업 완료를 애플리케이션에게 알려주고(= 비동기 통지), 애플리케이션은 결과를 처리
비동기 함수 -> 확장함수
| Asynchronous Procedure Call (APC)
콜함수 -> 사용자
콜백함수 -> 운영체제]]
'프로그래밍 > 시스템프로그래밍' 카테고리의 다른 글
프로세스 스케쥴링 (0) | 2019.10.01 |
---|---|
Signaled vs Non signaled (0) | 2019.09.30 |
프로세스간의 통신 (0) | 2019.09.30 |
timer 함수 (0) | 2019.09.26 |
1.3 쓰레드의 동기화 (0) | 2019.09.25 |