Kwonlog
로그인
Kwonlog
로그인
File System Case Studies_운영체제(14)
조권휘
·
2023년 1월 5일
팔로우
0
OS
Operating Systems
운영체제
0
운영체제
목록 보기
14/14
UNIX FS
On-disk layout
Boot block : boot volume/boot loader를 가리키는 block
Super block : 구성 정보(inode, freelist, datablock의 개수, 위치 등)를 담고 있는 block
I-node List(Table) : 모든 inode는 같은 size이고, inode list의 index를 참조하는 block
Data Blocks : 실제 데이터를 담고 있는 block
I-node
Ex) 4KB/block, 12개 → 4KB
12(direct) + 4KB
12(single indirect) + 4KB
12
12(double) + 4KB
12
12 * 12(triple)
1개의 block에 담을 pointer 수 : if block pointer(address) = 4B → 1024개 담을 수 있다.
즉, direct는 4KB * 1024(K) = 4MB의 file size
Directory
<file name, inode#> 형태의 array
hard link / soft link와 inode의 관계
Fast File System(FFS)
Original File system Problem
file이 시간이 지남에 따라 이를 구성하는 block이 흩어진다.
file의 inode와 block이 다른 cylinder에 담겨지는 경우가 생긴다.
한 directory를 구성하는 file끼리도 흩어져있는 경우가 있다.
block size가 너무 작은 문제도 있다.
FFS
기존 system이 쉽게 만들어진 반면 성능이 별로 좋지 못하다. 특히 seeking time이 길다.
BSD Unix에서 기존의 file system을 개선한 방식이다.
한 원판의 인접한 cylinder들을 grouping을 하여 seek time을 줄였다.
같은 directory안에 있는 file들끼리도 같은 cylinder에 위치하도록 한다.
inode와 file의 data block도 같은 cylinder에 위치하게 한다.
disk의 utilization, response time을 향상시켰다.
Ext2
Ext2 features
각 관리자가 block size를 1~4KB로 설정할 수 있도록 하였다.
I-node의 수를 설정할 수 있다.
disk block을 group으로 partitioning한다.
file에 data block을 미리 할당해서 file fragmentation을 줄인다.
symbolic link를 효과적으로 한다.
Disk layout
Super Block : file system 전체에 대한 metadata를 저장하고 있다.
inode, block수, free block, group당 inode, block수 등..
다른 group에도 동일한 정보들이 존재한다.
Group descriptors : free block 수, inode, bitmap...
system이 사용되면서 각 group마다 정보가 달라진다.
Block group size
block bitmap은 한 개의 block 안에 저장되어야한다.
한 block이 b개의 byte로 구성된 block이라면, 그 group에서 support할 수 있는 block의 수는 8b개이다.
ex) 8GB Ext2 partition, 4KB block size
4KB가 가리킬 수 있는 block의 수는 32KB개의 data block을 가리킬 수 있다. → 32K * 4K = 128MB
8GB/128MB = 64개의 group이 만들어진다.
FAT file system
Boot sector에서 volume이 bootable하면 boot loader를 가리키거나 이를 가리키는 code를 담고 있다.
FAT2는 FAT1의 copy로 FAT1이 깨졌을 때 백업을 하기 위해 사용된다.
FAT32부터는 Root Dir.가 노란 블록 내부에 포함된다.
조권휘
안녕하세요 :) Data/AI 공부 중인 한국외대 컴퓨터공학부 조권휘입니다.
팔로우
이전 포스트
File System Internals_운영체제(13)
0개의 댓글
댓글 작성