annotate README @ 157:8f3924b6076e

Added some code generator things
author Windel Bouwman
date Sun, 03 Mar 2013 18:14:35 +0100
parents e47bfef80baf
children
rev   line source
9
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
1 = Project goals =
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
2 * To write a microkernel sort of OS.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
3 * Write the kernel in C ('cos')
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
4 * Write a kernel in oberon like language and be able to compile this with the ide.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
5 * Create python scripts that form the major part of the OS.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
6 * Make IDE in python that can compile the OS.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
7
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
8 = Directory structure =
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
9 'os' contains the os written in oberon like language.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
10 'ide' contains the python3 qt4 ide to build the os.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
11 'cos' contains the os written in C and assembler.
92ace1ca50a8 64 bits kernel without interrupts but with printf in C
windel
parents: 1
diff changeset
12
1
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
13 = Software required =
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
14 * python3
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
15 * pyqt4
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
16 Optional:
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
17 * bochs
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
18 * nasm
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
19
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
20 = How to start the IDE =
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
21
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
22 $ cd ide
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
23 $ python runide.py
92df07bc2081 Initial import of compiler
windel
parents:
diff changeset
24
41
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
25 = About the C version of the OS =
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
26
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
27 To build the C kernel, enter:
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
28 $ cd cos
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
29 $ make
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
30
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
31 Running the OS with bochs:
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
32 $ bochs -q
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
33
43
e47bfef80baf Fixed build by commenting out initrd code
windel
parents: 41
diff changeset
34 Running the OS with kvm:
e47bfef80baf Fixed build by commenting out initrd code
windel
parents: 41
diff changeset
35 $ kvm -fda bootdisk.img
e47bfef80baf Fixed build by commenting out initrd code
windel
parents: 41
diff changeset
36 or:
e47bfef80baf Fixed build by commenting out initrd code
windel
parents: 41
diff changeset
37 $ qemu-kvm -fda bootdisk.img
e47bfef80baf Fixed build by commenting out initrd code
windel
parents: 41
diff changeset
38
41
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
39 required tools:
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
40 - bochs: for simulating the OS
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
41 - mtools: for copying files to the bootdisk
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
42 - nasm: for assembler instructions
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
43 - gcc: for compiling the C sources
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
44 - make: for building the system
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
45 - python 3: for building the initial ramdisk
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
46
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
47 Enjoy!
35cc54e078dd Added memory functions
windel
parents: 9
diff changeset
48