Post an entry

Location: India - Posted August 17, 2012 7:23 pm
Website - Email: c [dot] rajiv [dot] chandel [at] gmail [dot] com

Rajiv Chandel

I am so happy to see that you are working on this, truly a teacher!

Location: Berkeley - Posted May 14, 2012 5:53 am
Website

Vedant

Thank you, this is a wonderful project.

Location: DNFHmbNtYjHrbesFuH - Posted December 6, 2011 11:36 am
Website - Email: y [dot] skihos [at] suse [dot] de

Amory

Keep on wriintg and chugging away!

Location: Sweden - Posted July 16, 2009 7:04 pm
Email: mcz [at] linuxmail [dot] org

Peter H

Thank you for a nice and well commented 64bit OS starter code

Posted July 13, 2009 10:22 am

Ian Jack

Tom. Firstly, sorry for not replying earlier - I've been a bit busy with other things. Really, the best advice that I can give is read, read, read. There is a ton of information on the net if you trawl for it. If you're looking for 32-bit infor the 32-bit OS book that I mention is excellent (but, I think, now out of print).

Otherwise, you just have to persevere. What seems impossible at first eventually starts to make sense and the more complete your system the easier it becomes. Those first stages - from boot to a system that actually does something - are the most difficult.

These things aren't easy - but they'd be no fun if they were!

Posted July 1, 2009 1:38 am
Email: dct6412 [at] yahoo [dot] com

Tom

This website is the closest thing I've found to what I've been looking for, but I don't understand it yet.

My idea is to have only a few components in a system. I want to write a small BIOS/OS which can write and read to any memory location based on input from the serial/COM port. I envisioned the commands to be simple (e.g. "w 00fff 0008" to write the value of 8h to memory locatoin 00fff" or "r 00fff" to display the value of memory locaton 00fff). I want to read and understand every single instruction along the way so it is necessary to start with a ROM image that is as small as possible.

At first I only want to support the memory and a serial/COM interface. I do NOT want to support a keyboard, mouse, network, disk drive, video or anything else. Just a basic interface to understand the process from CPU reset/turn-on to a running program that can't even be called a real operating system. It'd be computer hardware and I'd have taken control of it so it'd be doing what I want.

I found SIMNOW and downloaded it - I'm running it on Vista and it works. My first day I started getting errors because I have no BIOS or memory image (although the workspace GUI shows the basic devices and their connections).

I want to document my progress and eventually hit the more complicated milestones:

a) write to multiple memory locations
b) fetch two values from memory, operate on the values, write to a third location and finally read that location and verify correct operation.
c) enable keyboard function - type a key to see it echoed over the serial/com i/o
d) enable vga with a driver - type a key to see it echoed over the display

etc, etc, etc. One small baby step forward at a time documented clearly with diagrams and pictures.

Any advice for a new BIOS/OS enthusiast?

Thanks!
My idea is to have only a few components in a system. The CPU <-> northbridge <-> memory <-> southbrdige <-> ROM (for BIOS) with an additional connection from the southbridge to a serial/COM port.

I want to write a small BIOS/OS which can write and read to any memory location based on input from the serial/COM port. I envisioned the commands to be simple (e.g. "w 00fff 0008" to write the value of 8h to memory locatoin 00fff" or "r 00fff" to display the value of memory locaton 00fff).

That's it at first - no keyboard, mouse, network, disk drive, video or anything else. Just a basic interface to understand the process from CPU reset/turn-on to a running program that can't even be called a real operating system. It'd be computer hardware and I'd have taken control of it so it'd be doing what I want.

I found SIMNOW and downloaded it - I'm running it on Vista and it works but I started getting errors because I have no BIOS or memory image (although the workspace GUI shows the basic devices and their connections).

I want to document my progress and eventually hit the more complicated milestones:

a) write to multiple memory locations
b) fetch two values from memory, operate on the values, write to a third location and finally read that location and verify it worked.
c) enable keyboard function - type a key to see it echoed over the serial/com i/o
d) enable vga with a driver - type a key to see it echoed over the display

etc, etc, etc. One small baby step forward at a time documented clearly with diagrams and pictures.

Any advice for a new BIOS/OS enthusiast?

Thanks!

Posted April 4, 2009 1:17 pm

Ian Jack

Kailas - Thanks for your comments. I've loved playing with assembler ever since my first 6502 computer. Since then I've played with 6809, Z80, 8086, x86, x86_64, PPC, and ARM. It's great fun; but it can be a little difficult getting information on the other hardware in one's computer!

Location: Mumbai - Posted April 3, 2009 7:32 am
Email: kvshetye [at] yahoo [dot] com

Kailas Shetye

a really nice project. I remember the efforts I had put to write a code in assembler to put machine in 32bit and just to display a string after that.

dont know if this will be useful to emulate some other processor and boot a different os. still thinking if this can be done using ur project.

Posted March 20, 2009 11:21 am

Ian Jack

Abhijeet - the book by Burgess, that I mention in the documentation page, is a really good example of a more complete (32-bit) operating system. The other books, about OS X, Linux, and BSD are in-depth discussions of real operating systems for which the code is available. But they are rather heavy going.

I'm slowly getting round to improving the documentation, and I'll look to improve the system in the future, but it's just a hobby so I can't devote all my time to it!

Ian

Posted March 17, 2009 6:27 am
Email: abhijeetnayak [at] yahoo [dot] com

abhijeet nayak

Hello,
I am very interested in OS design and implementation. I want to build my small learning OS. I have completed the Galvin theory book. Now where should i look further?

It would be nice if you can add more documentation on your site for learning.

thanks
abhijeet nayak

Page 1 of 2   Next »   

[ Login ]

Script by Dagon Design