Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I know there are a lot of questions like this, but I certain this one is rare. I am a computer programmer who wants to take on the challenge of building an operating system. I want to base it on Unix because I know that what I make could never compare. Where can I find Unix? I don't mean things like Mint (that's Linux, I know). I mean the thing they are all based on. Where can I get the main files, like the boot loader and the kernel?

share|improve this question
1  
You could get a simulator and start coding in C and assembler (as an example, what I did, years ago). This is a common project found in Computer Science educations around the world; perhaps you could single out that course, and join it. –  Emanuel Berg Nov 10 '12 at 3:16

5 Answers 5

up vote 0 down vote accepted

Maybe you're interested into xv6; Xv6 is a teaching operating system developed in the summer of 2006 for MIT's operating systems course. There are also many resources on UNIX OS.

If you want to know more about bootloaders, Operating System Development Series is a nice place to start.

share|improve this answer

Linux is the kernel. You can download it at kernel.org.

There are several boot loaders, but the best known one is Grub.

To clarify the confusion, Mint is a Linux-based distribution. It is Linux, plus the GNU Compiler Collection, the X Window System, and 1,000s of other programs all rolled together into an operating system.

Perhaps before developing your own operating system, you should start with Linux from Scratch to better understand the pieces involved.

share|improve this answer
    
The question seems to be about building an OS from scratch; LFS is about building a (new) Linux distribution from scratch. For example if @Justin wanted a "JustIX" distro of Linux to complete with Mint, rather than actually developing a kernel separate from Unix/Linux, while at the same time building on the knowledgebase and legacy of Un*x. –  michael_n Nov 10 '12 at 12:41

Unix is actually a trademarked name for that operating system and the core specification is here: http://www.unix.org/ . Linux is not Unix but only modeled after it in part. FreeBSD is a direct descendent of Unix though a lot has been changed since its inception.

In order to be called Unix, you must apply for certification. Apple's OSX is certified Unix.

share|improve this answer

If learning, then I wouldn't start with a modern/complete/working/real-world OS like Linux. Bookmark that, though & come back to it in a second pass. To begin with, there's too much going on there to for learning kernel internals. (There's a reason we begin C programming with "helloworld.c" and not "gcc.c").

Rather, start with a for-educational-purposes kernel that demonstrates the key components of a microkernel, e.g., minix . ...And the (intertwined) history of Linux, Minix and Unix is interesting to learn as part of your research project, as no OS lives in a bubble (not even plan9).

share|improve this answer
1  
I second the recommendation to have a look at Minix, and its accompanying text. –  dubiousjim Nov 10 '12 at 15:26

To a newcomer, the tone of some of the answers almost suggests that Linux has nothing to do with Unix.

This is of course not so. Some examples:

The "x" in Linux refers to Unix.

A Linux distribution typically comes with X - developed by MIT, and present all around the Unix world.

It also comes with the zillion GNU tools. Although GNU is not Unix, the ambition was to create an alternative Unix-compatible system (that's why so much look the same).

If you want more handfast evidence, just type ls /!

(You could think of a lot more.)

The reason it is not officially Unix is that it is expensive to acquire that status, and it would require lots of overhead and adaptation to conform to every detail of the standard. Better to focus the money and effort to improve the technology, build the community infrastructure, and so on.

There is not one Unix but many, and in all that matters, Linux is one of them. Computer OS:s grow like a tree with many branches: some are thick, some thin, some fall off, etc., but it is all interconnected in one way or another, and it doesn't evolve along a straight line.

share|improve this answer
1  
No. There is only one Unix. Linux is not one of them and there are not many Unixes. There are many Unix-like systems, and Linux is one of them, but just having some of the same tools as Unix does not make one a Unix. –  Rob Nov 10 '12 at 19:39
    
@Rob: OK, let's agree to disagree. I think that distinction is silly (Unix-like) and I think it is a great understatement to talk about "some of the same tools". Just pick up any book on Unix and test what you read on your modern Linux distribution. –  Emanuel Berg Nov 10 '12 at 19:46
    
Hardly silly at all. Some, today, claim Linux is moving further away from "the Unix way". That it is less Unix-y than before. Was Lindows Windows if you know remember that? Close counts in horseshoes so it's up to the OP to determine if Linux is close enough to what he wants but he wanted Unix and Linux is not Unix. –  Rob Nov 10 '12 at 20:40
    
@Rob: "Linux is not Unix" is correct in one sense, but to a newcomer, it sounds like "Mexico is not the USA". And those are not at all analogous. If anything, Linux is all the Latinos, living in Unix-USA! I think this point is much more important to make, than the categorical, "correct should be correct" statement "Linux is not Unix". –  Emanuel Berg Nov 10 '12 at 23:40
    
i remember year-long debates on terminology and "unix-ness" (back in comp.unix.*)... agreeing to disagree is a good idea. But, Rob is correct :-)) The distaste for the verbosity of "unix-like" led to the moniker "Un*x"; plus, "Unix" is a registered trademark, and most of us scruffy-beard types don't care for terms or software that restricts use. So please forgive us (old dogs) our persnickety tendencies. And to all noobs: know what is unix vs linux, just to save yourself the flames in all the forums out there less hospitable than this one. –  michael_n Nov 12 '12 at 12:24

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.