Page 1 of 1

Simple OS recommentation (?)

Posted: Sun Feb 11, 2007 12:37 am
by karampin
Hi, I am a new member of this forum and I have little experience on OSs development. I would like to ask you, suggest me a simple, open source unix-like operating system to study its code. It is important for me to start up with something simple and short as far as its code is concerned.
Thanks in advance.

Posted: Sun Feb 11, 2007 1:21 am
by jvff
Obvious choices: Linux (although it's so big and complex you'd only want to study parts of it, and still you'd have to learn a lot to find those parts), and Minix (the original Unix like OS developed for students to study) and how Minix evolved to it's current form (Minix 3, IIRC), and the BSDs (also similiar situation as Linux, although I suspect them to be smaller and slightly more organized). Other than that, lots of OS projects aim to be POSIX compliant, you can gather bits and pieces from them, and even stuff from non POSIX OSs, since most of POSIX stuff are implemented anyway, with various degrees of "innovation" and "modification". Hope this helps,

JVFF

Posted: Sun Feb 11, 2007 2:50 am
by pcmattman
What do you mean by simple? If you mean like a 'Hello World' example than you could find one in the Wiki. If you mean something more complex than that, than the kernels mentioned above would be suitable.

I hope you don't get discouraged in your OS devving - welcome to the forum!

Posted: Sun Feb 11, 2007 3:39 am
by Cheery
They say Plan 9 from Bell Labs would be great. I've been planning to confirm that someday.

Posted: Sun Feb 11, 2007 7:21 am
by Alboin
There's UnixLite which is a small Unix clone written in C++, and has binary compatibility with Linux.

Posted: Sun Feb 11, 2007 8:52 am
by Brynet-Inc
There is MortOS.. It's a neat project with a UNIX-like feel, It already has binutils ported (and running) natively, Along with pdksh/ncurses and lots of other goodies with a considerably Tiny kernel..

http://www.mort-os.com/

But quite a few OSDev projects out there offer a system with a "UNIX-like" feel, Should take a browse around to find one you like.

Posted: Sun Feb 11, 2007 10:38 am
by ThatGuy
Linux kernel 0.01 is pretty small.

Posted: Sun Feb 11, 2007 6:41 pm
by karampin
Well, first of all thank you for your anwers.
I think its minix the OS I will start up with studing since it is created for such purposes and it seems to be well documented ( I am talking about Tanebaum's book ). Actually I did my first post after reading this page where I realized that there are more OSs to study than I could imagine. Of course not all of them are proper for my needs but I saw lots of other candidate hobby- and university- OSs that could also be suitable for me.
Actually I was looking for something small, simple, and well-organized as far as its source code is concerned.

- karampin -

Posted: Sun Feb 11, 2007 8:35 pm
by Crazed123
I'd go so far as to say that too many operating systems are Unix-like.

Posted: Mon Feb 12, 2007 9:21 am
by Brynet-Inc
Crazed123 wrote:I'd go so far as to say that too many operating systems are Unix-like.
That sounds like something a windows user would say :wink:

There will never be enough Unix-like systems.

Posted: Mon Feb 12, 2007 10:16 am
by Colonel Kernel
Brynet-Inc wrote:
Crazed123 wrote:I'd go so far as to say that too many operating systems are Unix-like.
That sounds like something a windows user would say :wink:
Or someone interested in OS research.
There will never be enough Unix-like systems.
On what basis do you say this, other than mind-numbing fanboyism? If you don't have anything intelligent to add, stop wasting everybody's time.


Back to the topic... Minix is a pretty good choice for understanding how things work at the implementation level, but remember that it is not a good example of OS design. No other microkernel OS I know has used the idea of architectural layers in such an arbitrary and performance-limiting way.

Posted: Mon Feb 12, 2007 10:39 am
by karampin
Colonel Kernel wrote: Back to the topic... Minix is a pretty good choice for understanding how things work at the implementation level, but remember that it is not a good example of OS design. No other microkernel OS I know has used the idea of architectural layers in such an arbitrary and performance-limiting way.
So what would you recommend me as second choice ? Maybe something more common and *orthodox* as far as it's design is concerned.
I hope, I am not becoming annoying asking in some sort the same question.
Thank you again.

- karampin -

Posted: Mon Feb 12, 2007 3:55 pm
by Crazed123
Brynet-Inc wrote:That sounds like something a windows user would say :wink:
And that sounds like something a hopeless Unix fanbody who isn't quite ready for operating system design would say.
There will never be enough Unix-like systems.
Unix is a weak pun on Multics, or possibly the plural of "man without his genitalia".

But to speak seriously... Unix was designed 30 years ago as a stripped-down Multics that could run on a PDP-7. It spread like a virus because C made it portable, and later the open-source movement copied the only decent-and-free OS design available, letting it survive even longer. Now it keeps creaking out of sheer inertia.

Unix attempts to treat everything as files (except what it doesn't), has a coarse security model that concentrates too much power into one user account, keeps far too many abstractions in-kernel, requires a crock called sockets for network access, has no truly good IPC facilities, and imposes its damned worldview on every other operating system out there.

The day Glider (my OS) is ready for everyday use, I will remove Linux from my hard drive.