Grub For Mac Os

Jump to: navigation, search

The bootloader loads after the BIOS sets up the computer and tries to find an operating system to start. A bootloader can start different kinds of operating systems.

On a real mac the bootloader 'boot-132' is used.

  • Yes, absolutely sure. If I select the Mac OSX install DVD grub still loads. My Macbook Pro is 8,1 so I'm not sure if something is special about that EFI where grub overrides it. – Benjamin Bryan Jun 19 '12 at 16:56.
  • Jul 03, 2017 Choose Whether GRUB is Hidden: With only one operating system installed, Ubuntu defaults GRUB to automatically boot to the default OS with the GRUBHIDDENTIMEOUT=0 option. This option specifies GRUB will be hidden and it will automatically boot to the default OS after 0 seconds –immediately, in other words.

GRUB didn’t recognize the operating system. Just put others, so we manually changed it to Windows 8. This allows us to specify the root directory for GRUB. Now then, by default, the way that GRUB addresses disk drives and partitions are different from the way that the kernel does.

Currently, Chameleon or PC EFI are used most. The GNU GRUB 2 should also be able to boot XNU from a GUID disk.

Bootloaders for OSX86 mainly emulate an EFI, but can also load up additional kexts or change the DSDT.

The whole boot-process can be seen in this PDF.

  • 1OS X boot process
  • 2Chameleon

[edit] OS X boot process

A Darwin bootloader passes arguments to the XNU kernel in the struct boot_args. This structure is defined in the BootX project in the file boot_args.h .

struct boot_args {

unsigned short Revision; /* Revision of boot_args structure */
unsigned short Version; /* Version of boot_args structure */
char CommandLine[BOOT_LINE_LENGTH]; /* Passed in command line */
DRAMBank PhysicalDRAM[kMaxDRAMBanks]; /* base/range pairs for the 26 DRAM banks */
Boot_Video Video; /* Video Information */
unsigned long machineType; /* Machine Type (gestalt) */
void *deviceTreeP; /* Base of flattened device tree */
unsigned long deviceTreeLength; /* Length of flattened tree */
unsigned long topOfKernelData; /* Last address of kernel data area*/

};

[edit] OS X bootflags

The bootloader loads the kernel (default filename is mach_kernel), but also command line arguments (bootflags) can be posted to the kernel which change the way the kernel loads up.

  • CPUS=1
only one CPU is used
  • -s
OSX boots in single user mode, ie commandline for rescue usage
  • -v
OSX boots in verbose mode, which shows the kernel loading process
  • arch=i386
OSX boots in 32bit mode
  • -f
forces rebuilding of extensions cache mkext
  • 'Graphics Mode'='1024x768x32'
change display resolution. For a permanent change see Technical_FAQ#How_to_change_display_resolution.3F
  • 'rd=disk0s1'
boot from a certain partition specified in BSD format. Disk 0 specifies first HDD and s1 specifies first partition as 0 is the MBR.

[edit]Chameleon

Grub for mac os 10.13

[edit]AsereBLN Booter

[edit]PC EFI

Grub Rescue Mac Os X

[edit]Weblinks

Grub For Mac Os Versions

Retrieved from 'http://wiki.osx86project.org/wiki/index.php?title=Bootloader&oldid=53295'

Mac Os Mojave


This page was last modified on 24 November 2010, at 03:27.
This page has been accessed 86,653 times.