본문 바로가기

VFS2

Page Cache: write 글을 좀 오랜만에 쓴다. 이것저것 하느라 글을 그동안 못썼다. 흠, 다음 글은 뭐쓰지? 이전 글 VFS: read_iter() & write_iter() 원래는 페이지 캐시를 정리하려고 했는데 정리하다보니 read/write 매커니즘을 정리할 수밖에 없었다. 이 글에선 read_iter()가 어떻게 동작한는지 간단하게 알아본다. 관련 글 이 글은 가상 파일시스 hyeyoo.com Page Cache: filemap_read 이전 글 이전 글에서는 read() 시스템 호출에서 어떤 일이 일어나는지 알아봤다. read() 시스템 호출은 모드와 권한이 적절한지 확인한 후, 1) Direct IO를 수행하거나 2) filemap_read()로 페이지 캐시에서 hyeyoo.com 앞선 글에서 read()를 할 때.. 2022. 3. 9.
[Linux Kernel] 가상 파일시스템이란 (VFS, Virtual Filesystem Switch) Virtual Filesystem이란 리눅스를 사용하면 다양한 형식으로 포맷된 디스크를 사용할 수 있다. 보통 리눅스어세는 ext2, ext3, ext4를 사용하지만 윈도우에서 사용하는 NTFS나 FAT같은 디스크도 사용할 수 있다. 그런데, 어떤 디스크를 사용하던간에 관계 없이 프로그램을 작성할 땐 open, read, write, close와 같은 시스템 호출을 사용해서 이 모든걸 처리할 수 있다. 지금은 이게 모두 당연하지만, 예전에는 그렇지 않았다. 실제 파일 시스템이 무엇이냐에 관계 없이 공통된 인터페이스 (open/read/write/close 등)로 접근하는 것은 매우 어려운 일이었다. 이렇듯 리눅스에서, 실제 파일시스템에 관계 없이 공통된 인터페이스로 파일시스템에 접근하도록 하는 계층을 가.. 2021. 4. 13.