Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more ➡
Standard view
Full view
of .
Add note
Save to My Library
Sync to mobile
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
Developing Your Own 32 Bit Computer Operating System

Developing Your Own 32 Bit Computer Operating System

Ratings: (0)|Views: 2,834|Likes:
Published by api-26003092

More info:

Published by: api-26003092 on Oct 16, 2008
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See More
See less





Page 1 of 667
Richard A. Burgess
Previously published by MacMillan Publishing/SAMS Computer Books as
"Developing Your Own 32 Bit Computer Operating System"
Author: Richard A. Burgess
Copyright \u00a9 1995 Richard A. Burgess,
Copyright \u00a9 1999 Sensory Publishing, Inc. & Richard A. Burgess
All Rights Reserved
Portions of this electronic book were formatted with software produced by:

Adobe Corporation for the Acrobat Reader Version,
and Sensory Publishing, Inc. & Microsoft Corp. for theWo r d and HTML versions.
Copyright 1999, Sensory Publishing, Inc.

Please treat the electronic version of this book as you would a printed copy of any book.
You may pass this text on to another individual or institution when you are through with it
upon deleting your copy as if you no longer held a printed copy of the book.

No portion of this book may be made publicly available by electronic or
other means without the express written permission of Sensory Publishing, Inc.
Page 2 of 667

First of all, I thank all of you for the continued interest in MMURTL. When the first printed copies of this book
(then named Developing Your Own 32 Bit Computer Operating System) hit the bookstands, 32 bit was the buzz
word of the day. Five years later the buzzword is the New Millennium; 2000. But it still seems that operating system
development is a hot topic (look at Linux go! - you GO Mr. Penguin, you go!). Many people have tracked me down
to attempt to find more copies of the original edition of the book and I can tell you they are very scarce. Another
printing was denied by the original publisher which turned the rights to my book back over to me. Of the 10,000-
plus copies sold, I have 5 printed copies left (which needless to say, I\u2019m holding on to for sentimental reasons.). But
if you\u2019re reading this, the paper book itself isn\u2019t what you\u2019re interested in, it\u2019s the information in the book.

I had initially intended to put up a web site for everyone to share their MMURTL interests and findings, but little
things like "earning a living" - "kids in college, etc." kept getting in the way. A friend of mine (an entrepreneur at
heart) was itching to start another online business and I had always been interested in publishing - the not so simple
art of information dissemination - and I offered some technical assistance. Electronic publishing is a new art - or
science as some would lead you to believe.

I have not had much time to work on MMURTL since the book was first published. As near as I can tell, a few
people have been playing with it and it has been used mostly as a learning tool. Sensory Publishing is willing to put
up a section on their servers for a BBS (Bulletin Board System) for MMURTL and other books that they will
publish for those that want a place to exchange information and ask questions. I will try to make as much time as
possible to answer questions there, and I would also like to see everyone that has something to share about
MMURTL to add their two cents.

The book is being sold online in several unprotected formats which some people think is risky. I don\u2019t think so. I put
a little bit more faith in the human race than most. And besides, it will cut the cost of distribution in half and I may
actually be able to pay for all those computers and books I bought to support the original development effort - those
of you that think authors of books of this type make any money from them have a few lessons to learn. Of the
approximately one half million dollars the book grossed (between the publisher and book sellers - I got about $1.80
a book... pitiful. That translates to roughly 1/2 minimum wage for the hours invested to produce this book. That
hardly repays the creditors who will gladly lend you money to feed the "MEGAHERTZ habit" that is needed to stay
on top of the computing world. Remember when a 386 - 20 MHz cost $5000? I do, I bought one hot off the

assembly line to write MMURTL back in \u201883 (whoa - I'm getting old...).
Anyway, I hope you use MMURTL V1.0 to learn, enjoy and explore. You have my permission to use any of the
code (with the exception of the C compiler) for any project you desire - public or private - so long as you have
purchased a copy of the book. My way of saying thanks. The only requirement is that you give some visible credit
to MMURTL for the assistance with your project.

Most sincerely,
Richard A. Burgess
Alexandria Virginia, 1999

Page 3 of 667
Chapter 1, Introduction

Computer programmers and software engineers work with computer operating systems
every day. They use them, they work with them, and they even work "around" them to
get their jobs done. If you\u2019re an experienced programmer, I\u2019m willing to bet you\u2019ve
pondered changes you would make to operating systems you use, or even thought about
what you would build and design into one if you were to write your own.

You don\u2019t have to be Albert Einstein to figure out that many labor years go into writing a
computer operating system. You also don\u2019t have to be Einstein to write one, although I\u2019m
sure it would have increased my productivity a little while writing my own.
Unfortunately, I have Albert\u2019s absent-mindedness, not his IQ.

Late in 1989 I undertook the task of writing a computer operating system. What I

discovered is that most of the books about operating system design are very heavy on
general theory and existing designs, but very light on specifics, code, and advice into the
seemingly endless tasks facing someone that really wants to sit down and create one. I\u2019m
not knocking the authors of these books; I\u2019ve learned a lot from all that I\u2019ve read. It just
seemed there should be a more "down to earth" book that documents what you need to
know to get the job done.

Writing my own operating system has turned into a very personal thing for me. I have
been involved in many large software projects where others conceived the, and I was to
turn them into working code and documentation. In the case of my own operating
system, I set the ground rules. I decided what stayed and what went. I determined the
specifications for the final product.

When I started out, I thought the \u201cspecs\u201d would be the easy part. I would just make a list,
do some research on each of the desirables, and begin coding. NOT SO FAST THERE,

I may not have to tell you this if you've done some serious "code cutting," but the
simplest items on the wish list for a piece of software can add years to the critical path for
research and development, especially if you have a huge programming team of one

My first list of desirables looked like a kid's wish list for Santa Claus. I hadn't been a
good-enough boy to get all those things (and the average life expectancy of a male human
being wouldn't allow it either). Realizing this, I whittled away to find a basic set of

ingredients that constitute the real make-up of the "guts" of operating systems. The most
obvious of these, as viewed by the outside programmer, are the tasking model, memory
model, and the programming interface. As coding began, certain not-so-obvious

Activity (24)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
antony777 liked this
taekeuk liked this
Zarani Abu Bakar liked this
tsfacg liked this
shiyasha liked this
bluepearl1610 liked this

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->