
[ 설명 ]
- VFS는 커널 안의 "가상 파일시스템 계층"
- 사용자는 프로그램을 "open, read, stat, mount"같은 시스템 콜로 파일을 다룸
- 이 요청을 받아 ext4, XFS, NFS, procfs, tmpfs 같은 서로 다른 파일시스템에
"공통 인터페이스"로 연결해줌
리눅스에서 로컬 디스크 파일시스템(ext4, xfs), 네트워크 파일 시스템, 가상 파일시스템, 컨테이너/레이어 파일 시스템(overlayfs)처럼 종류가 많음
VFS가 없으면
open/read/write/stat 같은 동작을 각각 다른 방식으로 구현/호출해야 함VFS가 있으면
항상 같은 시스템콜(openat, read, write, statx…) 사용이 경로가 어느 파일시스템인지 판별해서 해당 파일시스템 구현으로 라우팅