Open JCWasmx86 opened 3 years ago
As demonstrated here by a somewhat similar project.
Well, this wouldn't really be a performance enhancement, but more of a compatibility enhancement, allowing (insane) applications that don't use libSystem to do kernel calls to work under Darling. Right now, the only syscall handling we do is through libSystem. If an app tries to perform direct syscalls, they end up calling into the Linux kernel. See #193.
Does launchd recursively wipe /run via libSystem or via direct system calls? I am still thinking about the incidents of darling wiping my external hard disks under /run/media/MyName/diskname
on Linux
https://github.com/darlinghq/darling/issues/848 , and two different drives. :(
All the software Darling ships (including launchd
) uses libSystem, not direct syscalls.
So I looked into this, and there are two blockers that prevent us from adopting Syscall User Dispatch for Darling:
With the version 5.11 of the linux kernel came a feature called Syscall User Dispatch.
If I understand correctly, this allows a more efficient redirection of syscalls (E.g. windows syscalls to wine).
Is it planned to use this in darling, potentially improving performance?