Acknowledgement
Supported by : 정보통신산업진흥원
운영체제와 같은 대규모 프로그램은 확장을 용이하게 하기 위해 장치 드라이버를 모듈 구조를 통해 동작시킨다. 그러나 이러한 드라이버 모듈은 커널과 분리되어 개발되기 때문에 상대적인 취약성을 가지고 있다. 이러한 취약성으로 인해 발생한 고장은 드라이버뿐만 아니라 커널 전체에 오류를 야기해 시스템의 안정성을 저하시키는 요인이 된다. 이러한 문제를 해결하기 위해 안전하지 않은 드라이버를 커널로부터 격리하고자 하는 논의가 진행되었고, 이후 많은 연구를 통해 여러 가지 접근 방식을 통한 해결방법이 제안되었다. 그러나 기존의 방법은 드라이버 소스코드의 수정이 필요하거나 드라이버 요청에 대한 응답속도가 매우 느린 현실적인 제약이 있었다. 본 논문에서는 기존방법의 한계를 극복하는 동적 컴파일러를 이용한 고장 분리 기법을 제안한다. 본 제안 기법은 기존 드라이버를 그대로 사용가능하며 기존 기법의 분리 정책을 모두 적용할 수 있다. 리눅스 커널에 본 제안기법을 적용하여 동적 컴파일러의 성능을 측정하고 본 제안 기법의 특성을 기존 기법과 비교함으로써 본 제안기법이 매우 적은 부하만으로 장치 드라이버의 고장 분리가 가능함을 확인하였다.
Supported by : 정보통신산업진흥원