La communication avec les fonctions du noyau mach se fait à l'aide de messages mach. La bibliothèque système libsystem_kernel.dylib implémente une fonction auxiliaire mach_msg (...) pour envoyer/recevoir des messages mach arbitraires, mais elle contient aussi des méthodes préparées pour utiliser certaines fonctions du noyau comme task_get_special_port (qui ont le même nom de fonction). Cela peut être vu en désassemblant le binaire lib. La source mach_msg peut être trouvée here mais les sources pour les helpers spécifiques à la fonction comme task_get_special_port ne semblent pas apparaître n'importe où dans l'arborescence des sources de libsyscall. Où ces adaptateurs kernelFunction-to-machMsg sont-ils implémentés ou générés?Où les assistants mach_msg pour les fonctions du noyau sont-ils implémentés ou générés?
Où est également le récepteur du message mach implémenté qui traduit entre le message et l'appel de la fonction noyau? (La mise en œuvre réelle du noyau pour task_get_special_port se trouve here)