Darling's userspace kernel server (much like Wine's wineserver)
Go to file
Ariel Abreu d9bf20afc9
Implement remote mmap/munmap + various fixes
The most important change here is the ability to perform `mmap` and `munmap` in managed Darling processes. This is enabled via the new S2C call system.

Other notable changes:
  * Move the server socket to the prefix root because launchctl clears `var/run` on startup
  * Create an IPC importance structure for each duct-taped task; this is required by `ipc_importance_send`
  * Initialize the MPSC thread deallocation daemon; this is also used by turnstiles
  * Clean up a thread's timers and waits when destroying it
  * Check whether we should actually block in `thread_block_parameter` before doing so; this helps avoid missed wakeups
  * Support creating kernel threads without immediately starting them
  * Update a thread's address when receiving a message from it; this fixes an issue with keeping an outdated thread address when a process performs an exec (since we re-use its main thread)
2022-02-17 19:12:44 -05:00
duct-tape Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00
include/darlingserver Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00
internal-include/darlingserver Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00
scripts Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00
src Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00
.gitignore Many additions + stubs; basic kernel MIG RPC working 2022-01-20 00:11:51 -05:00
CMakeLists.txt Implement remote mmap/munmap + various fixes 2022-02-17 19:12:44 -05:00