Mac OS X guest

Discussions about using Mac OS X guests (on Apple hardware) in VirtualBox.
Locked
xian02
Posts: 4
Joined: 7. Aug 2009, 23:23
Primary OS: Ubuntu 8.10
VBox Version: OSE Debian
Guest OSses: Xp

Re: Mac OS X guest

Post by xian02 »

Hello guys!

I think you should stop thinking about boot-132...
no one on the scene has suceeded making it working with vbox.
but, again, you should start thinking about UEFI XPC Boot :)
for a remind, irc channel is UEFI-Boot, hosted on irc.moofspeak.net.
last news are telling this
"two screens from xpc gui at http://ul.to/75xzqk | xpc booting ideneb 10.5.7 on vmware http://ul.to/9xxzsa"
new version is about to be released, and according to the short movie up there, the guy make ideneb work on vmware WITHOUT any modifications...
so there is a small hope that full efi support would help us booting osx on virtualbox.
there is more, i heard it will be able to boot snow leopard...
is it good news?
OPERATOR
Posts: 1
Joined: 16. Sep 2009, 11:28
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: MacOS

Re: Mac OS X guest

Post by OPERATOR »

Hi,

this are gread news, i hope VB will find a way too

kind regards
peterr
Posts: 1
Joined: 17. Sep 2009, 19:10
Primary OS: Mac OS X Leopard
VBox Version: OSE other
Guest OSses: OS X (Apple EULA=OK If Host is MacBook Pro) read carefully, it's ok

Re: Mac OS X guest

Post by peterr »

:mrgreen: Eventually it should be possible to install OS X on a Virtual Machine, apparently Parallels now lets you install Leopard Server, some have succeeded with VMWare QEMU, and KVM but to stay within the Apple's EULA license it can only be done legally on Apple Computer hardware. So I don't see why VB cannot also develop this option for OS X versions of VB. This would keep it legal without Apple's agreement.

I could really use a VB Image of OS X. I hope the VB team makes it possible.

I can see where all this Virtualization is going in the future: Imagine an open source operating system that can host other operating systems. That would be ideal! Imagine a 3d window environment where each window has it's own operating system!

Clone the guest operating system for backup as easily as copy and paste of one file, no more System Restore or Time Machine! Throw out any corrupted OS as simply deleting the file. I already can do this with Parallels. So I never have to reinstall anything if I get a bad crash. Just my 2 cents.
Uzume
Posts: 90
Joined: 9. Sep 2009, 21:10
Primary OS: MS Windows XP
VBox Version: PUEL
Guest OSses: MS Windows 2003, PureDarwin

Re: Mac OS X guest

Post by Uzume »

As for the boot-132 vs. EFI boot issue goes it would be nice to get EFI support for VirtualBox (also useful for Linux and recent Microsoft x64 OSes, etc.).

This is probably the best place to start on this:
Open Virtual Machine Firmware (OVMF)

It is already targeting QEMU. Perhaps the Bochs BIOS and VGA BIOS option ROM can be modified into a CSM on top of this for a unified system firmware stack.

Several of the hardware changes required to get Mac OS X and Darwin to boot without modifications can be ported from QEMU. I might have to look into building VB OSE for this sort of development.
 Edit: It seems Tiano Core moved, so here is the new link for OVMF:
Open Virtual Machine Firmware (OVMF) 
Last edited by Uzume on 22. Mar 2010, 15:22, edited 1 time in total.
xian02
Posts: 4
Joined: 7. Aug 2009, 23:23
Primary OS: Ubuntu 8.10
VBox Version: OSE Debian
Guest OSses: Xp

Re: Mac OS X guest

Post by xian02 »

DumpBS.efi (x86/x64) Tool: http://ul.to/vcbkux | windows efi install _not_ fixed yet | xpc gui tryout version http://ul.to/sqwo46
UEFI XPC BOOT beta version released this morning
more to come!
Technologov
Volunteer
Posts: 3342
Joined: 10. May 2007, 16:59
Location: Israel

Re: Mac OS X guest

Post by Technologov »

Uzume:
It is very interesting what you doing here.

You can look at my info in page 1 as a starting point.

And also know that Klaus, one of VBox core developers is working on making Mac OS X server run as VBox guest. But I don't know the status of his work.

You can find him at vbox-dev mailing list.

-Technologov
Exillis
Posts: 13
Joined: 26. Mar 2009, 06:28
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Windows Vista, OpenSolaris, Ubuntu Linux, CentOS, Haiku, PC-BSD

Re: Mac OS X guest

Post by Exillis »

Pystar has just released Rebel EFI for purchase.

Is there a possibility of using this with VirtualBox to install Mac OS X?
josephcohen
Posts: 2
Joined: 27. Oct 2009, 11:51
Primary OS: Other
VBox Version: OSE other
Guest OSses: other

Re: Mac OS X guest

Post by josephcohen »

In regards to the ATA checksum cookie error:

The source of your problem is this function:
IOATABlockStorageDriverV2::IdentifyDevice(unsigned short*)

found in the:

IOATABlockStorageDriver.kext

plugin found in the:

IOATAFamily.kext package

EDIT:

The source for this version of the package is NOT opened, however if you get the 10.3 source for the "IOATABlockStorage" version 130.3.1 you can locate the function called "IOATABlockStorageDriver::identifyATADevice" in the "IOATABlockStorageCommands.cpp" file. That function is the old version of the new the function which is the source of the problem.

It boils on down to a ATA commands not being properly handled by the virtual storage device. The solution is to either implement the ATA command "0x00EC" which is the ATA command that is failing or switch to a SCSI storage solution that OS X supports as well. BTW the "0x00EC" is part of the ATA IO opcode ("0x0001") family.

Unfortunately I can't share the source of this module with you but you can figure it out.
Technologov
Volunteer
Posts: 3342
Joined: 10. May 2007, 16:59
Location: Israel

Re: Mac OS X guest

Post by Technologov »

Dear josephcohen,

I am not a developer so I cannot figure it out. I am just advanced VBox user.
VBox developers exist on vbox-dev mailing list, and only very rarely happen to come here to forum.

You said:
>Unfortunately I can't share the source of this module with you but you can figure it out.

This module is part of what? of VirtualBox or of Mac OS X ?

-Technologov
sej7278
Volunteer
Posts: 1003
Joined: 5. Sep 2008, 14:40
Primary OS: Debian other
VBox Version: PUEL
Guest OSses: Solaris, Linux, Windows, OS/2, MacOSX, FreeBSD
Contact:

Re: Mac OS X guest

Post by sej7278 »

Uzume wrote:As for the boot-132 vs. EFI boot issue goes it would be nice to get EFI support for VirtualBox (also useful for Linux and recent Microsoft x64 OSes, etc.).
efi support is in subversion.
Attachments
efi_ose.jpg
efi_ose.jpg (47.21 KiB) Viewed 19390 times
josephcohen
Posts: 2
Joined: 27. Oct 2009, 11:51
Primary OS: Other
VBox Version: OSE other
Guest OSses: other

Re: Mac OS X guest

Post by josephcohen »

The source for the IOATABlockStorage.kext is not available to the public. Only select people have access to it.

The IOATABlockStorage.kext bundle found in the plugins folder inside the IOATABlockStorageDriver.kext bundle is the source of the ATA issues. This driver provides an IOKit personality and interface for XNU to access the storage devices attached to the ATA and SATA busses.

The exact source of the issue comes from the IOKit C++ Object "IOATABlockStorageDriverV2". The function "IdentifyDevice(unsigned short*)" causes the error that has been reported.

The reason this function in this object fails is because the simulated ATA bus in VirtualBox does NOT handle the "0x00EC" ATA command correctly or the Virtual Box BIOS is corrupting the command some how.

Since the source code to the problem driver is not available to the public and thus not available to examine what is going on and why it is failing I have offered an alternative. It turns out that this object's function is very similar to another object's function which IS released under Apple's open source license and website. This released source code is the "IOATABlockStorage" project found in the 10.3 branch of the source code. Since then the project has been dropped and the IOATABlockStorage (v2) has replaced it which is not open sourced. However the "IdentifyDevice(unsigned short*)" function behaves almost identically to the "identifyATADevice" function of the "IOATABlockStorageDriver" IOKit C++ object. The source of which can be found in the "IOATABlockStorageCommands.cpp" file inside the previously mentioned project.

I am familiar with this code but I have absolutely no idea how the VirtualBox code is organized or works so I have no idea how to add this capability to the VirtualBox source. I also am very limited on free time right now and the only reason I keep an eye on the VirtualBox project is because I use it for personal test projects and the company I work for integrates into Sun's VDI (3?) product which also contains a copy of VirtualBox and thus I keep an eye on all things related to Sun's VDI.

Bottom line, a VirtualBox contributor needs to download the 10.3 project titled "IOATABlockStorage". Once downloaded they need to go to the "IOATABlockStorageCommands.cpp" file and examine the function titled "IOATABlockStorageDriver::identifyATADevice". Once they look at this code they should be able to figure out what is missing in VirtualBox and implement it. I however have added a few comments to this by saying they should really look at the ATA command "0x00EC" this is probably the direct source of the problem. Implementing this command will fix this issue with VirtualBox and OS X Guests (There probably is more too).
stmiller
Posts: 36
Joined: 5. Aug 2007, 19:28

Re: Mac OS X guest

Post by stmiller »

Mr.Brightside wrote:
SunnyD wrote: The biggest problem I'm having currently is the ATA or SATA Checksum Cookie not being valid.
I had also the same problem with with Max OS X as guest OS on VirtualBox.
I have tried boot-132 with retail dvd and no had success, every time "ATA Disk Checksum cookie" error :(
You can get past the checksum cookie not valid thing by choosing SCSI lsi or bus logic -> then attach the drive as IDE.

That is a similar setting those on vmware do to get OSx86 running.

BUT!

There is no way to set the virtualbox primary adapter to SCSI - only an 'additional' controller. If we could set scsi as the only/main adapter, it might work in virtualbox. :)
VirtualBox4ever
Posts: 2
Joined: 8. Nov 2009, 19:02
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: Windows XP

Re: Mac OS X guest

Post by VirtualBox4ever »

OMG!
Guys, if you do this, you will be the best and VirtualBox also too! :D
I very want to use Mac OS as guest OS on VirtualBox because I like this virtualization software for speed|features|open source and I don't want use for ex. VMWARE or others only to support Mac OS, but I really need it in my work peridiocally I must use it to write some soft under this platform, so good luck!
P.S. Is hope to find this feature in nearest versions of VirtualBox?
pasergey
Posts: 1
Joined: 30. Nov 2009, 10:43
Primary OS: MS Windows 2003
VBox Version: OSE other
Guest OSses: Mac OS 10.5.7

Re: Mac OS X guest

Post by pasergey »

Good day!

As a result of what we have?
There is support guest mac OS or not?

Sergey
Technologov
Volunteer
Posts: 3342
Joined: 10. May 2007, 16:59
Location: Israel

Re: Mac OS X guest

Post by Technologov »

pasergey : read page 1. First post only, it summarizes it all.
Locked