Yes, it can be done - see Singularity , which is (was) a Microsoft research project for creating a fully managed operating system in "Sing #" (an extended version of "Spe #", which itself is an extension of C #). It is worth emphasizing that this was just a research project into the concept and was never intended as a โcompleteโ operating system like Windows or Max OSX.
The source code is available on CodePlex - you can download the code, create it and run it yourself in the emulator (Iโve done it myself, well documented and relational, although I donโt remember the exact steps).
Parts of the system were written in the / C assembly, in particular, the bootloader and the codec for sending interrupts with a minimum x86 level, but this is essentially all, but inevitable (by its nature it is very platform dependent - you need to write x86 instructions for control and response on basic hardware). Low-level interrupts are also not particularly interesting in terms of the functioning of the operating system, so I personally do not consider this a hoax of a "fully managed" definition.
There are also 5-6 similar projects on the Wikipedia page for Singularity, including Cosmos and a couple of similar attempts that use Java instead of C #.
The focus of Singularity OS was security and dependency, but it is also impressive that according to some basic criteria in Singularity1 Project Overview (PDF) , their archeology performance was actually comparable to the characteristics of other "more traditional" operating systems:
... these numbers demonstrate that the architecture we are invited to not only not incur a performance penalty, but often as fast or faster than the larger conventional architecture. In other words, this is the practical basis for creating a system.
source share