리눅스 커널 심층분석
-
11. 타이머와 시간 관리Operating System 2019. 12. 30. 16:24
커널에 있어 시간의 흐름은 중요하다. 대다수의 커널 함수가 이벤트 기반이 아닌 시간 기반으로 동작하기 때문이다. 시간 기반으로 동작하는 함수로 스케줄러 실행 큐의 균형을 조절하는 함수나 화면을 갱신하는 함수 등을 예로 들 수 있다. 이런 함수는 초당 100회와 같이 정해진 주기에 따라 실행된다. 지연된 디스크 입출력을 처리하는 함수처럼 커널이 특정 함수를 상대적인 미래 시점에 실행해야 하는 경우도 있다. 예를 들면, 특정 작업을 지금으로부터 500ms 후에 실행해야 하는 경우가 있을 수 있다. 그리고 커널은 시스템의 가동 시간과 현재 날짜 및 시간도 관리해야 한다. 상대 시간과 절대 시간의 차이점을 주의하자. 앞으로 5초 후의 작업을 스케줄링하는데는 절대 시간 개념이 필요하지 않으며 상대시간 개념만 있으..