Assembly Tutorial on Protected Mode:
http://my.execpc.com/CE/AC/geezer/os/pm.htm
http://www.faqs.org/faqs/assembly-language/x86/general/part1/section-13.html
http://x86.ddj.com/articles/pmbasics/tspec_a1_doc.htm
http://members.tripod.com/protected_mode/prashant/protmode.html
OS Development:
http://www.azillionmonkeys.com/qed/tech.shtml
http://www.osdev.org/osfaq2/
http://www.nondot.org/sabre/os/articles
http://www.nondot.org/sabre/os/files/Misc/vade.mecum.2.pdf
http://users.evtek.fi/~tk/rt_html/TOUR.HTM
http://www.osdever.net/bkerndev/index.php
http://www.osdever.net/tutorials/brunmar/tutorial_01.php
On executable file (ELF):
http://www.linuxjournal.com/article/1059
http://www.linuxjournal.com/article/1060
http://www.linuxforums.org/misc/understanding_elf_using_readelf_and_objdump.html
The best FAQ on OS development:
http://my.execpc.com/~geezer/temp/qna.txt
Showing posts with label operating system. Show all posts
Showing posts with label operating system. Show all posts
Tuesday, October 23, 2007
Monday, October 15, 2007
Prex - Real Time Embedded OS
Designed based on micro kernel architecture, Prex is targeted for embedded system application. It also follows the POSIX standard, so many applications can be easily ported to the os environment.
I decided to try it on qemu. The latest stable version is 0.3.0 (floppy image), while the current version is 0.5.0 (source).
Now, build the 0.5.0 source:
Now, after extracting prex-0.3.0.i386-pc.img.gz, we get prex-0.3.0.i386-pc.img. As a root, we have to modify /etc/mtools.conf, such that we emulate the image as the DOS a drive:
Now we replace the older 0.3.0 image with the new one using the mcopy command :
Now, we're ready to boot the image with the latest kernel version.
I decided to try it on qemu. The latest stable version is 0.3.0 (floppy image), while the current version is 0.5.0 (source).
Now, build the 0.5.0 source:
tar zxvf prex-0.5.0.tar.gzIt will generate an image file 'prexos' in the current directory. The image file is not bootable by qemu. In order to run it via qemu, we have to make use the available floppy image, and replace it with the latest version. Basically, the image file consists of bootsector.bin which is located in the first sector and the prexos image in the root directory. Meaning, we have to replace the prexos image from the latest stable 0.3.0 with the recently compiled 0.5.0.
cd prex-0.5.0/
./configure --target=i386-pc
make
Now, after extracting prex-0.3.0.i386-pc.img.gz, we get prex-0.3.0.i386-pc.img. As a root, we have to modify /etc/mtools.conf, such that we emulate the image as the DOS a drive:
kedit /etc/mtools.conf &Replace
drive a: file="/dev/fd0" exclusivewith
drive a: file="[directory of the floppy image]/prex -0.3.0.i386-pc.img" exclusive
type o (overwrite).cd prex-0.5.0/
mcopy prexos a:
Long file name "prexos" already exists.
a)utorename A)utorename-all r)ename R)ename-all o)verwrite O)verwrite-all
s)kip S)kip-all q)uit (aArRoOsSq):
Now, we're ready to boot the image with the latest kernel version.
qemu -fda prex-0.3.0.i386-pc.imgHere's a screenshot:

Subscribe to:
Posts (Atom)