요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
Delayed allocation and write accounting
sysfs-fs-ext4:59-82아직 location이 없는 dirty blocks와 filesystem lifetime·current mount 기준 write kilobytes를 read-only counters로 확인합니다.
Debug goals, writeback and zeroout
sysfs-fs-ext4:83-112Debug inode goal과 per-inode writeback batch, extent zeroout threshold는 placement와 random-write latency에 직접 영향을 줍니다.
Journal task visibility
sysfs-fs-ext4:113-118Current PID namespace에서 journal thread가 보이면 PID를, 도달할 수 없으면 0을 반환합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
What: /sys/fs/ext4/<disk>/mb_stats
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
Controls whether the multiblock allocator should
collect statistics, which are shown during the unmount.
1 means to collect statistics, 0 means not to collect
statistics
What: /sys/fs/ext4/<disk>/mb_group_prealloc
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
The multiblock allocator will round up allocation
requests to a multiple of this tuning parameter if the
stripe size is not set in the ext4 superblock
What: /sys/fs/ext4/<disk>/mb_max_to_scan
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
The maximum number of extents the multiblock allocator
will search to find the best extent
What: /sys/fs/ext4/<disk>/mb_min_to_scan
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
The minimum number of extents the multiblock allocator
will search to find the best extent
What: /sys/fs/ext4/<disk>/mb_order2_req
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
Tuning parameter which controls the minimum size for
requests (as a power of 2) where the buddy cache is
used
What: /sys/fs/ext4/<disk>/mb_stream_req
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
Files which have fewer blocks than this tunable
parameter will have their blocks allocated out of a
block group specific preallocation pool, so that small
files are packed closely together. Each large file
will have its blocks allocated out of its own unique
preallocation pool.
What: /sys/fs/ext4/<disk>/inode_readahead_blks
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
Tuning parameter which controls the maximum number of
inode table blocks that ext4's inode table readahead
algorithm will pre-read into the buffer cache
What: /sys/fs/ext4/<disk>/delayed_allocation_blocks
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
This file is read-only and shows the number of blocks
that are dirty in the page cache, but which do not
have their location in the filesystem allocated yet.
What: /sys/fs/ext4/<disk>/lifetime_write_kbytes
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
This file is read-only and shows the number of kilobytes
of data that have been written to this filesystem since it was
created.
What: /sys/fs/ext4/<disk>/session_write_kbytes
Date: March 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
This file is read-only and shows the number of
kilobytes of data that have been written to this
filesystem since it was mounted.
What: /sys/fs/ext4/<disk>/inode_goal
Date: June 2008
Contact: "Theodore Ts'o" <[email protected]>
Description:
Tuning parameter which (if non-zero) controls the goal
inode used by the inode allocator in preference to
all other allocation heuristics. This is intended for
debugging use only, and should be 0 on production
systems.
What: /sys/fs/ext4/<disk>/max_writeback_mb_bump
Date: September 2009
Contact: "Theodore Ts'o" <[email protected]>
Description:
The maximum number of megabytes the writeback code will
try to write out before move on to another inode.
What: /sys/fs/ext4/<disk>/extent_max_zeroout_kb
Date: August 2012
Contact: "Theodore Ts'o" <[email protected]>
Description:
The maximum number of kilobytes which will be zeroed
out in preference to creating a new uninitialized
extent when manipulating an inode's extent tree. Note
that using a larger value will increase the
variability of time necessary to complete a random
write operation (since a 4k random write might turn
into a much larger write due to the zeroout
operation).
What: /sys/fs/ext4/<disk>/journal_task
Date: February 2019
Contact: "Theodore Ts'o" <[email protected]>
Description:
This file is read-only and shows the pid of journal thread in
current pid-namespace or 0 if task is unreachable.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Ext4 multiblock allocator statistics
1-9| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_stats |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Multiblock allocator가 unmount할 때 표시할 statistics를 수집할지 제어합니다. `1`은 statistics를 수집하고 `0`은 수집하지 않습니다. |
| Access | Read/write |
Ext4 block-group preallocation rounding
10-17| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_group_prealloc |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Ext4 superblock에 stripe size가 설정되지 않은 경우 multiblock allocator가 allocation requests를 이 tuning parameter의 배수로 올림합니다. |
| Access | Read/write |
Maximum allocator extent scan
18-24| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_max_to_scan |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Multiblock allocator가 가장 좋은 extent를 찾기 위해 검색할 extents의 최대 수입니다. |
| Access | Read/write |
Minimum allocator extent scan
25-31| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_min_to_scan |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Multiblock allocator가 가장 좋은 extent를 찾기 위해 검색할 extents의 최소 수입니다. |
| Access | Read/write |
Buddy-cache request threshold
32-39| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_order2_req |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Buddy cache를 사용하는 allocation request의 최소 크기를 2의 거듭제곱으로 정하는 tuning parameter입니다. |
| Access | Read/write |
Small-file preallocation threshold
40-50| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/mb_stream_req |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Block 수가 이 tunable parameter보다 적은 files는 block-group-specific preallocation pool에서 blocks를 할당받아 small files가 서로 가깝게 배치됩니다. 각 large file은 자신만의 unique preallocation pool에서 blocks를 할당받습니다. |
| Access | Read/write |
Statistics, scan bounds, request threshold와 preallocation policy입니다.
Ext4 inode-table readahead
51-58| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/inode_readahead_blks |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Ext4 inode-table readahead algorithm이 buffer cache로 미리 읽을 inode table blocks의 최대 수를 제어하는 tuning parameter입니다. |
| Access | Read/write |
Attribute의 단위와 대상입니다.
Ext4 delayed-allocation block count
59-66| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/delayed_allocation_blocks |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Page cache에서 dirty 상태지만 filesystem 안의 physical location이 아직 할당되지 않은 blocks의 수를 표시합니다. |
| Access | Read-only |
Counter가 나타내는 write lifecycle 구간입니다.
Ext4 lifetime write counter
67-74| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/lifetime_write_kbytes |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Filesystem이 생성된 뒤 지금까지 이 filesystem에 쓴 data의 kilobytes 수를 표시합니다. |
| Access | Read-only |
Ext4 mounted-session write counter
75-82| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/session_write_kbytes |
| Date | 2008년 3월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Filesystem을 mount한 뒤 현재 session 동안 이 filesystem에 쓴 data의 kilobytes 수를 표시합니다. |
| Access | Read-only |
Filesystem lifetime과 current mount session의 기준점이 다릅니다.
Ext4 debug inode allocation goal
83-92| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/inode_goal |
| Date | 2008년 6월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | 값이 0이 아니면 inode allocator가 다른 모든 allocation heuristics보다 우선해서 사용할 goal inode를 정하는 tuning parameter입니다. Debugging 전용이므로 production systems에서는 `0`이어야 합니다. |
| Access | Read/write |
Zero와 non-zero values의 의도된 사용 범위입니다.
Ext4 per-inode writeback limit
93-99| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/max_writeback_mb_bump |
| Date | 2009년 9월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Writeback code가 다른 inode로 넘어가기 전에 현재 inode에서 write하려고 시도할 최대 megabytes 수입니다. |
| Access | Read/write |
Ext4 extent-tree zeroout threshold
100-112| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/extent_max_zeroout_kb |
| Date | 2012년 8월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Inode extent tree를 조작할 때 새 uninitialized extent를 만드는 대신 zero-out할 최대 kilobytes 수입니다. 값을 크게 하면 4 KiB random write도 zeroout 때문에 훨씬 큰 write로 바뀔 수 있어 random write 완료 시간의 variability가 증가합니다. |
| Access | Read/write |
Throughput batching과 random-write latency variability의 tuning 지점입니다.
Ext4 journal thread PID
113-118| 항목 | 한국어 전문 번역 |
|---|---|
| What | /sys/fs/ext4/<disk>/journal_task |
| Date | 2019년 2월 |
| Contact | "Theodore Ts'o" <[email protected]> |
| Description | Current PID namespace에서 journal thread의 PID를 표시합니다. 해당 task에 도달할 수 없으면 `0`을 표시합니다. |
| Access | Read-only |
PID namespace visibility에 따른 반환값입니다.
Multiblock and inode allocation
sysfs-fs-ext4:1-58Allocator scan bounds, buddy-cache threshold, small-file packing, group preallocation과 inode-table readahead를 조정합니다.