refactor: 문서 개선 중
This commit is contained in:
+26
@@ -0,0 +1,26 @@
|
||||
# virtqueue 뒤 QEMU block backend의 세 형태
|
||||
|
||||
## Alternative text
|
||||
|
||||
Guest의 /dev/vda가 virtio-blk와 virtqueue를 지나 QEMU block backend에 도착한 뒤 qcow2 파일, RAW 파일, Host block device 세 갈래로 나뉘는 구조도. 그 아래 Host block stack은 별도 Concept이 맡아 이 그림에서는 다시 합치지 않는다.
|
||||
|
||||
## Long description
|
||||
|
||||
왼쪽에서 Guest /dev/vda 요청이 virtio-blk와 virtqueue를 지나 VM boundary를 넘는다. QEMU block backend에서 qcow2 file, RAW file, Host block device 세 갈래로 나뉜다. qcow2와 RAW 노드에는 Host filesystem을 경유한다는 차이를, Host block device에는 파일 backend가 아니라는 차이를 적었다. 세 경로 아래의 Host block stack은 별도 Concept이 맡으므로 이 그림에서는 다시 합치지 않는다.
|
||||
|
||||
## Elements and evidence
|
||||
|
||||
- **/dev/vda** (storage): Guest가 보는 virtual disk. Evidence: L6355–L6363.
|
||||
- **virtio-blk · virtqueue** (component): Guest /dev/vda 요청을 virtio-blk가 받아 virtqueue에 싣는 경로를 한 노드로 묶었다. Evidence: L6355–L6364.
|
||||
- **QEMU block backend** (service): Guest virtual I/O를 실제 Host backend에 연결한다. Evidence: L6367–L6387.
|
||||
- **qcow2 file** (storage): sparse/COW 기능을 가진 file backend. Evidence: L6419–L6460, L6512–L6547.
|
||||
- **RAW file** (storage): 상대적으로 단순한 offset 대응을 쓰는 file backend. Evidence: L6512–L6547.
|
||||
- **Host block device** (storage): QEMU가 Host block device를 직접 backend로 사용할 수 있는 형태. Evidence: L6551–L6575.
|
||||
|
||||
## Relationships
|
||||
|
||||
- **QEMU block backend → Host block device:** block-device backend. Evidence: L6551–L6575.
|
||||
- **QEMU block backend → qcow2 file:** qcow2 backend. Evidence: L6369–L6379, L6419–L6460.
|
||||
- **QEMU block backend → RAW file:** RAW backend. Evidence: L6512–L6547.
|
||||
- **/dev/vda → virtio-blk · virtqueue:** block I/O. Evidence: L6355–L6363.
|
||||
- **virtio-blk · virtqueue → QEMU block backend:** VM boundary. Evidence: L6362–L6374.
|
||||
Reference in New Issue
Block a user