refactor: 문서 개선 중

This commit is contained in:
donghyeon-ka
2026-09-21 14:30:55 +09:00
parent c93cdea150
commit 805a18f486
1497 changed files with 525837 additions and 59152 deletions
@@ -14,11 +14,11 @@
"long_description": "위에서 아래로 읽는다. 맨 위 PostgreSQL 이 fsync() 를 부르고 그 요구가 Guest Filesystem 으로 내려간다. Guest Block Layer 에서 FLUSH 등의 요청으로 바뀌고, virtio-blk 를 지나 VM 경계를 넘어 QEMU / Backend 로 간다. 거기서 Host Storage Stack 을 지나 맨 아래 Physical Storage 까지 그 의미가 전달되어야 완료가 성립한다. 여섯 번 손이 바뀌는 동안 한 곳이라도 그 의미를 지키지 않으면 게스트가 받은 완료 응답이 거짓이 된다. write() 완료와 writeback 완료, fsync/flush 완료, 전원 장애에도 안전한 durability 가 서로 다르다는 구분은 본문의 코드블록이 맡는다.",
"source_context": {
"document": "docs/virtualization/final/document.md",
"document_sha256": "181e2b3cc8a45bae81e7e8193d026937c4d586ae4495d3b2c323eb7e6abcfadd",
"document_sha256": "8c4ecc64c8cea9a4450ed7131fdd9cb2048dc092b66cd969f6346ed77887c210",
"anchor": {
"kind": "heading",
"value": "150. `fsync()`가 필요한 이유",
"line": 6723
"line": 6736
}
},
"composition": {
@@ -45,12 +45,12 @@
"description": "필요한 시점에 fsync() 를 불러 영속성 경계까지 반영을 요청하는 게스트 프로세스.",
"evidence": [
{
"start_line": 6742,
"end_line": 6742
"start_line": 6755,
"end_line": 6755
},
{
"start_line": 6726,
"end_line": 6734
"start_line": 6739,
"end_line": 6747
}
],
"assumption": false
@@ -64,8 +64,8 @@
"description": "fsync() 요구를 처음 받는 게스트 파일시스템.",
"evidence": [
{
"start_line": 6746,
"end_line": 6746
"start_line": 6759,
"end_line": 6759
}
],
"assumption": false
@@ -79,8 +79,8 @@
"description": "요구를 FLUSH 등의 block 요청으로 바꾸는 계층.",
"evidence": [
{
"start_line": 6749,
"end_line": 6751
"start_line": 6762,
"end_line": 6764
}
],
"assumption": false
@@ -94,8 +94,8 @@
"description": "그 요청을 VM 경계 너머로 옮기는 게스트 driver.",
"evidence": [
{
"start_line": 6753,
"end_line": 6753
"start_line": 6766,
"end_line": 6766
}
],
"assumption": false
@@ -109,12 +109,12 @@
"description": "요청을 받아 호스트 쪽 파일 I/O 나 block I/O 로 잇는 자리.",
"evidence": [
{
"start_line": 6756,
"end_line": 6756
"start_line": 6769,
"end_line": 6769
},
{
"start_line": 6686,
"end_line": 6686
"start_line": 6699,
"end_line": 6699
}
],
"assumption": false
@@ -128,12 +128,12 @@
"description": "호스트 Page Cache 와 파일시스템, Block Layer 가 놓인 구간.",
"evidence": [
{
"start_line": 6759,
"end_line": 6759
"start_line": 6772,
"end_line": 6772
},
{
"start_line": 6688,
"end_line": 6692
"start_line": 6701,
"end_line": 6705
}
],
"assumption": false
@@ -148,12 +148,12 @@
"description": "요구가 여기까지 전달되어야 정전 이후 생존을 말할 수 있다.",
"evidence": [
{
"start_line": 6762,
"end_line": 6765
"start_line": 6775,
"end_line": 6778
},
{
"start_line": 6729,
"end_line": 6729
"start_line": 6742,
"end_line": 6742
}
],
"assumption": false
@@ -170,8 +170,8 @@
"order": 1,
"evidence": [
{
"start_line": 6744,
"end_line": 6746
"start_line": 6757,
"end_line": 6759
}
],
"assumption": false
@@ -186,8 +186,8 @@
"order": 2,
"evidence": [
{
"start_line": 6746,
"end_line": 6749
"start_line": 6759,
"end_line": 6762
}
],
"assumption": false
@@ -202,8 +202,8 @@
"order": 3,
"evidence": [
{
"start_line": 6751,
"end_line": 6753
"start_line": 6764,
"end_line": 6766
}
],
"assumption": false
@@ -218,8 +218,8 @@
"order": 4,
"evidence": [
{
"start_line": 6753,
"end_line": 6756
"start_line": 6766,
"end_line": 6769
}
],
"assumption": false
@@ -234,8 +234,8 @@
"order": 5,
"evidence": [
{
"start_line": 6756,
"end_line": 6759
"start_line": 6769,
"end_line": 6772
}
],
"assumption": false
@@ -250,8 +250,8 @@
"order": 6,
"evidence": [
{
"start_line": 6759,
"end_line": 6765
"start_line": 6772,
"end_line": 6778
}
],
"assumption": false