Reserve first 1MB of ram?

Just curious what Haiku does in this regard.

" Sent in last weekend to the Linux 5.13 kernel was the change so Linux x86/x86_64 will always reserve the first 1MB of RAM in order to avoid corruption issues with some BIOS and frame-buffers sometimes fiddling with that lowest portion of system memory."

Link1
Link2

As non Linux user I dont know what you mean?
I am lazy to read all that about Linux.
and Link 2 I do not even click…
What do you like to know?

Edited my post to look less spammy. I was just curious what we reserve in this regard since both Linux and Windows do 1mb now.

1 Like

haiku has always had reserved protected memory, iirc that it uses a form of address randomization to prevent injection or some other security issues, iirc

As far as I know we don’t explicitly do this. It wouldn’t be hard to add it, ideally as an option in the boot menu or after detecting that we are running on a machine where this is known to happen?

That has nothing to do with the layout of physical memory. Address randomization randomizes virtual addresses, not physicla addresses.

The bootloaders simply ignore the first 1MB physical range:
https://git.haiku-os.org/haiku/tree/src/system/boot/platform/bios_ia32/mmu.cpp#n694
https://git.haiku-os.org/haiku/tree/src/system/boot/platform/efi/arch/x86_64/arch_mmu.cpp#n79

2 Likes

Thanks Korli! Figured it could have been an easy win for a little extra compatibility, but nice to know we already have it.

been a long time since I read about that and looked at the code, thanks for the correction.