Features/QED: Difference between revisions

From QEMU
Line 9: Line 9:
==Header==
==Header==
  Header {
  Header {
     uint32_t magic;     /* COW2 */
     uint32_t magic;               /* COW2 */
     uint32_t features;   /* format feature bits */
     uint32_t features;           /* format feature bits */
 
     uint32_t chunk_size; /* in bytes */
     uint32_t cluster_size;       /* in bytes */
     uint64_t max_chunks; /* total image size in bytes = max_chunks * chunks_size */
    uint32_t table_size;          /* table chunk size, in clusters */
 
     uint64_t image_size;         /* total image size, in clusters */
     uint32_t backing_offset; /* backing filename offset from start of file */
     uint32_t backing_file_offset; /* in bytes from start of header */
    uint32_t backing_file_size;  /* in bytes */
  }
  }



Revision as of 15:23, 24 August 2010

Specification

The file format looks like this:

+--------+--------------+---------+---------+-----+
| header | extent table | extent0 | extent1 | ... |
+--------+--------------+---------+---------+-----+

Header

Header {
    uint32_t magic;               /* COW2 */
    uint32_t features;            /* format feature bits */

    uint32_t cluster_size;        /* in bytes */
    uint32_t table_size;          /* table chunk size, in clusters */
    uint64_t image_size;          /* total image size, in clusters */

    uint32_t backing_file_offset; /* in bytes from start of header */
    uint32_t backing_file_size;   /* in bytes */
}

Extent table

Operations