[ros-dev] FreeWin95

Emanuele Aliberti ea at iol.it
Sun Oct 9 22:14:52 CEST 2005


Casper Hornstrup wrote:

>  
>
>>-----Original Message-----
>>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
>>new features.
>>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
>>whole UI.
>>Maybe we should think of a redesign of the UI, but at the moment I think
>>the kernel should have a higher priority.
>>
>>Greets,
>>
>>David Hinz
>>    
>>
>
>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.
>
>Casper
>
>
>
>  
>
You are perfectly right about resources.

But where is ReactOS innovative?
- drivers: it is binary compatibile with NT 4.0: it clones a Microsoft 
product
- 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.

-- 
:Emanuele Aliberti



More information about the Ros-dev mailing list