리눅스/커널2012. 12. 8. 11:28

VFS는 다음과 같은 구조체들이 있다.

  • 특정 파일 시스템을 표현하는 superblock 구조체
  • 특정 파일을 표현하는 inode 구조체
  • 특정 디렉터리와 경로를 표현하는 dentry 구조체
  • 프로세스와 관련해 열린 파일 구조체

눈여겨 보아야 할 점은 리눅스커널에서는 디렉터리 자체도 파일로 취급을 한다.

또한 위의 객체 따른 여러가지 operation 구조체들이 있는데 다음과 같다.

  • super_operations
  • inode_operations
  • dentry_operations
  • file operation

이들 operation 구조체들은 각 VFS구조들에 대해 함수 포인터의 구조체로 구현되어 있다.

그 밖에 구조체들에는

  • registered 된 파일 시스템을 표현하는 file_syste_type 구조체
  • 마운트 포인트를 알리는 vfsmount 구조체
  • 프로세스와 관련해 열린 파일을 표현하는 file_struct, fs_struct, namespace 구조체

'리눅스 > 커널' 카테고리의 다른 글

[OS] priority inversion 해결방법  (0) 2013.01.13
monolithic vs microkernel  (0) 2013.01.13
VFS(1) -추상적 레이어-  (0) 2012.12.08
make menuconfig 시에 원하는 옵션 찾아보기  (0) 2012.11.30
initarray_cache vs arraycache_init  (0) 2012.10.21
Posted by code cat