키보드를 예로들면, 삼성 키보드도 있고, 로지텍 키보드도 있고... 등등...
만약 키보드 입력을 받아들이는 프로그램을 만들어야 하는데 일일히 해당 드라이버에 접근해서 데이터를 받아오지는 않지요?
운영체제와 운영체제에서 기계장치를 사용하기 위한 드라이버 사이에서 이러한 사용자가 필요한 동작들에 대해서 표준적인 접근 방법을 제공하기 위한 계층이라고 생각하시면 되겠네요.
키보드A 드라이버┐
키보드B 드라이버---> [추상화:키보드 동작] - OS -> 응용 프로그램(사용자가 신경써야할 부분)
키보드C 드라이버┘