ea at iol.it
Sun Oct 9 22:14:52 CEST 2005
Casper Hornstrup wrote:
>>From: ros-dev-bounces at reactos.org [mailto:ros-dev-bounces at reactos.org] On Behalf Of Max Well
>>Sent: 9. oktober 2005 21:00
>>To: Jason Filby; ReactOS Development List
>>Cc: ea at reactos.org
>>Subject: Re: [ros-dev] FreeWin95
>>I think he wants to say, that we stick to close with Windows.
>>ReactOS really looks like a clone of Windows NT and doesn't have many
>>In my oppinion he is right, maybe we should create something innovative,
>>that is intuitive and compatible to Windows NT, but doesn't clone the
>>Maybe we should think of a redesign of the UI, but at the moment I think
>>the kernel should have a higher priority.
>No one has said you can't be innovative, but you have to be realistic. Inventing
>a whole new super-optimized driver model or a new user interface that makes users
>more productive isn't easy and requires a lot of resources to do. So what do you want?
>An OS that does more of what people have come to expect from a modern OS or an OS
>that does much less of that and something in a completely new way. You can't do both
>since ReactOS has limited resources like any other software project.
You are perfectly right about resources.
But where is ReactOS innovative?
- drivers: it is binary compatibile with NT 4.0: it clones a Microsoft
- ntoskrnl interfaces: it is binary compatible with NT 4.0, 5.0, 5.1,
5.2...: it (will) clone a Microsoft product
- UI: it (will) look like Windows 95, 98, NT 4.0, 5.0...: it (will)
clone a Microsoft product
- libraries: they will match interfaces in NT 4.0, 5.0, 5.1, 5.2...: it
(will) clone a Microsoft product
- services: ...
But cloning and beeing binary compatible there is the right choice. I
repeat it: it is good and right. No changes needed: make it work just
like the other one.
The CSR is the only point in the design of NT where we could add
something new, or - let me word it better - put back something Microsoft
removed. Cloning the crippled CSR Microsoft sells now would produce a
perfect clone of - say - Windows XP. Well, if I want Windows XP now I go
in a computer shop and buy it. But what if the CSR could run - say - the
Linux usermode kernel? Linux gets in a snap a multithreaded packet based
kernel and thousands of free and commercial drivers. Would you then go
in the shop to buy a Windows XP that can not run Linux? Or would you
download the latest Fedora ISO that can't run Windows programs? A
generic CSR is the worst nightmare Microsoft, Sun, Apple etc. dream of
every night. Every time you invent a more general/universal tool, that
is a tool that is more abstract than you competitor's, their market
shrinks and they eventually disappear. Look at film cameras and digital
cameras, for instance.
What would be the equivalent, in the OS field, for the digital cameras?
Look at Mac OS X: does its design teach us something?
But going back to the resources, what if Microsoft completely changes
the APIs or if the Microsoft monopoly declines? Could the ReactOs\WinE
developers keep pace with them or with the new king?
To close my noise, I quote a teacher of mine: "abstraction is the key of
Computer Science". When you clone you do a 1:1 mapping with no abstraction.
Oh, Casper, about forgetting it! I really like rbuild: it is an
abstraction of make.
More information about the Ros-dev