Basically a kernel offers low-level memory protection, scheduling and communication between tasks. That's it. People often over-stress the impact of kernels and Architecture, and ignore that a ton of mission critical software (like airplanes and satellites and so on), often do not have a preemptive kernel or full memory protection and so on. Good QA and software practices, an App validation approval processes, or even language based things (like Java's memory management) can compensate. So there are many ways to crack a nut and solve a problem. But that being said:
- 👍A good kernel and foundation can make an OS much more robust. And since Apple wasn't solving the problems any other way, and it needed to be solved, this is a great solution. Bringing it to the Mac has meant more stable apps, and the potential to do more at once. Jaguar is still slower at a single App than OS 9 for many things, showing that there is an overhead for kernels. But running many apps and services at once, and you gain any losses back. Running multiple processors and you gain even more. And the more complex things get, the better the returns. I'm willing to pay some minor performance overhead for stability.
- 👍 Modern memory management means I don't worry about Application sizes. Coding is a lot easier without all that nasty manual memory management stuff, and cooperative scheduling: that means better Apps (more features and quality in less time). So making programmers more productive, and Apps more stable, means better programs, fewer bugs, and more companies that can and will write apps. Users like that.
- 🤔The Mac had low-level communications; some better than kernel threads; so not a huge win there. In fact Apple's messaging and scripting mechanisms (AppleScript) were often better thought out (architecturally) -- but worse implemented. And because it was unique and less mature, it was less used and quirky.
- 💩 Documentation, Quality Assurance, and support. Things spiked way down when NeXT took over Apple. Slowly they've crept back, very little -- but they still have a long way to go. Much of OS X feels like "ship it first, document or fix it later" and support those we like. If you know someone at Apple, or pay for an expensive service contract, they're helpful. If you don't? Best of luck. They still aren't as bad as Microsoft, but compared to what Apple used to be like, we might be going too far towards "real artists ship" mentality. Real artists also ship when it's finished (which means QA and Documentation).