1. 타임아웃, 타이머
ㅇ 타임아웃 (Timeout)
- 정해진 시간이 다 됨(경과됨)
ㅇ 타이머 (Timer)
- 운용중인 프로세스를 종료시키기 위한 수단
. 통상, 무한 루프, 동작 실패 등에 대비하거나,
. 또는, 지정된 시간 후 인터럽트를 발생하도록 설정되는 등
- 보통, 특정 값에서 시작하여 1씩 줄어들며 0에서 인터럽트 발생
- 例) TCP 타이머, 555 타이머 등
ㅇ 타이머 구현 방식
- 고정 클럭률과 카운터(계수기)로 구성되어,
- 정해진 계수(計數) 후에 인터럽트를 발생시킴
2. [컴퓨터 하드웨어] 타이머를 위한 `경과 시간` 제공 방식 (Timer Interrupt)
ㅇ 틱(Tick, 1/주파수 [sec]) 수
- 통상, 컴퓨터 내부 발진기의 진동 주기에 따른 틱 수를 제공함
- 시스템(운영체제) 시작 이후에 상대적인 경과 시간(Uptime)은 이 틱 수로 계산되어짐
ㅇ 컴퓨터 아키텍처별 타이머 인터럽트 주파수 例)
- PC x86 계열 : 100 Hz
. 100분의 1초 마다 1번 즉, 10 밀리초 마다 하나의 Tick 발생 (즉, 초당 100회 발생)
- Alpha 칩 계열 : 1024 Hz
- ARM 프로세서 계열 : 100 Hz
* 각 아키텍처에서도 경우(버젼)에 따라 주파수가 달라지기도 함
3. [프로그래밍 일반] 타이머 함수
ㅇ 함수 호출의 시간 예약
ㅇ 3가지 주요 경우 例)
- (타이머 생성 1) 일정 시간 마다, 특정 구문/함수를 반복 실행
. 자바스크립트 例) setInterval(콜백함수, duration)
- (타이머 생성 2) 일정 시간이 지난 후에, 특정 구문/함수를 딱 한번 실행
. 자바스크립트 例) setTimeout(콜백함수, duration)
- (타이머 제거) 이미 실행 중인, 특정 구문/함수를 멈추게 함
. 자바스크립트 例) clearInterval(이미실행중인타이머), clearTimeout(이미실행중인타이머)