VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Discussions related to using VirtualBox on Mac OS X hosts.
fth0
Volunteer
Posts: 5677
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Post by fth0 »

To complete the macOS host picture, there was/is a time frame between the old days and the new days: ;)

VirtualBox 6.1 can run VMs simultaneously with Parallels Desktop VMs, because both type-2 hypervisors can share VT-x on macOS when both are using their respective kernel extensions.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Post by mpack »

They can run different VMs at the same time? I wasn't aware of that. I have assumed that "sharing" VT-x would mean the same as it does on Windows sans Hyper-v: one platform at a time (e.g. VMWare Workstation, VirtualBox) can use the feature, but it has to be reliquished before the other platform can run.
Mike L
Posts: 7
Joined: 15. Jan 2023, 15:43
Primary OS: Mac OS X other
VBox Version: OSE other
Guest OSses: Centos 7
Location: San Jose, CA

Re: VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Post by Mike L »

Just following this at a distance, as I see the experts are weighing in on what's possible (glad I stirred the can ;-)

I took a look at vmWare and at a quick glance, they didn't seem to support either the intel or ARM Centos 7 release when I tried installing for either. So that path is out for my new Mac and it's chip.

For me, I'll have to switch to alternatives, but hearing more about what VB and/or alternatives will do as they become available in this environment will be helpful for folks like me who don't understand the issues at the level you folks do.

Thanks again for all the answers and information.
fth0
Volunteer
Posts: 5677
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Post by fth0 »

mpack wrote:They can run different VMs at the same time?
Yes, they can run VMs simultaneously. To elaborate on that:

There is a global VirtualBox setting named hwvirtexclusive (documented in VBoxManage setproperty), which is by default enabled on Linux hosts and disabled on macOS and Windows hosts. Parallels Desktop (macOS) is known to also share VT-x, and VMware Workstation (Windows) and KVM (Linux) are known to not share VT-x. Since it takes two hypervisors to share VT-x, only the combination on macOS hosts is known to work simultaneously. But it's not that important IMO, since most users usually choose only one hypervisor.

To explain "sharing VT-x" a bit:

On Intel CPUs, each logical processor (e.g. a quad-core CPU with hyper-threading has 8 logical processors) has its own VT-x support, and VirtualBox has to configure the VT-x support on the logical processors before using it. When the host OS then schedules one of VirtualBox's EMT-<n> threads (vCPU<n>) on a logical processor, VirtualBox enters VMX operation (VM entry). During a typical VM run, VirtualBox exits VMX operation (VM exit) several thousand times per second, for example to handle page faults, interrupts and so on, and afterwards enters VMX operation again. Note that on each VM entry, another logical processor can be chosen by the host OS scheduler.

When using VT-x exclusively, VirtualBox configures the VT-x support on all logical processors once early on, so they are configured to be used by VirtualBox only.

When sharing VT-x, VirtualBox configures the VT-x support on each logical processor just before each VM entry, and removes that configuration after each VM exit. In consequence, another hypervisor using the same strategy can use each logical processor while VirtualBox is not using it. Since a VM exit is already a costly operation, removing the VT-x configuration on VM exit and configuring it again on VM entry makes sharing VT-x only somewhat more expensive (mostly pointer operations, e.g. providing a VMCS pointer to a logical processor).
multiOS
Volunteer
Posts: 821
Joined: 14. Sep 2019, 16:51
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: WIN11,10, 7, Linux (various)
Location: United Kingdom

Re: VB7.04 on MacOS Ventura M1 Pro & Centos 7 Launch Fail

Post by multiOS »

@MikeL

I'll strengthen my last 'Hint': For Mac M1/M2 users who aren't Swift/xCode developers, my suggestion as of now would be to try 'UTM' as an interim solution, whilst monitoring/testing the progress of whatever more familiar options you are interested in, including VirtualBox of course. It has known limitations in some areas of development, which are openly acknowledged on their website(s); and their user guidance is limited, but it currently offers a more rounded set of usable options than the 'usual suspects'. It is also an open source 'universal' application, i.e. 'free to use', which installs on both Intel and M1/M2 Macs if that's a consideration. Search 'GetUTM' for the Website and GitHub pages for info. It's also available on the Mac Appstore for a small charge (donation) along with at least one other commercial option, forked from the UTM Code.
Post Reply