sysfs − 파일 시스템 타입 정보를 가져온다.
int sysfs(int option, const char * fsname);
int sysfs(int option, unsigned int fs_index, char * buf);
int sysfs(int option);
sysfs 는 커널상에 현제 있는 파일 시스템 타입에 관한 정보를 반환한다. The specific form of the sysfs 호출과 정보의 특별한 형태를 작용하는 option 에 따라 반환한다:
1 |
file-system identifier string fsname 을 file-system type index로 바꾼다. |
||
2 |
file-system type index fs_index 를 null-terminated file-system identifier string으로 바꾼다. 이 문자열은 d to by buf. 에 의해 지정된 버퍼로 쓰여진다. buf 가 문자열을 받아들일 충분한 공간이 있는지 확인하라. |
||
3 |
커널에 현재 있는 파일 시스템의 총 개수를 반환한다. |
파일 시스템 타입의 번호는 0으로 시작한다.
성공 시, sysfs 는 옵션 1, 에 대해 파일 시스템 인덱스를 반환하고, 옵션 2, 에 대해 0을 반환하고, 옵션 3. 에 대해 현제 설정된 파일 시스템의 수를 반환한다. 에러 시, −1 이 반환된다. 그리고 errno 는 적절히 설정된다.
EINVAL |
fsname 가 유효한 file-system type identifier가 아닌 경우; fs_index 가 범위를 넘어간 경우; option 가 불가한 경우; |
||
EFAULT |
fsname 혹은 buf 가 접근 가능한 어드레스 영역을 넘었을 경우. |
SVr4.
/proc 에 마운트 된 proc 파일 시스템이 있는 리눅스 상에서 /proc/filesystems 에서도 같은 정보를 다룰 수 있다.
지원되는 libc나 glibc가 없다. buf가 얼마나 커야 하는지 알 수 없다.