-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathREADME
66 lines (46 loc) · 2.16 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
The Ada Monolithic kernel Project
--------------------------------------------------------------------------------
Introduction
--------------------------------------------------------------------------------
This source is based on the Ada Bare Bones tutorial from
http://wiki.osdev.org/Ada_Bare_bones.
The aims of this project are twofold:
1) to solidify operating system development knowledge gained by implementing
a simple monolithic kernel and a few drivers.
2) To provide the basis for an educational operating system which can be used
in OS classes by stripping out the various components so they can be
re-implemented by the students.
--------------------------------------------------------------------------------
Prerequisites
--------------------------------------------------------------------------------
You will need an Ada compiler, we will be using the system compiler under Debian.
If there are any changes you need to make to get it to work on a different OS
we will list them here.
To test using make QEMU, you will need GRUB 2 installed for the grub-mkrescue
(GRUB 2 should be installed if you're on a modern distribution) command. This
command also uses xorriso - which I had to install separately.
Under Debian:
$ sudo apt-get install qemu xorriso
--------------------------------------------------------------------------------
Instructions
--------------------------------------------------------------------------------
1) Build the RTS:
for f in "ada.ads" "a-unccon.ads" "a-uncdea.ads" "gnat.ads" "g-souinf.ads" \
"interfac.ads" "s-atacco.adb" "s-atacco.ads" "s-maccod.ads" "s-stoele.adb" \
"s-stoele.ads"
do
ln -s `pwd`/rts/src/$f `pwd`/rts/boards/i386/adainclude/$f
done
gnatmake -Pgnat.gpr -XBoard=pc
2) Build the kernel:
make
3) Test:
make qemu
--------------------------------------------------------------------------------
Bugs
--------------------------------------------------------------------------------
None at present.
--------------------------------------------------------------------------------
Licence
--------------------------------------------------------------------------------
2-clause simplified BSD.