If ReactOS was a house would it look like this?

If it doesn't fit anywhere else, drop it in here. (not to be used as a chat/nonsense section)

Moderator: Moderator Team

Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

If ReactOS was a house would it look like this?

Post by Witch »

If ReactOS was a house building project would it look like this?
Where the foundation is layered in this order before you can place the house on the ground.

1. Kernel
2. Drivers
3. APIs
4. Softwares

Did I miss any important group, or misinterpret something in the list?

[ external image ]
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: If ReactOS was a house would it look like this?

Post by vicmarcal »

Talking about Houses and Buildings, i posted yesterday an abstraction of an OS being a Building.

http://reactos-blog.blogspot.com/2009/0 ... cture.html

This is an abstraction, so coincidence with any OS is almost imposible :) Developers dont kill me!! :)
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Once I watched how people repaired an old wooden house. They lifted the walls on jacks, removed the lowest ‘rotten’ row of beams, and raised the foundation with bricks.

This is what should be done with ReactOS. A lot of rotten code should be thrown away and replaced by something more solid.
gabrielilardi
Moderator Team
Posts: 873
Joined: Sat Sep 02, 2006 1:30 am
Location: Italy

Re:

Post by gabrielilardi »

hto wrote:This is what should be done with ReactOS. A lot of rotten code should be thrown away and replaced by something more solid.
ehhh... hmmm.... you couldn't hold it anymore I guess hto... :lol:
Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

Re: If ReactOS was a house would it look like this?

Post by Witch »

Since nobody has complained about my picture's correctness yet, I'm assuming it's somehow useful for my little antics.
Look I think it's really important for the ReactOS project to have some sort of software metric you can use. In order to explain how an operating system is built and how many pieces of LEGOS you have to "order" to complete the building project.

I'm not talking about using sophisticated measuring techniques described in the wiki.
I'm talking about formulating a simple (but not naive) metric that you can use and explain to a 5-year-old kid. However the wiki did say something that I think is very true.

http://en.wikipedia.org/wiki/Software_metric
A software metric is a measure of some property of a piece of software or its specifications.

Since quantitative methods have proved so powerful in the other sciences, computer science practitioners and theoreticians have worked hard to bring similar approaches to software development. Tom DeMarco stated, “You can’t control what you can't measure.”[1]

Modern software development practitioners are likely to point out that naive and simplistic metrics can cause more harm than good.[2]

Questions
  • Microsoft Windows XP consists of a set number of LEGO pieces (kernel, drivers and APIs) am I correct?
  • When ReactOS is considered stable enough for every day use and enterprise use. Will it have as many LEGO pieces as Microsoft Windows XP? (not counting various SP updates and fixes.)
  • If the amount of LEGO pieces between { Windows XP = ReactOS } isn't the same then how can that be explained to a 5-year-old kid?
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: If ReactOS was a house would it look like this?

Post by vicmarcal »

Well,my knowledge of NT architecture is limited but lets simplify.
First,you have to define the word "piece".From a global point of view there are 2 pieces:"user mode","executive mode".Then each of this pieces can be subdivided:in "user e" you can find "the posix subsystem" or the"win32 subsystem". Then you can find the "dlls" too,which can be divided n smaller pieces called APIs.And the APIS are created by C functions.
So where is the limit in the "piece" term?you can find a detailed overview/graphic in Windows internals and in Wikipedia.
Also all this pieces have its own importance inside the structure.
i.e: you can delete all the Posix Subsytem,and most of the users wont realize at all since most of the Apps are created for "WIN32K".
Now the "DLLS",there are basic DLLs whic are basic to work any app,while others are much more specific,if you arent going to use apps which needs these specific "DLLS" then you can work without them.And now,the "APIs",inside a dll there are apis,but not all of them have same importance,so you can have a DLL 60%finished and you wont notice it,but others you need a 100%implementation.
So evaluating percentages or pieces of acomplishment is really difficult.An example:our Posix subsystem is 0% implemented and most of the users didnt notice.
Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

Re: If ReactOS was a house would it look like this?

Post by Witch »

vicmarcal wrote:you can find a detailed overview/graphic in Windows internals and in Wikipedia.
Could you give me the links to the suggested overview/graphics? I'm not sure I'm looking at the same thing as you describe, my Kung Fu is weak :oops:

hto wrote:Once I watched how people repaired an old wooden house. They lifted the walls on jacks, removed the lowest ‘rotten’ row of beams, and raised the foundation with bricks.

This is what should be done with ReactOS. A lot of rotten code should be thrown away and replaced by something more solid.
What's measured improves.
—Peter Drucker

That's why I think having a solid metric, that a 5-year-old can understand is so important to the ReactOS project. Well, this is one of the reasons not the reason I'm working with though. But our goal is the same! Different roads same destination.
  • solid Metric = solid Foundation
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: If ReactOS was a house would it look like this?

Post by vicmarcal »

The link to the Nt architecture overview:
http://upload.wikimedia.org/wikipedia/c ... re.svg.png

Also there are others:
http://i.technet.microsoft.com/Cc768129 ... et.10).gif
http://oreilly.com/catalog/securwinserv ... s_0109.gif

As you can see the way of piecing the Lego is different but consistent.

There are many other diagrams, search them in Google :)

If you buy the Windows Internals 4th or 5th, there is explained and pieced the architecture :)
Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

Re: If ReactOS was a house would it look like this?

Post by Witch »

Thanks vicmarcal I think I'm gonna buy and spend the rest of the year with that book before I return with further stupid questions. :)
So if I a total newbie want to play around with ReactOS code in the future which book will be most helpful to me?
The latest edition have Server 2008 and Vista material in it which might confuse my learning or am I wrong?

[ external image ]
vicmarcal
Test Team
Posts: 2733
Joined: Mon Jul 07, 2008 12:35 pm

Re: If ReactOS was a house would it look like this?

Post by vicmarcal »

In my opinion there are 2 different books to read:

1) Operating System Concepts. This one is perfect to understand the basics (400 pages) of the OS-es, also there is a nice approach to the XP OS(and also to the Linux OS). Some coding skills are appreaciated.

2)Windows Internals 4th Edition (or 5th edition). 4th is more 2003 oriented, while 5th is more Vista oriented, but both will answer your doubts

EXTRA: 3)Wikipedia for those terms are "supposed" to know before reading Windows Internals 4th

You will have books for almost until the end of the year.More than 1000 pages of book. So dont come AFTER reading them or we will miss you ;)

:)
Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

Re: If ReactOS was a house would it look like this?

Post by Witch »

I bought Operating System Concepts 8th Edition and read Chapters 1,2, 22 and 23. Can't say that I understood what I read. But I think I'm ready for some new adventures.
vicmarcal wrote:First,you have to define the word "piece".
Hard to say I'm still not entirely sure how my definition of a piece is. I think the answer will come to me after some years hanging around this forum.

My quest is to find a metric but there are 2 kinds of metrics as I see it.
  • Micro metric
  • Macro metric
Micro metric
Micro metric is the kind of metric that Architects and Developers use when discussing ideas where they have to be precise.

Macro metric
Is the opposite metric, it's not precise and it's used for discussing ideas with non-technical people and tourists visiting the ReactOS planet.
I'm looking for the Macro metric only in case of any confusion. Think of this as the "Blizzard-it's-done-when-it's-done-metric" with an openness.



Questions:
  • Is it possible for one person to take responsibility for the User mode part or do you need to distribute this responsibility to several Captains?
  • Is it possible for one person to take responsibility for the Kernel mode part or do you need to distribute this responsibility to several Captains?
  • If Fireball the project leader one day would have 100 developers and decided to build HAL from scratch again. How would he divide the work for HAL so that people could build smaller pieces simultaneously for HAL? Before gluing all the neccessary pieces together into the complete HAL?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

Every part should have its maintainer; one person can maintain a few parts. Major parts, such as the kernel, should have maintainers for sub-parts, such as security manager, etc. HAL is small enough, so somebody can maintain it and something other at the same time.

Now, most of parts are like unowned land and that's not good…
unofficialforum
Posts: 32
Joined: Fri Nov 21, 2008 2:31 pm

Re: If ReactOS was a house would it look like this?

Post by unofficialforum »

i'm sure that ros is more like a machine than a building. i can't think of any sufficient metaphor you could build with legos, either. houses just don't have enough small interoperating parts to be a metaphor for developing a new os on the level that ros is being developed.

architects thought about building houses like machines for a minute. they're uncomfortable and leak, and not as easy to patch as it is for software companies.
Witch
Posts: 293
Joined: Thu Jul 24, 2008 12:30 pm
Location: Stockholm, Sweden
Contact:

Re: If ReactOS was a house would it look like this?

Post by Witch »

Yeah I've ditched the idea of using metaphors and analogies to describe ReactOS. Using the Windows XP block diagram will work the best I think as a Macro metric tool. Although the image from the book differs slightly and I can't show you guys. Because then the authors says that they will bring down hell on me, and I believe them. The book says that it wasn't intendend for American eyes. For sale in Europe, Asia, Africa and the Middle East only.

[ external image ]


Questions:

Anyhow I'm trying to slowly work my way up the Windows XP block diagram. Writing down mainly:
  • How many Architects and Developers each block requires to build efficiently?
  • In case a block is already finished how many years or months did that take to build? For Alpha, Beta and Stable phases.
  • So if I understood hto correctly the HAL lego piece can be built by 1 single person and doesn't require an army of developers to build?
  • If it only required 1 person to build HAL and HAL is complete today. How can I find out how many years and months it took to build HAL to Alpha, Beta and Stable phases?
hto
Developer
Posts: 2193
Joined: Sun Oct 01, 2006 3:43 pm

Post by hto »

That diagram does not show everything.

The question, how much time it will take to finish a component X, given N developers, is difficult to answer… Creating new components and fixing existing ones is required.
Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests