LinuxQuestions.org
Review your favorite Linux distribution.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 08-26-2002, 10:09 AM   #1
Shak
Member
 
Registered: May 2002
Location: Huddersfield
Distribution: Redhat (7.2, 7.3, 8.0), Debian, Slackware, Gentoo, FreeBSD
Posts: 169

Rep: Reputation: 30
OS Design


Hi,

I have been looking for a major project to extend my knowledge of the C/C++ language and as a sort of hobby so I dont spend hours messing on my PC without an aim. I also enjoy coding. The reason I am choosing to write an OS kernel is simple, to see if I can. I am not hoping to get it widely used, I dont know if even I will use it, but I enjoy a challenge. I am hoping to write the kernel essentially on my own and will keep if as basic as possible. I am hoping to cover the following areas:

- Text output to a monitor
- Sound output
- Keyboard input
- Disk Read/Write
- Exploitation of the x86 processor family's features

I am not aiming very high, and I will use others code to learn, in the true spirit of the GNU GPL. I wont be looking for much help overall as I am looking on the whole to code the OS kernel myself. I have some ideas about how I want it to work, and how the overall structure will work.

Therefore, I am trying to source the following to read up on the design of an operating system kernel:

- The book that was written on minix as an instruction to students. I would appreciate this if it was free, and did not cost me anything to source. I believe that the book is called "Operating Systems: Design and implementation". I know for a solid fact that the book I am looking for is written by Andrew Tanenbaum. It shows how a simple OS works by looking at Minix and its source code.

- The source code of GNU/Linux 0.1 - 0.95 (I know there are only a few revisions as Linus thought that 1.0 would be ready sooner than it was). I would also like a copy of Linux 1.0 code.

- Information on POSIX/Unix/*nix OS standards and any other OS standards.

- Information on how the Modules system of the GNU/Linux kernel works, and how the modules run: eg. are they seperate processes or are they just added source code, like a patch.

- A short stretch of information on what special features C or C++ have on interfacing with the hardware of a PC. As I will need to run my environment as the sole interface with the hardware.

- Information on porting of the following tools, this is so I can "design" my project to fit them:

1. BASH (or any other shell)
2. pico/nano
3. Basic GNU tools- cp, mv, ls
4. Possibly GCC. gcc will be an addon as I heard it was around 500,000+ lines of code

Basically the most important aspect is the book by Andrew Tanenbaum as I believe that reading this could give me a little more information into the ways that it should be coded, the C/C++ functions are also a major need.

Thanks to anyone that can help me source these, it will be greatly appreciated.

Q: "Why do that?"
A: "Because I can"

Greetings,
Shak - shak@linuxmail.org
 
Old 08-26-2002, 01:37 PM   #2
Mara
Moderator
 
Registered: Feb 2002
Location: Grenoble
Distribution: Debian
Posts: 9,696

Rep: Reputation: 232Reputation: 232Reputation: 232
Re: OS Design

Quote:
Originally posted by Shak

- The book that was written on minix as an instruction to students. I would appreciate this if it was free, and did not cost me anything to source. I believe that the book is called "Operating Systems: Design and implementation". I know for a solid fact that the book I am looking for is written by Andrew Tanenbaum. It shows how a simple OS works by looking at Minix and its source code.
You may look at this:
http://www.cs.nyu.edu/cs/dept_info/c...pr97/G22.2250/
and
http://www.cs.vu.nl/~ast/minix.html

I can't find a link to the famous Tanenbaum's book.

Quote:
- The source code of GNU/Linux 0.1 - 0.95 (I know there are only a few revisions as Linus thought that 1.0 would be ready sooner than it was). I would also like a copy of Linux 1.0 code.
www.kernel.org
All versions are there.
Quote:
- Information on POSIX/Unix/*nix OS standards and any other OS standards.
This may be interesting:
http://pasc.opengroup.org/links.html
Quote:
- Information on how the Modules system of the GNU/Linux kernel works, and how the modules run: eg. are they seperate processes or are they just added source code, like a patch.
In Linux kernel?
Quote:
- A short stretch of information on what special features C or C++ have on interfacing with the hardware of a PC. As I will need to run my environment as the sole interface with the hardware.
C and C++ don't have special features for PC hardware. For this part I suggest assembler.
Quote:
- Information on porting of the following tools, this is so I can "design" my project to fit them:

1. BASH (or any other shell)
2. pico/nano
3. Basic GNU tools- cp, mv, ls
4. Possibly GCC. gcc will be an addon as I heard it was around 500,000+ lines of code
They'll run every POSIX system (or nearly every). I think you need to browse their documentation for details.

Last edited by Mara; 08-26-2002 at 01:38 PM.
 
Old 08-26-2002, 04:12 PM   #3
Hko
Senior Member
 
Registered: Aug 2002
Location: Groningen, The Netherlands
Distribution: Debian
Posts: 2,536

Rep: Reputation: 111Reputation: 111
Re: OS Design

Quote:
- Information on how the Modules system of the GNU/Linux kernel works, and how the modules run: eg. are they seperate processes or are they just added source code, like a patch.
They are more like 'just' added binairy code. To some extend comparable to dynamically linked libs.

Last edited by Hko; 08-26-2002 at 04:13 PM.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Linux for Graphic Design, web design, and publishing maelstrom209 Linux - Software 8 07-17-2011 11:35 AM
GUI design kshaffer Programming 1 10-31-2004 04:14 AM
web design Tod_Con Linux - Software 3 10-03-2004 06:45 PM
Design question blmack44 Linux - Hardware 1 08-22-2004 10:05 AM
how can i change my design ? lolinux Linux - Newbie 3 10-21-2003 07:43 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 08:48 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration