나는 드라이버가 하드웨어 장치와 통신하는 커널의 능력을 확장하는 방법이라는 것을 읽었습니다. 왜냐하면 드라이버가 너무 많아서 커널을 확장할 수 있어야 하고 앞으로 더 많은 것이 있기 때문입니다. 드라이버를 통해 하드웨어 장치와 통신을 설정하려면 사용자 공간의 프로그램이 시스템 호출 ioctl()을 통해 드라이버와의 연결을 설정해야 합니다.
이제 PTTY(pseudo-Termimanl)가 무언가를 시뮬레이션합니다. 원래는 실제 하드웨어였으며 프로그램이 PTTY와 통신하려면 ioctl()을 사용하여 액세스해야 하는 드라이버도 있었습니다.
특별한 상태로 인해 이 의사 터미널이 궁극적으로 어떻게 구현되는지 잘 모르겠습니다. 커널의 일부입니까, 아니면 사용자 공간의 일부입니까?
(PS는 PTTY, TTY와 동일)
답변1
커널 공간에 있습니다. Linux 장치 드라이버에 대한 이 문서는 약간 오래되었지만 여전히 일반적으로 적용 가능합니다.https://lwn.net/images/pdf/LDD3/ch18.pdf
그러나 최근 커널 드라이버를 "KMSCON"이라는 사용자 공간 콘솔로 교체하려는 노력이 있었습니다. 자세한 내용은 프로젝트 사이트를 참조하세요.http://cgit.freedesktop.org/~dvdhrm/kmscon/tree/README