예를들어 키보드 드라이버면 키보드에서 보내는 신호(인터럽트)를 받아서 os에서 적절하게 처리해주는 역할
익명(39.7)2024-02-06 19:44
예를 들어서 키보드를 USB로 연결하고 나면 이런 저런 정보를 USB 프로토콜 규격에 맞게 주고 받음.
그리고 그 정보를 토대로 리눅스 기준 character device가 생성됨
이 device는 말그대로 하드웨어에 대한 모든 작업을 할 수 있음 (열기 닫기 읽기 쓰기 등등)
예를 들어서 키보드가 OS한테 나의 폴링 레이트는 1000Hz야. 라고 USB를 통해 말했으면 OS"가" 키보드의 데이터를 1ms마다 한번씩 퍼가는거임 (키보드"가" OS한테 데이터를 보내는게 아니라)
익명(37.120)2024-02-06 20:15
답글
이게 내가 아는 수준인데 나도 그냥 흥미 위주로 찾아본거라 좀 더 전문가가 와서 고쳐주거나 부연 설명을 해주면 좋겠음 더 깊은 레벨은 나도 궁금하던 참이라
예를들어 키보드 드라이버면 키보드에서 보내는 신호(인터럽트)를 받아서 os에서 적절하게 처리해주는 역할
예를 들어서 키보드를 USB로 연결하고 나면 이런 저런 정보를 USB 프로토콜 규격에 맞게 주고 받음. 그리고 그 정보를 토대로 리눅스 기준 character device가 생성됨 이 device는 말그대로 하드웨어에 대한 모든 작업을 할 수 있음 (열기 닫기 읽기 쓰기 등등) 예를 들어서 키보드가 OS한테 나의 폴링 레이트는 1000Hz야. 라고 USB를 통해 말했으면 OS"가" 키보드의 데이터를 1ms마다 한번씩 퍼가는거임 (키보드"가" OS한테 데이터를 보내는게 아니라)
이게 내가 아는 수준인데 나도 그냥 흥미 위주로 찾아본거라 좀 더 전문가가 와서 고쳐주거나 부연 설명을 해주면 좋겠음 더 깊은 레벨은 나도 궁금하던 참이라
https://www.spiceworks.com/tech/devops/articles/what-is-device-driver/
- dc App
걍 시스템콜 모아서 프로그램 만드는거임
드라이버 명령어는 cpu 커널모드에서 돌아간다고 암.
https://learn.microsoft.com/ko-kr/windows-hardware/drivers/gettingstarted/what-is-a-driver-
이런 자료를 보는 것이 편할 듯
character만 있는 게 아님 공부해보면 꽤 흥미로우니 직접 공부해보셈