Sure. Take an example of filesystem support. On XNU you have a very basic 1970s style filesystem underneath the covers. That's why you start having allocation problems as you get bigger than 1TB, which people are hitting. You also have inconsistency issues about case sensitive throughout the OS. It lacks advanced features for large drives so that block level corruption in HFS+ creates file corruption, which with larger files is a problem.
And mind you, you don't even get a high speed filesystem, (like a modern XFS) would provide.
Linux has support for well over 100 filesystems and there is 3rd party support on Windows for every filesystem I've ever run across. So not only is the filesystem choices meager on XNU, the default kinda sucks.
____
In terms of protocols there is a move towards move advanced protocols like SCTP to replace TCP and UDP (
why SCTP). Again most kernels support this already.
As an aside, the Windows Networking stack with multiple points for
runtime configuration and virtualization is just amazing. The result are Windows applications that are able to reconfigure the networking stack in minor ways without having performance implications or serious compatibility problems.
____
I personally think the /proc filesystem and the ability to view in a reasonable and accessible way kernel status information is incredibly powerful. There is no easy way to figure out what's going wrong with XNU kernel if it is having problems: (
description of proc). Admittedly Windows has nothing like this either.
____
Now most of the advanced features of the Linux and NT kernel mainly apply to servers and not desktops. But here XNU started life as a server kernel. So it doesn't have embedded features (especially useful for phone) like you would find in a real time kernel. For what's its worth, I think given that Apple doesn't make server products (in any meaningful sense) anymore, they should switch to a real-time kernel. Desktop users would much rather trade off slightly lower total work for a system that is 100% of the time responsive to new input. The system, while being slightly slower, would feel so much faster. I don't know whether RIM will survive long enough to show off the advantages of a real time kernel but I hope so. I think the idea of having a server kernel ported to the desktop and then reported to phones is a terrible idea. I understand why Apple did it, and the advantages of being able to port over the entire Cocoa framework made it possible to get off the ground quickly.