refactor: 문서 개선 중
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user