write()
ptm 마스터에 쓰기 위해 시스템 호출 함수를 사용하면 장치 파일이기 pty_write()
때문에 함수가 트리거됩니다 . /dev/ptmx
프로토타입 write()
은 다음과 같습니다.
ssize_t write(int fd, const void *buf, size_t count);
fd
open 을 호출하여 얻은 파일 설명자는 어디에 있습니까 /dev/ptmx
?
프로토타입 pty_write()
은 다음과 같습니다.
int pty_write(struct tty_struct *tty, const unsigned char *buf, int c);
tty
ptm은 어디에 있나요?
보시다시피 두 함수 모두 버퍼와 인수로 기록될 바이트 수를 갖습니다. 하지만 세 번째 매개변수는 다릅니다. 함수 write()
에는 파일 설명자가 있고 pty_write()
함수에는 tty 구조가 있습니다.
커널은 함수의 파일 설명자를 write()
함수의 오른쪽 tty(ptm)에 어떻게 연결합니까 pty_write()
?