Newsgroup: comp.lang.c


Date: Sat, 15 Apr 2006 15:56:18 +0300
From: Diomidis Spinellis <dds@aueb.gr>
Organization: Athens University of Economics and Business
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.1) Gecko/20060130 SeaMonkey/1.0
MIME-Version: 1.0
Newsgroups: comp.lang.c
Subject: Re: Build !!! kernel !!!
References: <1145105194.811299.306420@i39g2000cwa.googlegroups.com>
In-Reply-To: <1145105194.811299.306420@i39g2000cwa.googlegroups.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
kristian@zoznam.sk wrote:
> Do you ever tried to build your own kernel? What type of programming
> language did you use?
> I've heard there is a way to do that in C but I don't know HOW!
> If is it possible, can you recommend me some pages, documents or
> anything what is about it?

Operating systems are nowadays typically written in C, with some tiny 
sprinkling of assembly code for very low level functionality (e.g. 
initializing the processor's state).  Check out the following books:

- Andrew S. Tanenbaum. Operating Systems: Design and Implementation. 
Third Edition.  Prentice Hall, Englewood Cliffs, NJ, 2006.
(contains the complete source code for the Minix operating system)

- John Lions. Lions' Commentary on Unix 6th Edition with Source Code. 
Annabooks, Poway, CA, 1996.
(contains the complete source code of the 6th Edition Unix - this is 
more of historical interest).

- Maurice J. Bach. The Design of the UNIX Operating System. Prentice 
Hall, Englewood Cliffs, NJ, 1986.
(Discusses the design of the AT&T version of Unix)

- Marshall Kirk McKusick and George V. Neville-Neil. The Design and 
Implementation of the FreeBSD Operating System. Addison-Wesley, Reading, 
MA, 2004.

You can also freely download the source code for the Linux, FreeBSD, 
NetBSD, and OpenBSD kernels.

-- 
Diomidis Spinellis
Code Quality: The Open Source Perspective (Addison-Wesley 2006)
http://www.spinellis.gr/codequality



Newsgroup comp.lang.c contents
Newsgroup list
Diomidis Spinellis home page

Creative Commons License Unless otherwise expressly stated, all original material on this page created by Diomidis Spinellis is licensed under a Creative Commons Attribution-Share Alike 3.0 Greece License.