[OS] File System(2) - Implementation
2023. 5. 18. 00:40
CS/Operating System
File System은 Interface와 Implementation으로 나뉠 수 있다. 저번 포스팅에선 User와 File System 간의 상호작용을 위한 "Interface"를 다뤘다면, 이번 포스팅에선 실제 내부적으로 어떻게 구현되는지 "Implementation"에서 다뤄볼 것이다. Main Memory와 Disk간의 데이터 교환 단위는 "Block"인데, File System은 Disk에서 "Sequence of Block"으로 표현된다. 각 "Block"은 하나 이상의 Sector로 구성된다. Disk에는 MetaData와 File Data가 저장되어야 한다. Unix에선 inode(MetaData)를 위한 공간과 File Data를 위한 공간이 따로 할당되어 있다. inode의 경우 사이즈..
[OS] File System(1) - Interface
2023. 5. 17. 15:57
CS/Operating System
Disk의 기본 단위는 Sector이다. 이러한 Sector들을 묶어서 논리적으로 독립적인 Disk를 만들 수 있었다. 이를 Partition이라 부르며, 각 Partition은 Logical Formatting 단계를 거쳐 File System을 설치하거나 Swap-Space로 활용할 수 있다. "File System"는 SSD, Disk 등과 같은 각 저장장치에 설치되어 File을 저장하고 관리하며, 검색할 수 있는 등의 기능을 제공하는 SW이다. File System은 User 관점 혹은 저장장치 관점에 따라 2가지로 나뉠 수 있다. "File System Interface"는 File System과 사용자 간의 상호작용을 위한 추상화 계층이다. 예를 들어, 우리는 File의 실제 어떻게 저장되어 ..