Robert Köpferl wrote:
Another issue which ea has brought up is that NT is somehow to "connected" to Win32. I beg to differ. I've spent a week working on a sample native application. It currently can display running processes, drivers, create a new process and create/delete/list files. Here are some screenshots:
http://members.tripod.com/WinAlOS/rtlcli.png http://members.tripod.com/WinAlOS/rtlcli2.png http://members.tripod.com/WinAlOS/rtlcli3.png
Note that there is no CSR, no win32k.sys loaded. NT is running in its rawest form. You need less then 16MB of memory (notice that the processes are using <1MB, the rest is up to the drivers, which you can disable) and about the same amount of diskspace. This works perfectly in Windows 2003 without any need to "separate win32".
Highly interesting. I'm just fascinated from that native app or the screenshots and what they show.
And many many quetions arise in my brain.
One is: Why are you talking so much of 2k3 in the latest time?
Because it's the best OS Microsoft has ever written.
Is there some real big design change occoured?
There were some big changes in IO/PnP regarding asyncronous device loading (almost all of the PnP code is now async, working on thread queues which process requests), and a lot of the kernel changed and became less polluted. Many algorithms were rewritten from scratch for better speed, such as the Heap manager.. the scheduler was completely redesigned too, as well as several parts of the dispatcher... and a lot more changes that aren't coming to my head now.
Can it live without csrss while priror versions couln't?
They all can. It's just that Win2k3 boots much faster so I chose it in qemu. However a lot of csrss became deprecated in 2k3, and even more in Vista. (some stuff in it was NT 3 stuff that really needed to die...)
That would be courious to me because MS pollutes and webs more and more together but separating each part cleanly.
Well, 2k3 DOES "pollute" ntdll with the Etw* stuff, which I think shouldn't be there.
Best regards, Alex Ionescu