Is C# recommended for Kernel Programming or Device Driver programming ???

I have to make a project on Operating Systems.
I have four topics:
1. Real Time OS
2. Device driver programming
3. Kernel Programming
4. File System Programming

Should one program them in C# or stick only to C/C++ ??

Please Help !
:confused:

No, C# is not recommended for these things. You can do them (MS released a OS written in C#) but there are issues with .NET that can occur when you make system software (has to do with versioning and the way .NET loads assemblies) on Windows based systems.

There's another operating system called "Cosmos" that is written in C#, although I think it just converts the C# to Assembly and compiles that. I'm not exactly sure how the thing works at all. :D Maybe it's something worth looking at?