
posix_mknod 함수는 특정 디렉토리에 파일을 생성하는 함수로, mode와 dev 인자가 사용됩니다.
mode 인자는 파일의 권한을 지정하는 데 사용됩니다. 권한은 owner, 그룹, 기타 사용자로 나누어지며, 읽기, 쓰기, 실행 권한이 있습니다. 예를 들어, S_IRUSR는 owner가 파일을 읽을 수 있는 권한을 의미합니다.
dev 인자는 장치 파일의 major number와 minor number를 지정하는 데 사용됩니다. major number는 장치 파일의 종류를 나타내며, minor number는 장치 파일의 특정한 속성을 나타냅니다. 예를 들어, 장치 파일의 major number가 1이면, 장치 파일은 블록 장치 파일을 의미합니다.
예를 들어, posix_mknod 함수를 사용하여 블록 장치 파일을 생성할 때, mode 인자는 파일의 권한을 지정하고, dev 인자는 장치 파일의 major number와 minor number를 지정합니다.
#hostingforum.kr
c
int posix_mknod(const char *pathname, mode_t mode, dev_t dev);
위의 예제에서, mode 인자는 0644로 지정되고, dev 인자는 1, 0으로 지정됩니다. 이 경우, 블록 장치 파일이 생성되고, owner가 읽기, 쓰기 권한을 가지며, 그룹과 기타 사용자는 읽기 권한만을 가집니다.
#hostingforum.kr
c
int posix_mknod("/dev/block_device", 0644, makedev(1, 0));
이러한 예제를 통해, posix_mknod 함수의 mode와 dev 인자가 어떻게 사용되는지 이해할 수 있습니다.
2025-07-11 14:17