Virtual file system

Ahn9807 (토론 | 기여)님의 2023년 2월 16일 (목) 08:37 판 (새 문서: 분류: 파일 시스템 섬네일|가운데 == 개요 == 가상 파일 시스템(Virtual File System, 줄여서 VFS)은 실제 파일 시스템 위의 추상 계층이다. VFS의 목적은 클라이언트 응용 프로그램이 여러 파일 시스템에 같은 방법으로 접근할 수 있게 하는 것이다. 이를테면 VFS를 사용하면 클라이언트 응용 프로그램은 로컬인 기억 장치에도 네트워크 위의 기억 장치에 직...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)


VFS.png

개요

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

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

등장 배경

만약 운영체제가 VFS를 지원하지 않는다면 각 프로세서들이 파일에 대한 접근을 모두 처리해야 한다. 즉 하나의 프로그램이 모든 환경에서 유연하게 실행되는 것이 매우 어려워 진다. 이러한 한계를 극복하기 위해서 Unix Like 시스템은 Virtual File System을 이용하여 하나의 파일 처리에 대한 요청을 적절한 드라이버로 매핑함으로써 유연하게 실행될 수 있도록 한다.