Why not using Linux kernel with Mono? Why the effort to write a kernel?

Creating our kernel written in C# and our run time we will accomplish a lot of advantages respect to use the Linux kernel:

There will be only a version of Cosmos that will run on any CPU (code once run everywhere)
The OS will be safer using the Linux kernel we will expose us to all the security bug that C code has
Cosmos and the applications will condivide the same memory space using the .NET runtime to isolate processes memory. At the same time when needed a process could give the “ownership” of an object to another process directly without the need to serialization; a reference to the very same object will be used
Cosmos will permit to implement Zero Copy I/O very easily (faster web server ever?)
Using C# will permit us to code and debug using Visual Studio to debug the kernel itself
Not using the Linux kernel we do not take the dependency from others and are more free to do our choices