본문 바로가기

리눅스

[리눅스] 커널의 watchdog란?

by Pilo 2021. 8. 23.

커널의 watchdog란?

커널에서 시스템 동작을 확인하기 위해 사용하는 watchdog모듈이 남긴 것으로, CPU가 커널에서만 동작하고 사용자 프로세스단으로 넘어가지 않은 경우도 watchdog이 감시하고 알려주는 역할을 할 수 있습니다.

사용자 프로세스가 커널로 전송한 요청이 완료되지 않고 커널에 머물러 있음을 확인할 수 있습니다. 일반적으로 사용자 프로세스의 요청은 짧은 시간 내에 커널에서 수행되어 그 결과가 프로세스로 전달되어야 하는데, 커널 내부의 오류 혹은 특정한 상황에 의해 지연이 발생할 수 있고, 이러한 상황을 감지하기 위해 리눅스 커널은 watchdog을 사용합니다.

만약 OS에서 인식하는 코어의 개수가 32개인데 이중 16개만 과부하가 걸리고, 나머지 CPU에는 과부하가 걸리지 않았다면, 이는 해당 시스템에서 사용하고 있는 Broadwell 계열의 메인보드 아키텍처와 리눅스 커널의 조합 문제로 각 CPU가 담당하는 PCI 슬롯에서 처리하는 패킷에 대한 처리는 해당 CPU에서만 이뤄진다는 제약사항의 문제라고도 추측할 수 있습니다.


쉽게 말해서 watchdog은 컴퓨터의 오작동을 탐지하고 복구하기 위해 사용합니다.

컴퓨터의 하드웨어 또는 프로그램이 오류가 발생할 경우 워치독이 오류를 발견할 수 있습니다.

댓글