가상 파일 시스템

위키백과, 우리 모두의 백과사전.
둘러보기로 가기 검색하러 가기

가상 파일 시스템(Virtual File System, 줄여서 VFS)은 실제 파일 시스템 위의 추상 계층이다. VFS의 목적은 클라이언트 응용 프로그램이 여러 파일 시스템에 같은 방법으로 접근할 수 있게 하는 것이다. 이를테면 VFS를 사용하면 클라이언트 응용 프로그램은 로컬인 기억 장치에도 네트워크 위의 기억 장치에 직접적으로 접근할 수 있기 때문에 로컬과 네트워크의 차이를 느끼지 못한다. 또, 마이크로소프트 윈도, 맥 오에스, 유닉스 운영 체제의 차이를 넘어 파일 시스템의 차이를 느끼는 일 없이 접근할 수 있다.

VFS는 커널과 실제 파일 시스템과의 인터페이스나 규격을 정의하고 있다. 그러므로 그 규격에 따라 간단히 새로운 파일 시스템을 커널에 추가할 수 있다. 파일 시스템은 새로운 공개 버전과의 호환성을 위해 수정하거나 다시 컴파일해야 할 수도 있다. 아니면 운영 체제에서 규격 변경에 대해 하위 호환 모드로 동작한다면 각 파일 시스템은 새로운 버전의 운영 체제에서도 그대로 사용할 수 있다.

구현[편집]

VFS를 구현할 때는 주로 객체 지향 방식(OOP)의 오버로딩 개념을 적용한다. 읽기/쓰기와 같은 시스템 호출 발생 시, 해당 파일이 속한 파일 시스템에 맞는 동작이 수행될 수 있도록 매핑해주는 것이다.

단일 파일 가상 파일 시스템이 추가된 예[편집]

같이 보기[편집]