Changeset 103553 in vbox
- Timestamp:
- Feb 23, 2024 5:09:45 PM (9 months ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/manual/en_US/SDKRef.xml
r103052 r103553 2577 2577 <computeroutput>reloadExts</computeroutput> command if the shell is 2578 2578 already running. Your new command will now be available.</para> 2579 </chapter> 2580 2581 <chapter id="vboxarm"> 2582 <title>Main API changes to support the ARM64 architecture</title> 2583 2584 <para>VirtualBox 7.1 introduces support for running virtual machines on 2585 hosts containing an ARM CPU. Since VirtualBox has been designed and 2586 developed for virtualizing x86 hardware since its inception adding 2587 support for ARM CPUs required a variety of changes to the Main API to 2588 accommodate two different CPU architectures.</para> 2589 2590 <sect1> 2591 <title>Overview of the Changes to the Main API</title> 2592 2593 <para>In order to support two different types of processor architecture 2594 in the VirtualBox Main API the key abstraction was the addition of a new 2595 interface named <link linkend="IPlatform">IPlatform</link> which contains 2596 the details which relate to the operating environment of a VM. The 2597 <link linkend="IPlatform">IPlatform</link> interface is distinct from the 2598 VM itself (the <link linkend="IMachine">IMachine</link> interface), the VM 2599 management interfaces (<link linkend="IVirtualBox">IVirtualBox</link> and 2600 <link linkend="IConsole">IConsole</link>), as well as the global properties of 2601 the VM (the <link linkend="ISystemProperties">ISystemProperties</link> interface). 2602 The contents of the <link linkend="IPlatform">IPlatform</link> interface can be 2603 broken down into three different categories:</para> 2604 <itemizedlist> 2605 <listitem> 2606 <para>properties relating to the VM which are CPU architecture-neutral (<link linkend="IPlatformProperties">IPlatformProperties</link>)</para> 2607 </listitem> 2608 <listitem> 2609 <para>properties which are CPU architecture-specific (<link linkend="IPlatformX86">IPlatformX86</link> or <link linkend="IPlatformARM">IPlatformARM</link>)</para> 2610 </listitem> 2611 <listitem> 2612 <para>attributes of the VM which are CPU architecture-neutral such as:</para> 2613 <itemizedlist> 2614 <listitem><para>the architecture of the VM (<link linkend="IPlatform__architecture">IPlatform::architecture</link>)</para> 2615 </listitem> 2616 <listitem><para>the type of chipset used by the VM (<link linkend="IPlatform__chipsetType">IPlatform::chipsetType</link>)</para> 2617 </listitem> 2618 <listitem><para>the type of IOMMU used by the VM (<link linkend="IPlatform__iommuType">IPlatform::iommuType</link>).</para> 2619 </listitem> 2620 </itemizedlist> 2621 </listitem> 2622 </itemizedlist> 2623 2624 <para>The <link linkend="IPlatform">IPlatform</link> interface can be retrieved from 2625 the <link linkend="IMachine">IMachine</link> interface via the new 2626 <link linkend="IMachine__platform">IMachine::platform</link> attribute. The 2627 <link linkend="IPlatform__architecture">IPlatform::architecture</link> attribute 2628 returns the <emphasis>architecture</emphasis> type in a new enumeration named 2629 <link linkend="PlatformArchitecture">PlatformArchitecture</link>. This enumeration value 2630 can be used to determine which CPU-specific properties to query, for example: 2631 <screen> 2632 IPlatform platform; 2633 result = machine.getPlatform(platform); 2634 2635 PlatformArchitecture_T platformArch; 2636 result = platform.getArchitecture(platformArch); 2637 if (platformArch == x86) 2638 IPlatformX86 platformX86; 2639 result = platform.getX86(platformX86); 2640 else if (platformArch == ARM) 2641 IPlatformARM platformARM; 2642 result = platform.getARM(platformARM); 2643 else 2644 error; 2645 </screen> 2646 2647 The value of the <link linkend="PlatformArchitecture">PlatformArchitecture</link> enumeration 2648 can also be used when creating a new VM using <link linkend="IVirtualBox__createMachine">IVirtualBox::createMachine</link>. 2649 </para> 2650 2651 <para>The CPU architecture-neutral properties in (<link linkend="IPlatformProperties">IPlatformProperties</link>) 2652 can be found in several places:</para> 2653 <itemizedlist> 2654 <listitem> 2655 <para>They can be retrieved from the <link linkend="IPlatform__properties">IPlatform::properties</link> 2656 attribute.</para> 2657 </listitem> 2658 <listitem> 2659 <para>They can be retrieved from the <link linkend="ISystemProperties__platform">ISystemProperties::platform</link> 2660 attribute.</para> 2661 </listitem> 2662 <listitem> 2663 <para>They can retrieved from the <link linkend="IVirtualBox">IVirtualBox</link> interface 2664 using the new <link linkend="IVirtualBox__getPlatformProperties">IVirtualBox::getPlatformProperties</link> method. 2665 </para> 2666 </listitem> 2667 </itemizedlist> 2668 2669 <para>The attributes and methods contained in <link linkend="IPlatformProperties">IPlatformProperties</link> 2670 were moved from the <link linkend="ISystemProperties">ISystemProperties</link> interface as they 2671 can vary based on the platform of the VM:</para> 2672 2673 <table> 2674 <title>IPlatformProperties Attributes</title> 2675 <tgroup cols="2" style="verywide"> 2676 <tbody> 2677 <row> 2678 <entry><emphasis role="bold">Original Attribute</emphasis></entry> 2679 <entry><emphasis role="bold">New Attribute</emphasis></entry> 2680 </row> 2681 2682 <row> 2683 <entry>ISystemProperties::rawModeSupported</entry> 2684 <entry><link linkend="IPlatformProperties__rawModeSupported">IPlatformProperties::rawModeSupported</link></entry> 2685 </row> 2686 2687 <row> 2688 <entry>ISystemProperties::exclusiveHwVirt</entry> 2689 <entry><link linkend="IPlatformProperties__exclusiveHwVirt">IPlatformProperties::exclusiveHwVirt</link></entry> 2690 </row> 2691 2692 <row> 2693 <entry>ISystemProperties::serialPortCount</entry> 2694 <entry><link linkend="IPlatformProperties__serialPortCount">IPlatformProperties::serialPortCount</link></entry> 2695 </row> 2696 2697 <row> 2698 <entry>ISystemProperties::parallelPortCount</entry> 2699 <entry><link linkend="IPlatformProperties__parallelPortCount">IPlatformProperties::parallelPortCount</link></entry> 2700 </row> 2701 2702 <row> 2703 <entry>ISystemProperties::maxBootPosition</entry> 2704 <entry><link linkend="IPlatformProperties__maxBootPosition">IPlatformProperties::maxBootPosition</link></entry> 2705 </row> 2706 2707 <row> 2708 <entry>ISystemProperties::supportedParavirtProviders[]</entry> 2709 <entry><link linkend="IPlatformProperties__supportedParavirtProviders">IPlatformProperties::supportedParavirtProviders[]</link></entry> 2710 </row> 2711 2712 <row> 2713 <entry>ISystemProperties::supportedFirmwareTypes[]</entry> 2714 <entry><link linkend="IPlatformProperties__supportedFirmwareTypes">IPlatformProperties::supportedFirmwareTypes[]</link></entry> 2715 </row> 2716 2717 <row> 2718 <entry>ISystemProperties::supportedGuestOSTypes[]</entry> 2719 <entry><link linkend="IPlatformProperties__supportedGuestOSTypes">IPlatformProperties::supportedGuestOSTypes[]</link></entry> 2720 </row> 2721 2722 <row> 2723 <entry>ISystemProperties::supportedGraphicsControllerTypes[]</entry> 2724 <entry><link linkend="IPlatformProperties__supportedGraphicsControllerTypes">IPlatformProperties::supportedGraphicsControllerTypes[]</link></entry> 2725 </row> 2726 2727 <row> 2728 <entry>ISystemProperties::supportedNetAdpPromiscModePols[]</entry> 2729 <entry><link linkend="IPlatformProperties__supportedNetAdpPromiscModePols">IPlatformProperties::supportedNetAdpPromiscModePols[]</link></entry> 2730 </row> 2731 2732 <row> 2733 <entry>ISystemProperties::supportedNetworkAdapterTypes[]</entry> 2734 <entry><link linkend="IPlatformProperties__supportedNetworkAdapterTypes">IPlatformProperties::supportedNetworkAdapterTypes[]</link></entry> 2735 </row> 2736 2737 <row> 2738 <entry>ISystemProperties::supportedUartTypes[]</entry> 2739 <entry><link linkend="IPlatformProperties__supportedUartTypes">IPlatformProperties::supportedUartTypes[]</link></entry> 2740 </row> 2741 2742 <row> 2743 <entry>ISystemProperties::supportedUSBControllerTypes[]</entry> 2744 <entry><link linkend="IPlatformProperties__supportedUSBControllerTypes">IPlatformProperties::supportedUSBControllerTypes[]</link></entry> 2745 </row> 2746 2747 <row> 2748 <entry>ISystemProperties::supportedAudioControllerTypes[]</entry> 2749 <entry><link linkend="IPlatformProperties__supportedAudioControllerTypes">IPlatformProperties::supportedAudioControllerTypes[]</link></entry> 2750 </row> 2751 2752 <row> 2753 <entry>ISystemProperties::supportedBootDevices[]</entry> 2754 <entry><link linkend="IPlatformProperties__supportedBootDevices">IPlatformProperties::supportedBootDevices[]</link></entry> 2755 </row> 2756 2757 <row> 2758 <entry>ISystemProperties::supportedStorageBuses[]</entry> 2759 <entry><link linkend="IPlatformProperties__supportedStorageBuses">IPlatformProperties::supportedStorageBuses[]</link></entry> 2760 </row> 2761 2762 <row> 2763 <entry>ISystemProperties::supportedStorageControllerTypes[]</entry> 2764 <entry><link linkend="IPlatformProperties__supportedStorageControllerTypes">IPlatformProperties::supportedStorageControllerTypes[]</link></entry> 2765 </row> 2766 2767 <row> 2768 <entry>ISystemProperties::supportedChipsetTypes[]</entry> 2769 <entry><link linkend="IPlatformProperties__supportedChipsetTypes">IPlatformProperties::supportedChipsetTypes[]</link></entry> 2770 </row> 2771 2772 <row> 2773 <entry>ISystemProperties::supportedIommuTypes[]</entry> 2774 <entry><link linkend="IPlatformProperties__supportedIommuTypes">IPlatformProperties::supportedIommuTypes[]</link></entry> 2775 </row> 2776 2777 <row> 2778 <entry>ISystemProperties::supportedTpmTypes[]</entry> 2779 <entry><link linkend="IPlatformProperties__supportedTpmTypes">IPlatformProperties::supportedTpmTypes[]</link></entry> 2780 </row> 2781 2782 </tbody> 2783 </tgroup> 2784 </table> 2785 2786 <table> 2787 <title>IPlatformProperties Attributes</title> 2788 <tgroup cols="2" style="verywide"> 2789 <tbody> 2790 <row> 2791 <entry><emphasis role="bold">Original Method</emphasis></entry> 2792 <entry><emphasis role="bold">New Method</emphasis></entry> 2793 </row> 2794 2795 <row> 2796 <entry>ISystemProperties::getDeviceTypesForStorageBus</entry> 2797 <entry><link linkend="IPlatformProperties__getDeviceTypesForStorageBus">IPlatformProperties::getDeviceTypesForStorageBus</link></entry> 2798 </row> 2799 2800 <row> 2801 <entry>ISystemProperties::getMaxDevicesPerPortForStorageBus</entry> 2802 <entry><link linkend="IPlatformProperties__getMaxDevicesPerPortForStorageBus">IPlatformProperties::getMaxDevicesPerPortForStorageBus</link></entry> 2803 </row> 2804 2805 <row> 2806 <entry>ISystemProperties::getMaxInstancesOfStorageBus</entry> 2807 <entry><link linkend="IPlatformProperties__getMaxInstancesOfStorageBus">IPlatformProperties::getMaxInstancesOfStorageBus</link></entry> 2808 </row> 2809 2810 <row> 2811 <entry>ISystemProperties::getMaxInstancesOfUSBControllerType</entry> 2812 <entry><link linkend="IPlatformProperties__getMaxInstancesOfUSBControllerType">IPlatformProperties::getMaxInstancesOfUSBControllerType</link></entry> 2813 </row> 2814 2815 <row> 2816 <entry>ISystemProperties::getMaxNetworkAdapters</entry> 2817 <entry><link linkend="IPlatformProperties__getMaxNetworkAdapters">IPlatformProperties::getMaxNetworkAdapters</link></entry> 2818 </row> 2819 2820 <row> 2821 <entry>ISystemProperties::getMaxNetworkAdaptersOfType</entry> 2822 <entry><link linkend="IPlatformProperties__getMaxNetworkAdaptersOfType">IPlatformProperties::getMaxNetworkAdaptersOfType</link></entry> 2823 </row> 2824 2825 <row> 2826 <entry>ISystemProperties::getMaxPortCountForStorageBus</entry> 2827 <entry><link linkend="IPlatformProperties__getMaxPortCountForStorageBus">IPlatformProperties::getMaxPortCountForStorageBus</link></entry> 2828 </row> 2829 2830 <row> 2831 <entry>ISystemProperties::getMinPortCountForStorageBus</entry> 2832 <entry><link linkend="IPlatformProperties__getMinPortCountForStorageBus">IPlatformProperties::getMinPortCountForStorageBus</link></entry> 2833 </row> 2834 2835 <row> 2836 <entry>ISystemProperties::getStorageBusForControllerType</entry> 2837 <entry><link linkend="IPlatformProperties__getStorageBusForControllerType">IPlatformProperties::getStorageBusForControllerType</link></entry> 2838 </row> 2839 2840 <row> 2841 <entry>ISystemProperties::getStorageControllerHotplugCapable</entry> 2842 <entry><link linkend="IPlatformProperties__getStorageControllerHotplugCapable">IPlatformProperties::getStorageControllerHotplugCapable</link></entry> 2843 </row> 2844 2845 <row> 2846 <entry>ISystemProperties::getStorageControllerTypesForBus</entry> 2847 <entry><link linkend="IPlatformProperties__getStorageControllerTypesForBus">IPlatformProperties::getStorageControllerTypesForBus</link></entry> 2848 </row> 2849 2850 </tbody> 2851 </tgroup> 2852 </table> 2853 2854 <para>The single attribute and all of the properties contained in the new 2855 <link linkend="IPlatformX86">IPlatformX86</link> interface were moved from the 2856 <link linkend="IMachine">IMachine</link> interface as they are specific to the x86 2857 CPU architecture:</para> 2858 2859 <table> 2860 <title>IPlatformX86 Attribute</title> 2861 <tgroup cols="2"> 2862 <tbody> 2863 <row> 2864 <entry><emphasis role="bold">Original Attribute</emphasis></entry> 2865 <entry><emphasis role="bold">New Attribute</emphasis></entry> 2866 </row> 2867 2868 <row> 2869 <entry>IMachine::HPETEnabled</entry> 2870 <entry><link linkend="IPlatformX86__HPETEnabled">IPlatformX86::HPETEnabled</link></entry> 2871 </row> 2872 </tbody> 2873 </tgroup> 2874 </table> 2875 2876 <table> 2877 <title>IPlatformX86 Methods</title> 2878 <tgroup cols="2"> 2879 <tbody> 2880 <row> 2881 <entry><emphasis role="bold">Original Method</emphasis></entry> 2882 <entry><emphasis role="bold">New Method</emphasis></entry> 2883 </row> 2884 2885 <row> 2886 <entry>IMachine::getCPUIDLeaf</entry> 2887 <entry><link linkend="IPlatformX86__getCPUIDLeaf">IPlatformX86::getCPUIDLeaf</link></entry> 2888 </row> 2889 2890 <row> 2891 <entry>IMachine::getCPUIDLeafByOrdinal</entry> 2892 <entry><link linkend="IPlatformX86__getCPUIDLeafByOrdinal">IPlatformX86::getCPUIDLeafByOrdinal</link></entry> 2893 </row> 2894 2895 <row> 2896 <entry>IMachine::getCPUProperty</entry> 2897 <entry><link linkend="IPlatformX86__getCPUProperty">IPlatformX86::getCPUProperty</link></entry> 2898 </row> 2899 2900 <row> 2901 <entry>IMachine::getHWVirtExProperty</entry> 2902 <entry><link linkend="IPlatformX86__getHWVirtExProperty">IPlatformX86::getHWVirtExProperty</link></entry> 2903 </row> 2904 2905 <row> 2906 <entry>IMachine::removeAllCPUIDLeaves</entry> 2907 <entry><link linkend="IPlatformX86__removeAllCPUIDLeaves">IPlatformX86::removeAllCPUIDLeaves</link></entry> 2908 </row> 2909 2910 <row> 2911 <entry>IMachine::removeCPUIDLeaf</entry> 2912 <entry><link linkend="IPlatformX86__removeCPUIDLeaf">IPlatformX86::removeCPUIDLeaf</link></entry> 2913 </row> 2914 2915 <row> 2916 <entry>IMachine::setCPUIDLeaf</entry> 2917 <entry><link linkend="IPlatformX86__setCPUIDLeaf">IPlatformX86::setCPUIDLeaf</link></entry> 2918 </row> 2919 2920 <row> 2921 <entry>IMachine::setCPUProperty</entry> 2922 <entry><link linkend="IPlatformX86__setCPUProperty">IPlatformX86::setCPUProperty</link></entry> 2923 </row> 2924 2925 <row> 2926 <entry>IMachine::setHWVirtExProperty</entry> 2927 <entry><link linkend="IPlatformX86__setHWVirtExProperty">IPlatformX86::setHWVirtExProperty</link></entry> 2928 </row> 2929 2930 </tbody> 2931 </tgroup> 2932 </table> 2933 2934 <para>An itemized breakdown of the changes made to the Main API for ARM64 support is described below.</para> 2935 2936 <sect2> 2937 <title>Changes to Classes (Interfaces)</title> 2938 2939 <sect3> 2940 <title>New Classes (Interfaces) Added</title> 2941 2942 <itemizedlist> 2943 <listitem> 2944 <para><link linkend="IPlatform">IPlatform</link></para> 2945 <para>An umbrella-like interface containing a collection of properties and attributes 2946 of the software environment of the VM.</para> 2947 </listitem> 2948 <listitem> 2949 <para><link linkend="IPlatformX86">IPlatformX86</link></para> 2950 <para>An interface containing the x86-specific properties of the software 2951 environment of the VM.</para> 2952 </listitem> 2953 <listitem> 2954 <para><link linkend="IPlatformARM">IPlatformARM</link></para> 2955 <para>An interface containing the ARM-specific properties of the software 2956 environment of the VM.</para> 2957 </listitem> 2958 <listitem> 2959 <para><link linkend="IPlatformProperties">IPlatformProperties</link></para> 2960 <para>An interface containing the properties specific to the platform of the VM.</para> 2961 </listitem> 2962 <listitem> 2963 <para><link linkend="IHostX86">IHostX86</link></para> 2964 <para>An interface which provides further classification of the x86-specific 2965 properties of the physical host machine.</para> 2966 </listitem> 2967 </itemizedlist> 2968 </sect3> 2969 2970 <sect3> 2971 <title>Classes (Interfaces) Renamed</title> 2972 2973 <table> 2974 <title>Classes (Interfaces) Renamed</title> 2975 <tgroup cols="2" style="verywide"> 2976 <tbody> 2977 <row> 2978 <entry><emphasis role="bold">Original Class Name</emphasis></entry> 2979 <entry><emphasis role="bold">New Class Name</emphasis></entry> 2980 </row> 2981 <row> 2982 <entry>IBIOSSettings</entry> 2983 <entry><link linkend="IFirmwareSettings">IFirmwareSettings</link></entry> 2984 </row> 2985 </tbody> 2986 </tgroup> 2987 </table> 2988 <para>The IBIOSSettings interface has been renamed to the more platform-neutral IFirmwareSettings.</para> 2989 2990 </sect3> 2991 2992 <sect3> 2993 <title>New Methods Added to Classes (Interfaces)</title> 2994 <itemizedlist> 2995 <listitem> 2996 <para><link 2997 linkend="IPlatformProperties">IPlatformProperties</link> <link linkend="IVirtualBox__getPlatformProperties">IVirtualBox::getPlatformProperties</link></para> 2998 <para>The new IVirtualBox::getPlatformProperties method returns 2999 an IPlatformProperties object which contains the platform-specific 3000 properties of a VM as described above.</para> 3001 </listitem> 3002 </itemizedlist> 3003 </sect3> 3004 3005 <sect3> 3006 <title>New Attributes Added to Classes (Interfaces)</title> 3007 <itemizedlist> 3008 <listitem> 3009 <para><link linkend="IPlatformProperties">IPlatformProperties</link><link linkend="ISystemProperties__platform"> 3010 ISystemProperties::platform</link></para> 3011 <para>The ISystemProperties interface gets a new <emphasis>platform</emphasis> 3012 attribute which returns an IPlatformProperties object which contains the 3013 platform-specific properties of a VM as described above.</para> 3014 </listitem> 3015 <listitem> 3016 <para><link linkend="FirmwareType">FirmwareType</link> <link linkend="IFirmwareSettings__firmwareType">IFirmwareSettings::firmwareType</link></para> 3017 <para>The new IFirmwareSettings interface (renamed from IBIOSSettings) gets a new 3018 <emphasis>firmwareType</emphasis> attribute which returns a FirmwareType enumeration which 3019 contains the VM's firmware type.</para> 3020 </listitem> 3021 <listitem> 3022 <para><link linkend="PlatformArchitecture">PlatformArchitecture</link> <link linkend="IHost__architecture">IHost::architecture</link></para> 3023 <para>The IHost interface gets a new <emphasis>architecture</emphasis> 3024 attribute which returns a PlatformArchitecture enumeration which contains the 3025 platform's architecture.</para> 3026 </listitem> 3027 <listitem> 3028 <para><link linkend="IHostX86">IHostX86</link> <link linkend="IHost__x86">IHost::x86</link></para> 3029 <para>The IHost interface gets a new <emphasis>x86</emphasis> 3030 attribute which returns an IHostX86 object which contains the 3031 x86-specific properties of the physical host machine.</para> 3032 </listitem> 3033 <listitem> 3034 <para><link linkend="IPlatform">IPlatform</link> <link linkend="IMachine__platform">IMachine::platform</link></para> 3035 <para>The IMachine interface gets a new <emphasis>platform</emphasis> 3036 attribute which returns an IPlatform object which contains the 3037 properties related to the platform of the VM.</para> 3038 </listitem> 3039 <listitem> 3040 <para><link linkend="IFirmwareSettings">IFirmwareSettings</link> <link linkend="IMachine__firmwareSettings">IMachine::firmwareSettings</link></para> 3041 <para>The IMachine interface gets a new <emphasis>firmwareSettings</emphasis> 3042 attribute which returns an IFirmWareSettings object which contains the 3043 properties related to the platform of the VM.</para> 3044 </listitem> 3045 </itemizedlist> 3046 </sect3> 3047 3048 <sect3> 3049 <title>Class (Interface) Attribute Changes</title> 3050 3051 <table> 3052 <title>Classes Renamed</title> 3053 <tgroup cols="2" style="verywide"> 3054 <tbody> 3055 <row> 3056 <entry><emphasis role="bold">Original Class Name</emphasis></entry> 3057 <entry><emphasis role="bold">New Class Name</emphasis></entry> 3058 </row> 3059 <row> 3060 <entry>BIOSBootMenuMode IBIOSSettings::bootMenuMode</entry> 3061 <entry><link linkend="FirmwareBootMenuMode">FirmwareBootMenuMode</link><link linkend="IFirmwareSettings__bootMenuMode"> IFirmwareSettings::bootMenuMode</link></entry> 3062 </row> 3063 </tbody> 3064 </tgroup> 3065 </table> 3066 3067 <para>The IBIOSSettings::bootMenuMode attribute has been moved to the new 3068 IFirmwareSettings interface and now returns the firmware boot menu mode in 3069 the new <link linkend="FirmwareBootMenuMode">FirmwareBootMenuMode</link> enumeration.</para> 3070 3071 <table> 3072 <title>Classes Renamed</title> 3073 <tgroup cols="2" style="verywide"> 3074 <tbody> 3075 <row> 3076 <entry><emphasis role="bold">Original Class Name</emphasis></entry> 3077 <entry><emphasis role="bold">New Class Name</emphasis></entry> 3078 </row> 3079 <row> 3080 <entry>unsigned long ISerialPort::IOBase</entry> 3081 <entry>unsigned long <link linkend="ISerialPort__IOAddress">ISerialPort::IOAddress</link></entry> 3082 </row> 3083 </tbody> 3084 </tgroup> 3085 </table> 3086 3087 <para>The ISerialPort::IOBase attribute has been renamed to ISerialPort::IOAddress.</para> 3088 3089 </sect3> 3090 3091 </sect2> 3092 3093 <sect2> 3094 <title>Changes to Enumerations</title> 3095 3096 <sect3> 3097 <title>New Enumerations Added</title> 3098 <itemizedlist> 3099 <listitem> 3100 <para><link linkend="PlatformArchitecture">PlatformArchitecture</link></para> 3101 <para>The new PlatformArchitecture enumeration contains the CPU 3102 architecture type of the VM.</para> 3103 </listitem> 3104 </itemizedlist> 3105 </sect3> 3106 3107 <sect3> 3108 <title>New Enumerations Values</title> 3109 <itemizedlist> 3110 <listitem> 3111 <para><link linkend="CPUArchitecture">CPUArchitecture</link> 3112 <itemizedlist> 3113 <listitem><para><link linkend="CPUArchitecture__ARMv8_32">ARMv8_32</link></para></listitem> 3114 <listitem><para><link linkend="CPUArchitecture__ARMv8_64">ARMv8_64</link></para></listitem> 3115 </itemizedlist> 3116 </para> 3117 <para>The CPUArchitecture enumeration gets two new additions corresponding 3118 to 32-bit and 64-bit ARMv8 CPUs respectively.</para> 3119 </listitem> 3120 <listitem> 3121 <para><link linkend="AudioControllerType">AudioControllerType</link> 3122 <itemizedlist> 3123 <listitem><para><link linkend="AudioControllerType__VirtioSound">VirtioSound</link></para></listitem> 3124 </itemizedlist> 3125 </para> 3126 <para>The AudioControllerType enumeration gets a new value named <emphasis>VirtioSound</emphasis>. 3127 </para> 3128 </listitem> 3129 <listitem> 3130 <para><link linkend="ChipsetType">ChipsetType</link> 3131 <itemizedlist> 3132 <listitem><para><link linkend="ChipsetType__ARMv8Virtual">ARMv8Virtual</link></para></listitem> 3133 </itemizedlist> 3134 </para> 3135 <para>The ChipsetType enumeration gets a new value named <emphasis>ARMv8Virtual</emphasis>. 3136 </para> 3137 </listitem> 3138 </itemizedlist> 3139 </sect3> 3140 3141 <sect3> 3142 <title>Enumerations Renamed</title> 3143 3144 <table> 3145 <title>Enumerations Renamed</title> 3146 <tgroup cols="2" style="verywide"> 3147 <tbody> 3148 <row> 3149 <entry><emphasis role="bold">Original Enumeration Name</emphasis></entry> 3150 <entry><emphasis role="bold">New Enumeration Name</emphasis></entry> 3151 </row> 3152 <row> 3153 <entry>CPUPropertyType</entry> 3154 <entry><link linkend="CPUPropertyTypeX86">CPUPropertyTypeX86</link></entry> 3155 </row> 3156 </tbody> 3157 </tgroup> 3158 </table> 3159 3160 <para>The CPUPropertyType enumeration has been renamed to CPUPropertyTypeX86.</para> 3161 3162 <table> 3163 <title>Enumerations Renamed</title> 3164 <tgroup cols="2" style="verywide"> 3165 <tbody> 3166 <row> 3167 <entry><emphasis role="bold">Original Enumeration Name</emphasis></entry> 3168 <entry><emphasis role="bold">New Enumeration Name</emphasis></entry> 3169 </row> 3170 <row> 3171 <entry>BIOSBootMenuMode</entry> 3172 <entry><link linkend="FirmwareBootMenuMode">FirmwareBootMenuMode</link></entry> 3173 </row> 3174 </tbody> 3175 </tgroup> 3176 </table> 3177 3178 <para>The BIOSBootMenuMode enumeration has been renamed to FirmwareBootMenuMode.</para> 3179 3180 </sect3> 3181 </sect2> 3182 </sect1> 3183 2579 3184 </chapter> 2580 3185 … … 4224 4829 <listitem><para>The attribute <link linkend="IGuestSession__mountPoints">IGuestSession::mountPoints</link> has been 4225 4830 added. This requires 7.1 (or newer) Guest Additions to be installed on the guest.</para> 4831 </listitem> 4832 4833 <listitem><para>Review the Main API changes made for the ARM64 CPU architecture <link linkend="vboxarm">here</link> 4834 for incompatible changes to interfaces, methods, and attributes.</para> 4226 4835 </listitem> 4227 4836 -
trunk/src/VBox/Main/idl/VirtualBox.xidl
r103088 r103553 1465 1465 > 1466 1466 <desc> 1467 BIOSboot menu mode.1467 Firmware boot menu mode. 1468 1468 </desc> 1469 1469 … … 7325 7325 7326 7326 <desc> 7327 The x86specific platform properties for a virtual machine.7327 The ARM-specific platform properties for a virtual machine. 7328 7328 7329 7329 Accessed via <link to="IMachine::platform"/> and <link to="IPlatform::ARM"/>. … … 12256 12256 12257 12257 <desc> 12258 The x86 12258 The x86-specific interface for the physical host machine. 12259 12259 </desc> 12260 12260
Note:
See TracChangeset
for help on using the changeset viewer.