diff --git a/src/sys/Makefile b/src/sys/Makefile index 8c18831..938e6b5 100755 --- a/src/sys/Makefile +++ b/src/sys/Makefile @@ -1,7 +1,7 @@ # $Id$ # Kernel Makefile (C) 2002 The UbixOS Project -all: boot-code init-code kernel-code driver-code kernel-img +all: boot-code init-code kernel-code driver-code vmm-code kernel-img boot-code: boot (cd boot;make) @@ -14,7 +14,10 @@ driver-code: drivers (cd drivers;make) - + +vmm-code :vmm + (cd vmm;make); + kernel-img: compile (cd compile;make) @@ -27,3 +30,4 @@ (cd drivers;make clean) (cd kernel;make clean) (cd compile;make clean) + (cd vmm;make clean) diff --git a/src/sys/compile/Makefile b/src/sys/compile/Makefile index 2423d3c..c492257 100755 --- a/src/sys/compile/Makefile +++ b/src/sys/compile/Makefile @@ -20,7 +20,7 @@ # Link the kernel statically with fixed text+data address @1M $(KERNEL) : $(OBJS) - $(LD) -o $@ $(OBJS) ../init/*.o ../kernel/*.o ../drivers/*.o -Ttext 0x10000 + $(LD) -o $@ $(OBJS) ../init/*.o ../kernel/*.o ../drivers/*.o ../vmm/*.o -Ttext 0x10000 # Compile the source files .cc.o: diff --git a/src/sys/include/stdarg.h b/src/sys/include/stdarg.h index df1c4e9..0dd6aaf 100755 --- a/src/sys/include/stdarg.h +++ b/src/sys/include/stdarg.h @@ -5,8 +5,8 @@ $Id$ **************************************************************************************/ -#ifndef _ULIBC_STDARG_H -#define _ULIBC_STDARG_H +#ifndef _STDARG_H +#define _STDARG_H typedef char *vaList; diff --git a/src/sys/include/vmm/paging.h b/src/sys/include/vmm/paging.h new file mode 100755 index 0000000..7bb75ae --- /dev/null +++ b/src/sys/include/vmm/paging.h @@ -0,0 +1,13 @@ +/************************************************************************************** + Copyright (c) 2002 + The UbixOS Project + + $Id$ +**************************************************************************************/ + +#ifndef _PAGING_H +#define _PAGING_H + +void initPaging(); + +#endif \ No newline at end of file diff --git a/src/sys/init/main.c b/src/sys/init/main.c index 8377678..06ab5f6 100755 --- a/src/sys/init/main.c +++ b/src/sys/init/main.c @@ -50,6 +50,8 @@ int main() { clearScreen(); outputVersion(); //Display Version Info + initPaging(); + init8259(); //Initialize PIC initIdt(); //Initialize IDT initKeyboard(); //Initialize Keyboard diff --git a/src/sys/vmm/Makefile b/src/sys/vmm/Makefile new file mode 100755 index 0000000..f2635ce --- /dev/null +++ b/src/sys/vmm/Makefile @@ -0,0 +1,35 @@ +# (C) 2002 The UbixOS Project +# $Id$ + + +# Compiler +CC = gcc +CPP = g++ + + +# Linker +LINKER = ld + +# Remove +REMOVE = rm -fr + +# Objects +OBJS = paging.o + +all: $(OBJS) + +# Compile Types +.cc.o: + $(CPP) -Wall -fomit-frame-pointer -O -I../include -c -o $@ $< +.cc.s: + $(CPP) -Wall -fomit-frame-pointer -O -I../include -S -o $@ $< +.c.o: + $(CC) -Wall -fomit-frame-pointer -O -I../include -c -o $@ $< +.c.s: + $(CC) -Wall -fomit-frame-pointer -O -I../include -S -o $@ $< +.S.o: + $(CC) -Wall -fomit-frame-pointer -c -o $@ $< + +# Clean up the junk +clean: + $(REMOVE) $(OBJS) diff --git a/src/sys/vmm/paging.c b/src/sys/vmm/paging.c new file mode 100755 index 0000000..5818ece --- /dev/null +++ b/src/sys/vmm/paging.c @@ -0,0 +1,9 @@ +/************************************************************************************** + Copyright (c) 2002 + The UbixOS Project + + $Id$ +**************************************************************************************/ + +void initPaging() { + } \ No newline at end of file diff --git a/ubixos.kdevprj b/ubixos.kdevprj index fe318ee..50e95eb 100755 --- a/ubixos.kdevprj +++ b/ubixos.kdevprj @@ -32,7 +32,7 @@ kdevprj_version=1.3 lfv_open_groups=Others make_options=\s-j1 clean all install -makefiles=./Makefile.am,src/Makefile.am,src/sys/Makefile.am,src/sys/include/Makefile.am,src/lib/Makefile.am,src/lib/libc/Makefile.am,src/lib/libc/include/Makefile.am,src/bin/Makefile.am,src/bin/shell/Makefile.am,Makefile.am,src/sys/boot/Makefile.am,src/sys/init/Makefile.am,src/sys/include/ubixos/Makefile.am,src/sys/drivers/Makefile.am,src/sys/kernel/Makefile.am,src/sys/compile/Makefile.am,src/sys/include/version/Makefile.am,src/sys/include/drivers/Makefile.am +makefiles=./Makefile.am,src/Makefile.am,src/sys/Makefile.am,src/sys/include/Makefile.am,src/lib/Makefile.am,src/lib/libc/Makefile.am,src/lib/libc/include/Makefile.am,src/bin/Makefile.am,src/bin/shell/Makefile.am,Makefile.am,src/sys/boot/Makefile.am,src/sys/init/Makefile.am,src/sys/include/ubixos/Makefile.am,src/sys/drivers/Makefile.am,src/sys/kernel/Makefile.am,src/sys/compile/Makefile.am,src/sys/include/version/Makefile.am,src/sys/include/drivers/Makefile.am,src/sys/vmm/Makefile.am,src/sys/include/vmm/Makefile.am modifyMakefiles=true project_name=UbixOS project_type=normal_empty @@ -121,7 +121,7 @@ [src/sys/Makefile.am] files=src/sys/Makefile -sub_dirs=include,boot,init,drivers,kernel,compile +sub_dirs=include,boot,init,drivers,kernel,compile,vmm type=normal [src/sys/boot/Makefile] @@ -183,7 +183,7 @@ [src/sys/include/Makefile.am] files=src/sys/include/stdarg.h -sub_dirs=ubixos,version,drivers +sub_dirs=ubixos,version,drivers,vmm type=normal [src/sys/include/drivers/8259.h] @@ -261,6 +261,17 @@ install_location= type=HEADER +[src/sys/include/vmm/Makefile.am] +files=src/sys/include/vmm/paging.h +sub_dirs= +type=normal + +[src/sys/include/vmm/paging.h] +dist=true +install=false +install_location= +type=HEADER + [src/sys/init/Makefile] dist=true install=false @@ -332,3 +343,20 @@ install=false install_location= type=SOURCE + +[src/sys/vmm/Makefile] +dist=true +install=false +install_location= +type=DATA + +[src/sys/vmm/Makefile.am] +files=src/sys/vmm/Makefile,src/sys/vmm/paging.c +sub_dirs= +type=static_library + +[src/sys/vmm/paging.c] +dist=true +install=false +install_location= +type=SOURCE