In version 3.0 of the Horizon kernel, new memory management SVCs were added. These essentially implement a new, more flexible take on heap management. Newer official software is known to take advantage of this improved heap management system. As a result, it would be desirable to add support for PhysicalMemory SVCs to libnx so that homebrew can take advantage of it.
Adding support involves redesigning how libnx applications interact with the homebrew environment (specifically nx-hbloader), and also figuring out a way to fall back on older style svcSetHeapSize heap management on systems running older Horizon kernels. Also note that Mesosphère implements all newer Horizon kernel functionality regardless of the installed firmware version; and a future version of Atmosphère will unconditionally have Mesosphère enabled, therefore making this a non-issue.
The text was updated successfully, but these errors were encountered:
Hello, I was wondering if there was an update to this?
As of Atmosphère 1.0.0 from what I can tell Mesosphère is no longer opt-out and thus unconditionally enabled.
It would be nice to be able to use generic virtual memory in homebrew applications to align with PC counterparts like VirtualAlloc/mmap (that said, I haven't wrapped my head around SVC call stuff, so this might not even be what I think it is)
fincs commentedNov 7, 2020
In version 3.0 of the Horizon kernel, new memory management SVCs were added. These essentially implement a new, more flexible take on heap management. Newer official software is known to take advantage of this improved heap management system. As a result, it would be desirable to add support for PhysicalMemory SVCs to libnx so that homebrew can take advantage of it.
Adding support involves redesigning how libnx applications interact with the homebrew environment (specifically nx-hbloader), and also figuring out a way to fall back on older style svcSetHeapSize heap management on systems running older Horizon kernels. Also note that Mesosphère implements all newer Horizon kernel functionality regardless of the installed firmware version; and a future version of Atmosphère will unconditionally have Mesosphère enabled, therefore making this a non-issue.
The text was updated successfully, but these errors were encountered: