just because i am a crazy nut and i always wanted to do this... i have an OS running, almost completely written in C, using a preemptive multitasking scheduler. it has 4 virtual terminals, inter-process communication, pipes, memory management, kernal filesystem access, a proper shell etc ... i am now experimenting with UIP. ... we'll see
i doubt it will turn into much more than "look i can do this", but then again i couldnt care less =D (it was a nice learning exercise afterall)
btw right now there are ~20k free memory without UIP loaded. a statically linked app+uip (the examples from uip) can run in this fine. (and the telnet server "hello world" thing already works)
overall the whole thing is much like lunix... just a bit "heavier" .i implemented a bunch of features, like heap allocation owner tracking, which arent really needed for the OS to function, but are very very useful for debugging the whole mess (once you are dealing with multitasking it becomes a lot more "interisting" to debug =P)... i guess all that stuff can be disabled for a "production" build later at some point. (that will also increase free memory quite a bit) and another BIG plus over lunix is, that the whole thing is built with cc65 in mind, so apps can be made very easily and without all the shortcomings involved when making apps for lunix.