VirtualBox

source: vbox/trunk/doc/manual/en_US/dita/topics/diffimages.dita@ 105145

Last change on this file since 105145 was 105134, checked in by vboxsync, 7 months ago

Docs: bugref:10705. This is a merge commit to introduce doc team's changes in the user manual dita files. The following files
are excluded from this process:

  • Files whose names satrt with "viso", "vboxmanage", "man_", "vboximg", "vboxheadless", or "user_isomakercmd-man".

And general notes about this merge are as follows:

  • For now I leave glossentry-*dita file as they are since we use different enclosing dita elements
  • in hdimagewrites.dita we have <note type="attention"> while doc team's copy has <note type="caution">. Not sure if this is significant.

For now I copy doc team's version over.

  • I have not modified our UserManual.ditamap file. This will be done in a follow up commit.

The list of commits we have merged are as follows:

r3392: 7.1 new features; add comments to some DITA topics
r3730: VBP-283: Update supported platforms; 7.0 and 7.1
r3980: 7.1: reset menu option; add note
r3992: ARM hosts; add draft topic on limitations; add container topic for ARM-based subtopics
r3993: ARM create new VM wizard: add some dummy topics
r4014: ER 34784410 DOCUMENT THE VIRTUAL MACHINE TASKBAR ICONS: port topic and icon graphics from 7.0 tree
r4026: VBP-378: status bar icons; remove any mention of task bar; ported from 7.0
r4034: Cloning a cloud VM; add draft topic
r4035: Cloning a cloud VM;typo
r4036: Cloning a cloud VM;add xref from intro topic
r4050: Reset operation; add instructions
r4051: Amend comment
r4052: Ditaval markup for images
r4056: Add ditaval markup for images
r4057: Add ditaval markup for images
r4058: Add ditaval markup for images
r4073: UI experience level: add dummy topic
r4075: Subtype: option for VM settings General tab and Create VM wizard
r4094: Cloud VM reset; add to relnotes
r4095: Reset VM; use main Machine menu, rather than right-click menu
r4099: ARM hosts; draft revisions to cover different wizard screens
r4134: Cloud VMs: file manager menu option; add comment
r4214: Settings page, Motherboard tab: Chipset option for Arm VMs; add note
r4306: Terminology checker: clear up Errors; Installation chapter
r4307: Terminology checker: clear up Errors; Config settings/GA chapters
r4308: Terminology checker: clear up Errors; Storage, networking, remote VM chapters
r4311: Terminology checker: clear up Errors: various
r4324: Prefences and settings; potential areas for change in 7.1
r4356: r160214: Monitoring cloud VM performance; add new topic
r4358: r160214: Monitoring cloud VM performance; add new topic
r4364: r160214: Monitoring cloud VM performance; redraft topic
r4374: Experience levels; update user manual topic
r4377: Experience levels; Preferences window: add note re. availability of all possible settings
r4378: Experience levels; Preferences window: add note re. availability of all possible settingsLp
r4379: Typos and add remark re. Global menu changes
r4387: Preferences, Display: some settings introduced post-7.0: font scaling and extended features
r4388: Performance monitoring: add cloud VM instances to intro para
r4389: Experience levels: selecting a level, add graphic of icon
r4391: Resource monitoring; add CLI example to show CPU usage for a cloud instance
r4395: Experience levels; apply to menu items only
r4398: Experience levels; add notes
r4401: Experience levels; remove pics of global tools menu/machine tools menu; number of menu items can vary
r4402: Experience levels; remove image files for global tools menu/machine tools menu
r4525: Experience levels: minor redraft
r4528: Typo
r4538: Experience levels: selected level applies throughout VirtualBox Manager GUI
r4543: GUI topics; add notes for required changes
r4544: VISO Creator changes
r4563: r160714: unattended guest install example; now has user-password option
r4569: Terminology: front end, not front-end
r4570: Arm wizard screens; remove, as Create VM Wizard will be very similar regardless of architecture
r4571: Arm wizard screens; remove, as Create VM Wizard will be very similar regardless of architecture
r4623: Cloud VM monitoring: Compute Instance Monitoring plugin must be enabled; add note
r4625: CPU activity icon; update, now has solid bar
r4626: GUI changes; various, from Serkan; includes new pic for soft keyboard
r4629: separate mode: add some draft topics, will need to get technical review at a later stage
r4634: GUI; various notes and updates
r4655: Typo
r4703: Arm host platform limitations; redraft and add topic to host OS section
r4724: VISO creator; add notes re. ISO import
r4725: Separate mode: edits
r4863: r161176; Python 2.x no longer supported for API
r4899: Arm host support: limitations
r4910: Create VM wizard: settings may vary x86 vs. Arm hosts
r4911: Guest OS support; add note re. supported aarch64 OSes
r4973: r161445: Remove mention of parallel port support
r5004: Cloud VM monitoring: detailed data graphs and Activity Overview
r5038: Cloud VM monitoring: export to file
r5214: r161947: Solaris non-Global zone configuration
r5215: r161947: Solaris non-Global zone configuration; typo
r5230: Glossary: fix title for I/O APIC topic
r5341: Experience levels; can be selected from welcome screen in VirtualBox Manager; need replacement pic
r5345: Experience levels; add note on Welcome screen option
r5346: Arm host limitations; unavailable System settings
r5434: r162377: shared folders; symlinks behaviour
r5565: Cloud VM list in VirtualBox Manager; show mixed VM types; screenshot from Klaus
r5627: Obfuscate UUID data in screen shot
r5628: Delete legacy cloudvm pic; use mixed VMs example
r5654: Clean up comments in source files; redraft VM activity section
r5672: 7.1 changes; add comments
r5683: 7.1 changes; add comments for Arm topics
r5687: 7.1 changes; GUI; add comments
r5703: Oracle notices; include up to date versions in preface-* topics for User Guide
r5707: r162904: Windows install directory requirements; redraft
r5781: updated GNU version from 2 to 3 as per r163272
r5812: started removal of screenshots and updating tasks VBP-807
r5818: Further updates to creating a VM VBP-807
r5822: Restructured topics and made task based VBP-807
r5824: Removed files during restructure VBP-807
r5834: Fixed formatting of note and caution VBP-807
r5836: Updated supported host OS list VBP-825
r5837: updated USB topics for VBP-823
r5842: changes as per legal request re supported guests VBP-843
r5853: Updated versions following review. VBP-825


  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 7.8 KB
Line 
1<?xml version='1.0' encoding='UTF-8'?>
2<!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd">
3<topic xml:lang="en-us" id="diffimages">
4 <title>Differencing Images</title>
5
6 <body>
7 <p>
8 The previous section mentioned differencing images and how they
9 are used with snapshots, immutable images, and multiple disk
10 attachments. This section describes in more detail how
11 differencing images work.
12 </p>
13 <p>
14 A differencing image is a special disk image that only holds the
15 differences to another image. A differencing image by itself is
16 useless, it must always refer to another image. The differencing
17 image is then typically referred to as a
18 <i>child</i>, which holds the differences to its
19 <i>parent</i>.
20 </p>
21 <p>
22 When a differencing image is active, it receives all write
23 operations from the virtual machine instead of its parent. The
24 differencing image only contains the sectors of the virtual hard
25 disk that have changed since the differencing image was created.
26 When the machine reads a sector from such a virtual hard disk, it
27 looks into the differencing image first. If the sector is present,
28 it is returned from there. If not, <ph conkeyref="vbox-conkeyref-phrases/product-name"/> looks into the
29 parent. In other words, the parent becomes
30 <i>read-only</i>. It is never written to again, but
31 it is read from if a sector has not changed.
32 </p>
33 <p>
34 Differencing images can be chained. If another differencing image
35 is created for a virtual disk that already has a differencing
36 image, then it becomes a <i>grandchild</i> of the
37 original parent. The first differencing image then becomes
38 read-only as well, and write operations only go to the
39 second-level differencing image. When reading from the virtual
40 disk, <ph conkeyref="vbox-conkeyref-phrases/product-name"/> needs to look into the second differencing
41 image first, then into the first if the sector was not found, and
42 then into the original image.
43 </p>
44 <p>
45 There can be an unlimited number of differencing images, and each
46 image can have more than one child. As a result, the differencing
47 images can form a complex tree with parents, siblings, and
48 children, depending on how complex your machine configuration is.
49 Write operations always go to the one <i>active</i>
50 differencing image that is attached to the machine, and for read
51 operations, <ph conkeyref="vbox-conkeyref-phrases/product-name"/> may need to look up all the parents in
52 the chain until the sector in question is found. You can view such
53 a tree in the Virtual Media Manager.
54 </p>
55 <fig id="fig-diff-images">
56 <title>Differencing Images, Shown in Virtual Media Manager</title>
57 <xref href="images/virtual-disk-manager-2.png" format="png" platform="htmlhelp">
58 <image href="images/virtual-disk-manager-2.png" width="12cm" placement="break">
59 <alt>Differencing Images, Shown in Virtual Media Manager</alt>
60 </image>
61 </xref>
62 <image platform="ohc" href="images/virtual-disk-manager-2.png" width="12cm" placement="break">
63 <alt>Differencing Images, Shown in Virtual Media Manager</alt>
64 </image>
65 </fig>
66 <p> In all of these situations, from the point of view of the virtual machine, the virtual hard
67 disk behaves like any other disk. While the virtual machine is running, there is a slight
68 runtime I/O overhead because <ph conkeyref="vbox-conkeyref-phrases/product-name"/> might need
69 to look up sectors several times. This is not noticeable however since the tables with sector
70 information are always kept in memory and can be looked up quickly. </p>
71 <p>
72 Differencing images are used in the following situations:
73 </p>
74 <ul>
75 <li>
76 <p><b outputclass="bold">Snapshots.</b> When you create a
77 snapshot, as explained in the previous section, <ph conkeyref="vbox-conkeyref-phrases/product-name"/>
78 <i>freezes</i> the images attached to the
79 virtual machine and creates differencing images for each image
80 that is not in <i>write-through</i> mode. From
81 the point of view of the virtual machine, the virtual disks
82 continue to operate before, but all write operations go into
83 the differencing images. Each time you create another
84 snapshot, for each hard disk attachment, another differencing
85 image is created and attached, forming a chain or tree.
86 </p>
87 <p>
88 In the above screenshot, you see that the original disk image
89 is now attached to a snapshot, representing the state of the
90 disk when the snapshot was taken.
91 </p>
92 <p>
93 If you <i>restore</i> a snapshot, and want to go
94 back to the exact machine state that was stored in the
95 snapshot, the following happens:
96 </p>
97 <ul>
98 <li>
99 <p>
100 <ph conkeyref="vbox-conkeyref-phrases/product-name"/> copies the virtual machine settings that
101 were copied into the snapshot back to the virtual machine.
102 As a result, if you have made changes to the machine
103 configuration since taking the snapshot, they are undone.
104 </p>
105 </li>
106 <li>
107 <p>
108 If the snapshot was taken while the machine was running,
109 it contains a saved machine state, and that state is
110 restored as well. After restoring the snapshot, the
111 machine will then be in Saved state and resume execution
112 from there when it is next started. Otherwise the machine
113 will be in Powered Off state and do a full boot.
114 </p>
115 </li>
116 <li>
117 <p>
118 For each disk image attached to the machine, the
119 differencing image holding all the write operations since
120 the current snapshot was taken is thrown away, and the
121 original parent image is made active again. If you
122 restored the root snapshot, then this will be the root
123 disk image for each attachment. Otherwise, some other
124 differencing image descended from it. This effectively
125 restores the old machine state.
126 </p>
127 </li>
128 </ul>
129 <p>
130 If you later <i>delete</i> a snapshot in order
131 to free disk space, for each disk attachment, one of the
132 differencing images becomes obsolete. In this case, the
133 differencing image of the disk attachment cannot simply be
134 deleted. Instead, <ph conkeyref="vbox-conkeyref-phrases/product-name"/> needs to look at each sector
135 of the differencing image and needs to copy it back into its
136 parent. This is called "merging" images and can be a
137 potentially lengthy process, depending on how large the
138 differencing image is. It can also temporarily need a
139 considerable amount of extra disk space, before the
140 differencing image obsoleted by the merge operation is
141 deleted.
142 </p>
143 </li>
144 <li>
145 <p><b outputclass="bold">Immutable images.</b> When an
146 image is switched to immutable mode, a differencing image is
147 created as well. As with snapshots, the parent image then
148 becomes read-only, and the differencing image receives all the
149 write operations. Every time the virtual machine is started,
150 all the immutable images which are attached to it have their
151 respective differencing image thrown away, effectively
152 resetting the virtual machine's virtual disk with every
153 restart.
154 </p>
155 </li>
156 </ul>
157 </body>
158
159</topic>
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette