Page 1 of 1

Requirement Tree

Posted: Tue Jun 24, 2014 5:59 am
by cjh94kr
I want to create the functional requirements tree.
For example, the IDT in order to receive interrupts is required.
After the implementation of the IDT can be read from or written to the hard disk.

if you want to participate, please notify to me. it may be a page of the site or wiki.
This will be a simple, but quite useful to write codes.

-----------------------------------------------------------------------------------------------------
example)
-----------------------------------------------------------------------------------------------------

.....................................................Multitasking
............................................................|
...............................---------------------------------------------
...............................|............................|...............................|
..........................Paging or...................Timer........................Handler for
.....................Memory manager............Interrupt...............controlling TSS Register

----------------------------------------------------------------------------------------------------

Re: the functional requirements tree?

Posted: Tue Jun 24, 2014 6:21 am
by Bender
Hi and welcome to OSDev.org :)
I don't see a point of writing such a list because:
1) We don't want to be just x86-PC oriented. If we have such a list we should also have lists for other architectures like ARM, PPC... and whatnot. This'll make the wiki a total mess.

2) Every OS is different in it's own way. We don't want people to limit the possibilities or do we? :) People going the UNIX-way and people who're implementing something else will have vastly different goals, this'll add up to the mess.

3) Hardware and software changes are happening every now and then (at least in the "non-x86" world), soon that huge collection of lists will become obsolete. However articles are easier to maintain as they focus on a specific concept unlike "TODO lists" which are supposed to summarise the entire thing hence reducing maintainability.

Unlike a "TODO list" we do have a page that can give you different ideas/styles for your operating system.
http://wiki.osdev.org/What_order_should ... _things_in
edit: We had an old thread like this: http://forum.osdev.org/viewtopic.php?f=15&p=209830
-Bender

Re: Requirement Tree

Posted: Tue Jun 24, 2014 6:23 am
by sortie
There still are very common things you want to do at the start of a kernel. I did begin work on a list of what to do when building an Unix if that is of interest.

Re: Requirement Tree

Posted: Tue Jun 24, 2014 8:55 am
by AndrewAPrice
This is very interesting, but like Bender said, it's really different to every OS.

If your first job is to get into protected or long mode, then there is a linear A->B process with logical steps. But then - a lot of people ask on this forum - what's next?

Which really depends - do you want to to work on a file system, multitasking, process loading, a nice user interface, networking? None are really dependent on the other, unless the way you've designed it in your OS is.

Some of us go completely unconventional routes. The first thing I started developing for my OS was a lexical analyser. I'm developing my OS as usermode components that I can test and debug, with platform specifics behind an interface, and plan to port it to bare metal once it's close to feature complete. When I look at my overall design, the platform specific stuff will only be a very small part of the code.

Re: Requirement Tree

Posted: Tue Jun 24, 2014 6:33 pm
by cjh94kr
The tree is for generic functional requirements.
When you create a function, it will shorten the search time.
because, it notify to the developers about where the required article is located, and how to build, what is required.