- Timestamp:
- Oct 21, 2009 4:59:20 PM (16 years ago)
- svn:sync-xref-src-repo-rev:
- 53764
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/idl/VirtualBox.xidl
r23936 r23946 686 686 <desc> 687 687 A machine snapshot is being deleted; this can take a long time since this 688 may require merging differencing hard disk images.688 may require merging differencing media. 689 689 </desc> 690 690 </const> … … 1943 1943 The specified machine must not be in the Saved state, have an open 1944 1944 (or a spawning) direct session associated with it, have snapshots or 1945 have hard disksattached.1945 have any medium attached. 1946 1946 </note> 1947 1947 … … 1966 1966 </result> 1967 1967 <result name="VBOX_E_INVALID_OBJECT_STATE"> 1968 Machine has snapshot or open session or hard diskattached.1968 Machine has snapshot or open session or medium attached. 1969 1969 </result> 1970 1970 … … 3829 3829 <ul> 3830 3830 <li>setting up (weight 1);</li> 3831 <li>one for each hard diskattachment that needs a differencing image (weight 1 each);</li>3831 <li>one for each medium attachment that needs a differencing image (weight 1 each);</li> 3832 3832 <li>another one to copy the VM state (if offline with saved state, weight is VM memory size in MB);</li> 3833 3833 <li>another one to save the VM state (if online, weight is VM memory size in MB);</li> … … 4647 4647 be @c 0. 4648 4648 4649 For fixed media such as hard disks, the given medium cannot be NULL. It may 4650 be NULL for removable media such as DVDs and floppies. 4649 For fixed media such as hard disks, the given medium identifier cannot 4650 be a zero UUID. It may be a zero UUID for removable media such as DVDs 4651 and floppies. 4651 4652 4652 4653 After calling this returns successfully, a new instance of … … 4654 4655 attachments (<link to="IMachine::mediumAttachments"/>). 4655 4656 4656 The specified device slot must not have a nother disk attached to it, or4657 this method will fail.4657 The specified device slot must not have a device attached to it, 4658 or this method will fail. 4658 4659 4659 4660 See <link to="IMedium"/> and <link to="IMediumAttachment"/> for more … … 4661 4662 4662 4663 <note> 4663 You cannot attach a hard diskto a running machine. Also, you cannot4664 attach a hard diskto a newly created machine until this machine's4664 You cannot attach a device to a running machine. Also, you cannot 4665 attach a device to a newly created machine until this machine's 4665 4666 settings are saved to disk using <link to="#saveSettings"/>. 4666 4667 </note> … … 4701 4702 </param> 4702 4703 <param name="id" type="uuid" mod="string" dir="in"> 4703 <desc>UUID of the medium to mount. NULLUUID means do not mount any4704 <desc>UUID of the medium to mount. Zero UUID means do not mount any 4704 4705 medium.</desc> 4705 4706 </param> … … 4717 4718 4718 4719 <note> 4719 You cannot detach the hard diskfrom a running machine.4720 You cannot detach a device from a running machine. 4720 4721 </note> 4721 4722 <note> … … 4736 4737 </result> 4737 4738 <result name="VBOX_E_NOT_SUPPORTED"> 4738 Hard diskformat does not support storage deletion.4739 Medium format does not support storage deletion. 4739 4740 </result> 4740 4741 … … 6243 6244 Starts the virtual machine execution using the current machine 6244 6245 state (that is, its current execution state, current settings and 6245 current hard disks).6246 current storage devices). 6246 6247 6247 6248 If the machine is powered off or aborted, the execution will … … 6455 6456 It's a caller's responsibility to make sure the given saved state 6456 6457 file is compatible with the settings of this virtual machine that 6457 represent its virtual hardware (memory size, harddisk configuration6458 represent its virtual hardware (memory size, storage disk configuration 6458 6459 etc.). If there is a mismatch, the behavior of the virtual machine 6459 6460 is undefined. … … 6676 6677 See <link to="ISnapshot" /> for an introduction to snapshots. 6677 6678 6678 The execution state 6679 and settings of the associated machine stored in the snapshot 6680 will be deleted. The contents of all differencing media of 6681 this snapshot will be merged with the contents of their 6682 dependent child media to keep the disks valid (in other 6683 words, all changes represented by media being discarded 6684 will be propagated to their child medium). After that, this 6685 snapshot's differencing medium will be deleted. The parent 6686 of this snapshot will become a new parent for all its child 6687 snapshots. 6679 The execution state and settings of the associated machine stored in 6680 the snapshot will be deleted. The contents of all differencing media of 6681 this snapshot will be merged with the contents of their dependent child 6682 media to keep the medium chain valid (in other words, all changes 6683 represented by media being discarded will be propagated to their child 6684 medium). After that, this snapshot's differencing medium will be 6685 deleted. The parent of this snapshot will become a new parent for all 6686 its child snapshots. 6688 6687 6689 6688 If the discarded snapshot is the current one, its parent … … 6716 6715 to other machines. Such snapshots can be only discarded after 6717 6716 you discard all snapshots of other machines containing "foreign" 6718 child disks, or detach these "foreign" child disksfrom machines6717 child media, or detach these "foreign" child media from machines 6719 6718 they are attached to. 6720 6719 … … 6745 6744 <note> 6746 6745 Merging medium contents can be very time and disk space 6747 consuming, if these disksare big in size and have many6746 consuming, if these media are big in size and have many 6748 6747 children. However, if the snapshot being discarded is the last 6749 6748 (head) snapshot on the branch, the operation will be rather … … 8172 8171 8173 8172 Neither the current machine state nor other snapshots are affected 8174 by this operation, except that parent disk imageswill be modified8173 by this operation, except that parent media will be modified 8175 8174 to contain the disk data associated with the snapshot being deleted. 8176 8175 </li> … … 8412 8411 and device number. Fixed media (hard disks) will always also specify 8413 8412 an instance of IMedium in <link to="#medium" />, referring to the hard disk 8414 image or images that represent the virtual hard disk. For removeable media, 8415 the IMedia instance is optional; it can be NULL if no media is mounted (see 8416 <link to="IMachine::mountMedium" />). 8413 medium. For removeable media, the IMedia instance is optional; it can be 8414 @c null if no media is mounted (see <link to="IMachine::mountMedium" />). 8417 8415 </desc> 8418 8416 8419 8417 <attribute name="medium" type="IMedium" readonly="yes"> 8420 8418 <desc>Medium object associated with this attachment; it 8421 can be NULLfor removable devices.</desc>8419 can be @c null for removable devices.</desc> 8422 8420 </attribute> 8423 8421 … … 8554 8552 check media accessibility right away or not. 8555 8553 8556 <h3> Hard disktypes</h3>8557 8558 There are three types of hard disk images(see <link to="MediumType" />):8554 <h3>Medium types</h3> 8555 8556 There are three types of medium behavior (see <link to="MediumType" />): 8559 8557 "normal", "immutable" and "writethrough", represented by the 8560 <link to="#type"/> attribute. The type of the hard diskdefines how the8561 hard diskis attached to a virtual machine and what happens when a8558 <link to="#type"/> attribute. The type of the medium defines how the 8559 medium is attached to a virtual machine and what happens when a 8562 8560 <link to="ISnapshot">snapshot</link> of the virtual machine with the 8563 attached hard disk is taken. 8564 8565 All hard disks can be also divided in two groups: <i>base</i> hard 8566 disks and <i>differencing</i> hard disks. A base hard disk contains all 8567 sectors of the hard disk data in its own storage and therefore can be 8568 used independently. On the contrary, a differencing hard disk is a 8569 "delta" to some other disk and contains only those sectors which differ 8570 from that other disk, which is then called a <i>parent</i>. The differencing 8571 hard disk is said to be <i>linked to</i> that parent. 8572 The parent may be itself a differencing image, thus forming a chain of 8573 linked hard disks. The last element in that chain 8574 must always be a base medium. Note that several differencing 8575 hard disks may be linked to the same parent hard disk. 8576 8577 Differencing hard disks can be distinguished from base hard disks by 8578 querying the <link to="#parent"/> attribute: base hard disks do not have 8579 parents they would depend on, so the value of this attribute is always 8580 @c null for them. Using this attribute, it is possible to walk up 8581 the hard disk tree (from the child hard disk to its parent). It is also 8582 possible to walk down the tree using the <link to="#children"/> 8583 attribute. 8584 8585 Note that the type of all differencing hard disks is 8586 <link to="MediumType_Normal" />; all other values are 8587 meaningless for them. Base hard disks may be of any type. 8561 attached medium is taken. At the moment DVD and floppy media are always 8562 of type "writethrough". 8563 8564 All media can be also divided in two groups: <i>base</i> media and 8565 <i>differencing</i> media. A base medium contains all sectors of the 8566 medium data in its own storage and therefore can be used independently. 8567 In contrast, a differencing mediun is a "delta" to some other medium and 8568 contains only those sectors which differ from that other medium, which is 8569 then called a <i>parent</i>. The differencing medium is said to be 8570 <i>linked to</i> that parent. The parent may be itself a differencing 8571 medium, thus forming a chain of linked media. The last element in that 8572 chain must always be a base medium. Note that several differencing 8573 media may be linked to the same parent medium. 8574 8575 Differencing media can be distinguished from base media by querying the 8576 <link to="#parent"/> attribute: base media do not have parents they would 8577 depend on, so the value of this attribute is always @c null for them. 8578 Using this attribute, it is possible to walk up the medium tree (from the 8579 child medium to its parent). It is also possible to walk down the tree 8580 using the <link to="#children"/> attribute. 8581 8582 Note that the type of all differencing media is 8583 <link to="MediumType_Normal" />; all other values are meaningless for 8584 them. Base media may be of any type. 8588 8585 8589 8586 <h3>Creating hard disks</h3> … … 8916 8913 Storage format of this medium. 8917 8914 8918 The value of this attribute is a string that specifies a backend used to8919 store hard diskdata. The storage format is defined when you create a8920 new hard disk or automatically detected when you open an existing hard8921 disk medium,and cannot be changed later.8915 The value of this attribute is a string that specifies a backend used 8916 to store medium data. The storage format is defined when you create a 8917 new medium or automatically detected when you open an existing medium, 8918 and cannot be changed later. 8922 8919 8923 8920 The list of all storage formats supported by this VirtualBox … … 8929 8926 <attribute name="type" type="MediumType"> 8930 8927 <desc> 8931 Type (role) of this hard disk.8928 Type (role) of this medium. 8932 8929 8933 8930 The following constraints apply when changing the value of this 8934 8931 attribute: 8935 8932 <ul> 8936 <li>If a hard diskis attached to a virtual machine (either in the8933 <li>If a medium is attached to a virtual machine (either in the 8937 8934 current state or in one of the snapshots), its type cannot be 8938 8935 changed. 8939 8936 </li> 8940 <li>As long as the hard diskhas children, its type cannot be set8937 <li>As long as the medium has children, its type cannot be set 8941 8938 to <link to="MediumType_Writethrough"/>. 8942 8939 </li> 8943 <li>The type of all differencing hard disksis8940 <li>The type of all differencing media is 8944 8941 <link to="MediumType_Normal"/> and cannot be changed. 8945 8942 </li> 8946 8943 </ul> 8947 8944 8948 The type of a newly created or opened hard disk is set to 8949 <link to="MediumType_Normal"/>. 8945 The type of a newly created or opened medium is set to 8946 <link to="MediumType_Normal"/>, except for DVD and floppy media, 8947 which have a type of <link to="MediumType_Writethrough"/>. 8950 8948 </desc> 8951 8949 </attribute> … … 8953 8951 <attribute name="parent" type="IMedium" readonly="yes"> 8954 8952 <desc> 8955 Parent of this hard disk (a hard disk this hard diskis directly based8953 Parent of this medium (the medium this medium is directly based 8956 8954 on). 8957 8955 8958 Only differencing hard diskshave parents. For base (non-differencing)8959 hard disks, @c null is returned.8956 Only differencing media have parents. For base (non-differencing) 8957 media, @c null is returned. 8960 8958 </desc> 8961 8959 </attribute> … … 8963 8961 <attribute name="children" type="IMedium" safearray="yes" readonly="yes"> 8964 8962 <desc> 8965 Children of this hard disk (all differencing hard disksdirectly based8966 on this hard disk). A @c null array is returned if this hard disk8963 Children of this medium (all differencing media directly based 8964 on this medium). A @c null array is returned if this medium 8967 8965 does not have any children. 8968 8966 </desc> … … 8973 8971 Base medium of this medium. 8974 8972 8975 If this is a differencing medium, its base hard diskis the medium8976 the given hard disk branch starts from. For all other types of hard8977 disks, this property returns the hard disk object itself (i.e. the same8978 object thisproperty is read on).8973 If this is a differencing medium, its base medium is the medium 8974 the given medium branch starts from. For all other types of media, this 8975 property returns the medium object itself (i.e. the same object this 8976 property is read on). 8979 8977 </desc> 8980 8978 </attribute> … … 8982 8980 <attribute name="readOnly" type="boolean" readonly="yes"> 8983 8981 <desc> 8984 Returns @c true if this hard diskis read-only and @c false otherwise.8985 8986 A hard diskis considered to be read-only when its contents cannot be8982 Returns @c true if this medium is read-only and @c false otherwise. 8983 8984 A medium is considered to be read-only when its contents cannot be 8987 8985 modified without breaking the integrity of other parties that depend on 8988 this hard disk such as its child hard disks or snapshots of virtual8989 machines where this hard disk is attached to these machines. If there8990 are no children and no such snapshots then there is no dependency and8991 the hard diskis not read-only.8986 this medium such as its child media or snapshots of virtual machines 8987 where this medium is attached to these machines. If there are no 8988 children and no such snapshots then there is no dependency and the 8989 medium is not read-only. 8992 8990 8993 8991 The value of this attribute can be used to determine the kind of the 8994 attachment that will take place when attaching this hard diskto a8995 virtual machine. If the value is @c false then the hard diskwill8996 be attached directly. If the value is @c true then the hard disk8997 will be attached indirectly by creating a new differencing child hard8998 diskfor that. See the interface description for more information.8999 9000 Note that all <link to="MediumType_Immutable">Immutable</link> hard9001 disksare always read-only while all9002 <link to="MediumType_Writethrough">Writethrough</link> hard disksare8992 attachment that will take place when attaching this medium to a 8993 virtual machine. If the value is @c false then the medium will 8994 be attached directly. If the value is @c true then the medium 8995 will be attached indirectly by creating a new differencing child 8996 medium for that. See the interface description for more information. 8997 8998 Note that all <link to="MediumType_Immutable">Immutable</link> media 8999 are always read-only while all 9000 <link to="MediumType_Writethrough">Writethrough</link> media are 9003 9001 always not. 9004 9002 9005 9003 <note> 9006 9004 The read-only condition represented by this attribute is related to 9007 the hard disktype and usage, not to the current9005 the medium type and usage, not to the current 9008 9006 <link to="IMedium::state">medium state</link> and not to the read-only 9009 9007 state of the storage unit. … … 9014 9012 <attribute name="logicalSize" type="unsigned long long" readonly="yes"> 9015 9013 <desc> 9016 Logical size of this hard disk(in megabytes), as reported to the9017 guest OS running inside the virtual machine this diskis9018 attached to. The logical size is defined when the hard diskis created9014 Logical size of this medium (in megabytes), as reported to the 9015 guest OS running inside the virtual machine this medium is 9016 attached to. The logical size is defined when the medium is created 9019 9017 and cannot be changed later. 9020 9018 9021 9019 <note> 9022 Reading this property on a differencing hard diskwill return the size9020 Reading this property on a differencing medium will return the size 9023 9021 of its <link to="#base"/> medium. 9024 9022 </note> 9025 9023 <note> 9026 For hard diskswhose state is <link to="#state"/> is <link9024 For media whose state is <link to="#state"/> is <link 9027 9025 to="MediumState_Inaccessible"/>, the value of this property is the 9028 last known logical size. For <link to="MediumaState_NotCreated"/> hard9029 disks, the returned value is zero.9026 last known logical size. For <link to="MediumaState_NotCreated"/> 9027 media, the returned value is zero. 9030 9028 </note> 9031 9029 </desc> … … 9034 9032 <attribute name="autoReset" type="boolean"> 9035 9033 <desc> 9036 Whether this differencing hard diskwill be automatically reset each9034 Whether this differencing medium will be automatically reset each 9037 9035 time a virtual machine it is attached to is powered up. 9038 9036 9039 9037 See <link to="#reset()"/> for more information about resetting 9040 differencing hard disks.9038 differencing media. 9041 9039 9042 9040 <note> 9043 Reading this property on a base (non-differencing) hard diskwill9041 Reading this property on a base (non-differencing) medium will 9044 9042 always @c false. Changing the value of this property in this 9045 9043 case is not supported. … … 9047 9045 9048 9046 <result name="VBOX_E_NOT_SUPPORTED"> 9049 This is not a differencing hard disk(when changing the attribute9047 This is not a differencing medium (when changing the attribute 9050 9048 value). 9051 9049 </result> … … 9292 9290 <method name="getProperty"> 9293 9291 <desc> 9294 Returns the value of the custom hard diskproperty with the given name.9295 9296 The list of all properties supported by the given hard diskformat can9292 Returns the value of the custom medium property with the given name. 9293 9294 The list of all properties supported by the given medium format can 9297 9295 be obtained with <link to="IMediumFormat::describeProperties"/>. 9298 9296 … … 9315 9313 <method name="setProperty"> 9316 9314 <desc> 9317 Sets the value of the custom hard diskproperty with the given name.9318 9319 The list of all properties supported by the given hard diskformat can9315 Sets the value of the custom medium property with the given name. 9316 9317 The list of all properties supported by the given medium format can 9320 9318 be obtained with <link to="IMediumFormat::describeProperties"/>. 9321 9319 … … 9348 9346 existing properties. 9349 9347 9350 The list of all properties supported by the given hard diskformat can9348 The list of all properties supported by the given medium format can 9351 9349 be obtained with <link to="IMediumFormat::describeProperties"/>. 9352 9350 … … 9393 9391 IPC calls. 9394 9392 9395 The list of all properties supported by the given hard diskformat can9393 The list of all properties supported by the given medium format can 9396 9394 be obtained with <link to="IMediumFormat::describeProperties"/>. 9397 9395 … … 9418 9416 <link to="#deleteStorage"/>, otherwise the operation will fail. 9419 9417 9420 Before the operation starts, the hard diskis placed in9418 Before the operation starts, the medium is placed in 9421 9419 <link to="MediumState_Creating"/> state. If the create operation 9422 9420 fails, the medium will be placed back in <link to="MediumState_NotCreated"/> … … 9425 9423 After the returned progress object reports that the operation has 9426 9424 successfully completed, the medium state will be set to <link 9427 to="MediumState_Created"/>, the hard diskwill be remembered by this9425 to="MediumState_Created"/>, the medium will be remembered by this 9428 9426 VirtualBox installation and may be attached to virtual machines. 9429 9427 … … 9434 9432 </desc> 9435 9433 <param name="logicalSize" type="unsigned long long" dir="in"> 9436 <desc>Maximum logical size of the hard diskin megabytes.</desc>9434 <desc>Maximum logical size of the medium in megabytes.</desc> 9437 9435 </param> 9438 9436 <param name="variant" type="MediumVariant" dir="in"> … … 9446 9444 <method name="deleteStorage"> 9447 9445 <desc> 9448 Starts deleting the storage unit of this hard disk.9449 9450 The hard diskmust not be attached to any known virtual machine and must9451 not have any known child hard disks, otherwise the operation will fail.9446 Starts deleting the storage unit of this medium. 9447 9448 The medium must not be attached to any known virtual machine and must 9449 not have any known child media, otherwise the operation will fail. 9452 9450 It will also fail if there is no storage unit to delete or if deletion 9453 is already in progress, or if the hard diskis being in use (locked for9451 is already in progress, or if the medium is being in use (locked for 9454 9452 read or for write) or inaccessible. Therefore, the only valid state for 9455 9453 this operation to succeed is <link to="MediumState_Created"/>. 9456 9454 9457 Before the operation starts, the hard disk is placed to9455 Before the operation starts, the medium is placed in 9458 9456 <link to="MediumState_Deleting"/> state and gets removed from the list 9459 9457 of remembered hard disks (media registry). If the delete operation … … 9469 9467 9470 9468 <result name="VBOX_E_OBJECT_IN_USE"> 9471 Hard diskis attached to a virtual machine.9469 Medium is attached to a virtual machine. 9472 9470 </result> 9473 9471 <result name="VBOX_E_NOT_SUPPORTED"> … … 9492 9490 <method name="createDiffStorage"> 9493 9491 <desc> 9494 Starts creating an empty differencing storage unit based on this hard9495 diskin the format and at the location defined by the @a target9492 Starts creating an empty differencing storage unit based on this 9493 medium in the format and at the location defined by the @a target 9496 9494 argument. 9497 9495 9498 The target hard diskmust be in <link to="MediumState_NotCreated"/>9496 The target medium must be in <link to="MediumState_NotCreated"/> 9499 9497 state (i.e. must not have an existing storage unit). Upon successful 9500 completion, this operation will set the type of the target hard diskto9498 completion, this operation will set the type of the target medium to 9501 9499 <link to="MediumType_Normal"/> and create a storage unit necessary to 9502 represent the differencing hard diskdata in the given format (according9500 represent the differencing medium data in the given format (according 9503 9501 to the storage format of the target object). 9504 9502 9505 9503 After the returned progress object reports that the operation is 9506 successfully complete, the target hard diskgets remembered by this9504 successfully complete, the target medium gets remembered by this 9507 9505 VirtualBox installation and may be attached to virtual machines. 9508 9506 9509 9507 <note> 9510 The hard diskwill be set to <link to="MediumState_LockedRead"/>9508 The medium will be set to <link to="MediumState_LockedRead"/> 9511 9509 state for the duration of this operation. 9512 9510 </note> 9513 9511 <result name="VBOX_E_OBJECT_IN_USE"> 9514 Hard disknot in @c NotCreated state.9512 Medium not in @c NotCreated state. 9515 9513 </result> 9516 9514 </desc> 9517 9515 <param name="target" type="IMedium" dir="in"> 9518 <desc>Target hard disk.</desc>9516 <desc>Target medium.</desc> 9519 9517 </param> 9520 9518 <param name="variant" type="MediumVariant" dir="in"> … … 9528 9526 <method name="mergeTo"> 9529 9527 <desc> 9530 Starts merging the contents of this hard diskand all intermediate9531 differencing hard disks in the chain to the given target hard disk.9532 9533 The target hard disk must be either a descendant of this hard diskor9528 Starts merging the contents of this medium and all intermediate 9529 differencing media in the chain to the given target medium. 9530 9531 The target medium must be either a descendant of this medium or 9534 9532 its ancestor (otherwise this method will immediately return a failure). 9535 9533 It follows that there are two logical directions of the merge operation: 9536 9534 from ancestor to descendant (<i>forward merge</i>) and from descendant to 9537 ancestor (<i>backward merge</i>). Let us consider the following hard disk9535 ancestor (<i>backward merge</i>). Let us consider the following medium 9538 9536 chain: 9539 9537 9540 9538 <pre>Base <- Diff_1 <- Diff_2</pre> 9541 9539 9542 Here, calling this method on the <tt>Base</tt> hard diskobject with9540 Here, calling this method on the <tt>Base</tt> medium object with 9543 9541 <tt>Diff_2</tt> as an argument will be a forward merge; calling it on 9544 9542 <tt>Diff_2</tt> with <tt>Base</tt> as an argument will be a backward 9545 merge. Note that in both cases the contents of the resulting hard disk9546 will be the same, the only difference is the hard diskobject that takes9543 merge. Note that in both cases the contents of the resulting medium 9544 will be the same, the only difference is the medium object that takes 9547 9545 the result of the merge operation. In case of the forward merge in the 9548 9546 above example, the result will be written to <tt>Diff_2</tt>; in case of 9549 9547 the backward merge, the result will be written to <tt>Base</tt>. In 9550 9548 other words, the result of the operation is always stored in the target 9551 hard disk.9552 9553 Upon successful operation completion, the storage units of all hard9554 disks in the chain between this (source) hard disk and the target hard9555 disk, including the source hard disk itself, will be automatically9556 deleted and the relevant hard disk objects (including this hard disk)9557 will becomeuninitialized. This means that any attempt to call any of9549 medium. 9550 9551 Upon successful operation completion, the storage units of all media in 9552 the chain between this (source) medium and the target medium, including 9553 the source medium itself, will be automatically deleted and the 9554 relevant medium objects (including this medium) will become 9555 uninitialized. This means that any attempt to call any of 9558 9556 their methods or attributes will fail with the 9559 9557 <tt>"Object not ready" (E_ACCESSDENIED)</tt> error. Applied to the above 9560 9558 example, the forward merge of <tt>Base</tt> to <tt>Diff_2</tt> will 9561 delete and uninitialize both <tt>Base</tt> and <tt>Diff_1</tt> hard9562 disks. Note that <tt>Diff_2</tt> in this case will become a base hard9563 disk itself since it will no longer be based on any other hard disk.9559 delete and uninitialize both <tt>Base</tt> and <tt>Diff_1</tt> media. 9560 Note that <tt>Diff_2</tt> in this case will become a base medium 9561 itself since it will no longer be based on any other medium. 9564 9562 9565 9563 Considering the above, all of the following conditions must be met in … … 9567 9565 <ul> 9568 9566 <li> 9569 Neither this (source) hard disknor any intermediate9570 differencing hard diskin the chain between it and the target9571 hard diskis attached to any virtual machine.9567 Neither this (source) medium nor any intermediate 9568 differencing medium in the chain between it and the target 9569 medium is attached to any virtual machine. 9572 9570 </li> 9573 9571 <li> 9574 Neither the source hard disk nor the target hard diskis an9575 <link to="MediumType_Immutable"/> hard disk.9572 Neither the source medium nor the target medium is an 9573 <link to="MediumType_Immutable"/> medium. 9576 9574 </li> 9577 9575 <li> 9578 The part of the hard disk tree from the source hard diskto the9579 target hard disk is a linear chain, i.e. all hard disksin this9580 chain have exactly one child which is the next hard diskin this9581 chain. The only exception from this rule is the target hard diskin9576 The part of the medium tree from the source medium to the 9577 target medium is a linear chain, i.e. all medium in this 9578 chain have exactly one child which is the next medium in this 9579 chain. The only exception from this rule is the target medium in 9582 9580 the forward merge operation; it is allowed to have any number of 9583 child hard disks because the merge operation will hot change its9581 child media because the merge operation will not change its 9584 9582 logical contents (as it is seen by the guest OS or by children). 9585 9583 </li> 9586 9584 <li> 9587 None of the involved hard disksare in9585 None of the involved media are in 9588 9586 <link to="MediumState_LockedRead"/> or 9589 9587 <link to="MediumState_LockedWrite"/> state. … … 9592 9590 9593 9591 <note> 9594 This (source) hard diskand all intermediates will be placed to <link9595 to="MediumState_Deleting"/> state and the target hard diskwill be9592 This (source) medium and all intermediates will be placed to <link 9593 to="MediumState_Deleting"/> state and the target medium will be 9596 9594 placed to <link to="MediumState_LockedWrite"/> state and for the 9597 9595 duration of this operation. … … 9599 9597 </desc> 9600 9598 <param name="targetId" type="uuid" mod="string" dir="in"> 9601 <desc>UUID of the target ancestor or descendant hard disk.</desc>9599 <desc>UUID of the target ancestor or descendant medium.</desc> 9602 9600 </param> 9603 9601 <param name="progress" type="IProgress" dir="return"> … … 9610 9608 <method name="cloneTo"> 9611 9609 <desc> 9612 Starts creating a clone of this hard diskin the format and at the9610 Starts creating a clone of this medium in the format and at the 9613 9611 location defined by the @a target argument. 9614 9612 9615 The target hard diskmust be either in <link to="MediumState_NotCreated"/>9613 The target medium must be either in <link to="MediumState_NotCreated"/> 9616 9614 state (i.e. must not have an existing storage unit) or in 9617 9615 <link to="MediumState_Created"/> state (i.e. created and not locked, and 9618 9616 big enough to hold the data or else the copy will be partial). Upon 9619 successful completion, the cloned hard diskwill contain exactly the9620 same sector data as the hard diskbeing cloned, except that in the9617 successful completion, the cloned medium will contain exactly the 9618 same sector data as the medium being cloned, except that in the 9621 9619 first case a new UUID for the clone will be randomly generated, and in 9622 9620 the second case the UUID will remain unchanged. 9623 9621 9624 The @a parent argument defines which hard diskwill be the parent9622 The @a parent argument defines which medium will be the parent 9625 9623 of the clone. Passing a @c null reference indicates that the clone will 9626 9624 be a base image, i.e. completely independent. It is possible to specify 9627 an arbitrary hard diskfor this parameter, including the parent of the9628 hard diskwhich is being cloned. Even cloning to a child of the source9629 hard diskis possible. Note that when cloning to an existing image, the9625 an arbitrary medium for this parameter, including the parent of the 9626 medium which is being cloned. Even cloning to a child of the source 9627 medium is possible. Note that when cloning to an existing image, the 9630 9628 @a parent irgument is ignored. 9631 9629 9632 9630 After the returned progress object reports that the operation is 9633 successfully complete, the target hard diskgets remembered by this9631 successfully complete, the target medium gets remembered by this 9634 9632 VirtualBox installation and may be attached to virtual machines. 9635 9633 9636 9634 <note> 9637 This hard diskwill be placed to <link to="MediumState_LockedRead"/>9635 This medium will be placed to <link to="MediumState_LockedRead"/> 9638 9636 state for the duration of this operation. 9639 9637 </note> … … 9643 9641 </desc> 9644 9642 <param name="target" type="IMedium" dir="in"> 9645 <desc>Target hard disk.</desc>9643 <desc>Target medium.</desc> 9646 9644 </param> 9647 9645 <param name="variant" type="MediumVariant" dir="in"> … … 9649 9647 </param> 9650 9648 <param name="parent" type="IMedium" dir="in"> 9651 <desc>Parent of the cloned hard disk.</desc>9649 <desc>Parent of the cloned medium.</desc> 9652 9650 </param> 9653 9651 <param name="progress" type="IProgress" dir="return"> … … 9660 9658 <method name="compact"> 9661 9659 <desc> 9662 Starts compacting of this hard disk. This means that the diskis9660 Starts compacting of this medium. This means that the medium is 9663 9661 transformed into a possibly more compact storage representation. 9664 9662 This potentially creates temporary images, which can require a 9665 9663 substantial amount of additional disk space. 9666 9664 9667 This hard diskwill be placed to <link to="MediumState_LockedWrite"/>9668 state and all its parent hard disks(if any) will be placed to9665 This medium will be placed to <link to="MediumState_LockedWrite"/> 9666 state and all its parent media (if any) will be placed to 9669 9667 <link to="MediumState_LockedRead"/> state for the duration of this 9670 9668 operation. … … 9675 9673 9676 9674 <result name="VBOX_E_NOT_SUPPORTED"> 9677 Hard diskformat does not support compacting (but potentially9675 Medium format does not support compacting (but potentially 9678 9676 needs it). 9679 9677 </result> … … 9686 9684 <method name="reset"> 9687 9685 <desc> 9688 Starts erasing the contents of this differencing hard disk.9689 9690 This operation will reset the differencing hard diskto its initial9686 Starts erasing the contents of this differencing medium. 9687 9688 This operation will reset the differencing medium to its initial 9691 9689 state when it does not contain any sector data and any read operation is 9692 redirected to its parent hard disk.9693 9694 This hard diskwill be placed to <link to="MediumState_LockedWrite"/>9690 redirected to its parent medium. 9691 9692 This medium will be placed to <link to="MediumState_LockedWrite"/> 9695 9693 for the duration of this operation. 9696 9694 9697 9695 <result name="VBOX_E_NOT_SUPPORTED"> 9698 This is not a differencing hard disk.9696 This is not a differencing medium. 9699 9697 </result> 9700 9698 <result name="VBOX_E_INVALID_OBJECT_STATE"> 9701 Hard diskis not in <link to="MediumState_Created"/> or9699 Medium is not in <link to="MediumState_Created"/> or 9702 9700 <link to="MediumState_Inaccessible"/> state. 9703 9701 </result> … … 9741 9739 > 9742 9740 <desc> 9743 Hard diskformat capability flags.9741 Medium format capability flags. 9744 9742 </desc> 9745 9743 … … 12616 12614 <desc> 12617 12615 Represents a storage controller that is attached to a virtual machine 12618 (<link to="IMachine" />). Just as d isks (hard disks, DVDs, FDs) are12619 attached to storage controllers in a real computer, virtual media12620 (represented by <link to="IMedium " />) are attached to virtual12616 (<link to="IMachine" />). Just as drives (hard disks, DVDs, FDs) are 12617 attached to storage controllers in a real computer, virtual drives 12618 (represented by <link to="IMediumAttachment" />) are attached to virtual 12621 12619 storage controllers, represented by this interface. 12622 12620
Note:
See TracChangeset
for help on using the changeset viewer.