A learning operating system to get a deeper knowledge in the system software design
Find a file
2013-11-12 09:23:21 +01:00
arch/x86 remove obsolete code 2013-11-12 09:23:21 +01:00
documentation add howto 2013-11-09 00:21:41 +01:00
include/eduos remove typo 2013-11-12 08:51:35 +01:00
kernel add the "smallest" HelloWorld of the world 2013-11-08 17:22:37 +01:00
libkern add highly tuned assmbler functions for basic string operations 2013-11-08 22:06:07 +01:00
.gitignore add the "smallest" HelloWorld of the world 2013-11-08 17:22:37 +01:00
Doxyfile remove typo 2013-11-09 00:35:29 +01:00
link.ld add the "smallest" HelloWorld of the world 2013-11-08 17:22:37 +01:00
Makefile.example add tag to create documentation 2013-11-09 00:25:25 +01:00
Makefile.inc add the "smallest" HelloWorld of the world 2013-11-08 17:22:37 +01:00
README improve guidance 2013-11-08 21:42:15 +01:00

Requirements of eduOS
=====================

1.) Currently, eduOS supports only x86-based architectures.
2.) Following command line tools have to be installed:
    make, gcc, binutil, git, qemu, nams, gdb
3.) The test PC has to use grub as bootloader.

Building eduOS
==============

1.) Copy Makefile.example to Makefile and edit this Makefile to meet your individual convenience.
2.) Copy include/eduos/config.h.example to include/eduos/config.h and edit this config file to 
    meet your individual convenience.
3.) Build kernel with "make"

Start eduOS via qemu
====================
1.) Install qemu to emulate an x86 architecture
2.) make qemu

Boot eduOS via grub
===================
1.) Copy eduos.elf as eduos.bin into the directory /boot. (cp eduos.elf /boot/eduos.bin)
2.) Create a boot entry in the grub menu. This depends on the version of grub, which is used by 
    the installed Linux system. For instance, we added following lines to /boot/grub/grub.cfg:

   ### BEGIN /etc/grub.d/40_custom ###
   # This file provides an easy way to add custom menu entries.  Simply type the
   # menu entries you want to add after this comment.  Be careful not to change
   # the 'exec tail' line above.
   menuentry "Boot eduOS!" {
          multiboot       /boot/eduos.bin
          boot
   }