4 ms·
XPC is just a layer on top of Mach IPC. Not very familiar with the app sandbox model, but what exactly would be truly innovative about it? Being a hybrid kerne
by vezzy-fnord 11y ago
XPC is just a layer on top of Mach IPC. Not very familiar with the app sandbox model, but what exactly would be truly innovative about it?
Being a hybrid kernel barely has any significance when you don't exploit that fact, which XNU doesn't. Also, it's a hybrid of Mach, which is heavily anachronistic and clunky. DragonFly BSD, on the other hand, actually does through the vkernel mechanism.
I have no idea what you mean by the third one. Are you saying that the root user's privileges are segmented into multiple subsystems? POSIX has had capabilities for that. They suck and they're not actual capability-based security, but they do achieve logical privilege segmentation. Plan 9 and Inferno are the only ones from the Unix-ish lineage who successfully got rid of root entirely.
You can write applications targeting any subsystem provided there are bindings, which there are. For instance, Python and Vala are heavily used in contemporary Unix-like DEs for application programming.
- pjmlp 11y ago> XPC is just a layer on top of Mach IPC. Not very familiar with the app sandbox model, but what exactly would be truly innovative about it? It is not part of any POSIX compliant UNIX. It also pushes developers into a micro-kernel style of application development, which isn't common in UNIX. > Also, it's a hybrid of Mach, which is heavily anachronistic and clunky. DragonFly BSD, on the other hand, actually does through the vkernel mechanism. Besides FreeBSD, I admit I hardly know any other BSD. > I have no idea what you mean by the third one. Are you saying that the root user's privileges are segmented into multiple subsystems? In El Capitan, you can only be real root in safe mode. In normal mode there are paths (e.g. /bin, /usr/bin,...) and APIs that aren't available even to processes running as root. > You can write applications targeting any subsystem provided there are bindings, which there are. For instance, Python and Vala are heavily used in contemporary Unix-like DEs for application programming. There is a big difference in being a first class language used in the vendor SDK and IDE, and a third party one used by some developers.