diff --git a/doc/ELF_Format.pdf b/doc/ELF_Format.pdf new file mode 100644 index 0000000..34b9e8c --- /dev/null +++ b/doc/ELF_Format.pdf Binary files differ diff --git a/src/bin/edit/main.c b/src/bin/edit/main.c index 39fb9f9..2a43e44 100644 --- a/src/bin/edit/main.c +++ b/src/bin/edit/main.c @@ -34,7 +34,7 @@ FILE *out; printf("UbixOS Text Editor\n"); printf("V1.0\n"); - + return(1); out = fopen("/test.txt","r"); while (!feof(out)) { diff --git a/src/bin/init/main.c b/src/bin/init/main.c index d4f1f44..029ec5a 100644 --- a/src/bin/init/main.c +++ b/src/bin/init/main.c @@ -80,11 +80,9 @@ } #endif - printf("Forking"); - startup: i = fork(); - printf("We Forked\n"); + if (0 == i) { printf("Starting Login Daemon.\n"); exec("sys:/bin/login",0x0); diff --git a/src/bin/ld/addlibrary.c b/src/bin/ld/addlibrary.c index 6a05e02..ae20911 100644 --- a/src/bin/ld/addlibrary.c +++ b/src/bin/ld/addlibrary.c @@ -29,7 +29,7 @@ //if ((tmpLib->output = (char *)malloc((linkerFd->size+0x4000))) == 0x0) { //if ((tmpLib->output = (char *)malloc(0x111000)) == 0x0) { //HELP - if ((tmpLib->output = (char *)getPage((0x0E6000/0x1000),2)) == 0x0) { + if ((tmpLib->output = (char *)getPage((0x0E4000/0x1000),2)) == 0x0) { printf("malloc failed: tmpLib->output\n"); exit(0x1); } diff --git a/src/bin/ld/main.c b/src/bin/ld/main.c index 90c7459..f3e153f 100644 --- a/src/bin/ld/main.c +++ b/src/bin/ld/main.c @@ -76,7 +76,7 @@ fread(binaryShStr,binarySectionHeader[binaryHeader->eShstrndx].shSize,1,binaryFd); } - printf("eShnum: [%i]\n",binaryHeader->eShnum); + //printf("eShnum: [%i]\n",binaryHeader->eShnum); for (i=0x0;ieShnum;i++) { switch (binarySectionHeader[i].shType) { case 3: @@ -92,7 +92,7 @@ binaryElf32_Dyn = (Elf32_Dyn *)malloc(binarySectionHeader[i].shSize); fseek(binaryFd,binarySectionHeader[i].shOffset,0); fread(binaryElf32_Dyn,binarySectionHeader[i].shSize,1,binaryFd); - printf("SHT_DYNAMIC\n"); + //printf("SHT_DYNAMIC\n"); for (x = 0;x < binarySectionHeader[i].shSize / sizeof(Elf32_Dyn);x++) { if (binaryElf32_Dyn[x].d_tag == 1) { printf("[%s]\n",(uInt32)binaryElf32_Dyn[x].d_un.d_ptr); @@ -152,7 +152,7 @@ i = (entry/sizeof(elfPltInfo)); x = ELF32_R_SYM(binaryElfRel[i].pltInfo); reMap = (uInt32 *)binaryElfRel[i].pltOffset; - printf("[0x%X]",binaryRelSymTab[x].dynName); + //printf("[0x%X]",binaryRelSymTab[x].dynName); *reMap = ldFindFunc(binaryDynStr + binaryRelSymTab[x].dynName,binaryDynStr); //printf("\nld(%s:0x%X)",binaryDynStr + binaryRelSymTab[x].dynName,*reMap); //*reMap = ldFindFunc(binaryDynStr + binaryRelSymTab[x].dynName,(char *)(binaryDynStr + 1)); diff --git a/src/sys/Makefile.inc b/src/sys/Makefile.inc index f75ebf0..27864d4 100644 --- a/src/sys/Makefile.inc +++ b/src/sys/Makefile.inc @@ -2,5 +2,5 @@ # global 'sys' options INCLUDES = -I../include -CFLAGS = -Wall -nostdlib -nostdinc -fno-builtin -fno-exceptions -O -DNOTIMP #-DVFSDEBUG #-DVMMDEBUG -DDEBUG +CFLAGS = -Wall -nostdlib -nostdinc -fno-builtin -fno-exceptions -O -DNOTIMP -DVMMDEBUG2 #-DVFSDEBUG -DDEBUG KERNEL = ubix.elf diff --git a/src/sys/kernel/exec.c b/src/sys/kernel/exec.c index 2bbed38..9c37bc3 100644 --- a/src/sys/kernel/exec.c +++ b/src/sys/kernel/exec.c @@ -518,6 +518,7 @@ _current->td.vm_dsize = seg_size >> PAGE_SHIFT; _current->td.vm_daddr = (char *)seg_addr; + kprintf("STATING: [0x%X][0x%X]\n",_current->td.vm_dsize,_current->td.vm_daddr); argv = ap; diff --git a/src/sys/kernel/fork.c b/src/sys/kernel/fork.c index 48084b6..a91a496 100644 --- a/src/sys/kernel/fork.c +++ b/src/sys/kernel/fork.c @@ -95,8 +95,6 @@ /* Fix gcc optimization problems */ while (tmpProcPtr->state == FORK) sched_yield(); - kprintf("Copied Space\n: [%i]",newProcess->id); - /* Return Id of Proccess */ return(newProcess->id); } diff --git a/src/sys/kernel/ld.c b/src/sys/kernel/ld.c index 54f77df..d7d8069 100644 --- a/src/sys/kernel/ld.c +++ b/src/sys/kernel/ld.c @@ -119,7 +119,7 @@ /* Not sure... */ break; default: - kprintf("Unhandled Header (kernel) : %08x\n", programHeader[i].phType); + //kprintf("Unhandled Header (kernel) : %08x\n", programHeader[i].phType); break; } } @@ -173,7 +173,7 @@ sym = i; break; default: - kprintf("Unhandled Section: %s, 0x%X",shStr + sectionHeader[i].shName,sectionHeader[i].shType); + //kprintf("Unhandled Section: %s, 0x%X",shStr + sectionHeader[i].shName,sectionHeader[i].shType); break; } } diff --git a/src/sys/vmm/paging.c b/src/sys/vmm/paging.c index 200dc2f..afc1244 100644 --- a/src/sys/vmm/paging.c +++ b/src/sys/vmm/paging.c @@ -529,7 +529,7 @@ vm_offset_t base = 0x0; vm_offset_t new = 0x0; - #ifdef VMMDEBUG + #ifdef VMMDEBUG2 kprintf("obreak\n"); kprintf("vm_offset_t: [%i]\n",sizeof(vm_offset_t)); kprintf("nsize: [0x%X]\n",uap->nsize); diff --git a/src/sys/vmm/vmm_virtual.c b/src/sys/vmm/vmm_virtual.c index f48c13f..e901b8e 100644 --- a/src/sys/vmm/vmm_virtual.c +++ b/src/sys/vmm/vmm_virtual.c @@ -210,7 +210,7 @@ /* Return The Address Of The Newly Allocate Page */ if (type == VM_THRD) { _current->td.vm_dsize += btoc(count * 0x1000); - #ifdef VMMDEBUG + #ifdef VMMDEBUG2 kprintf("vm_dsize: [0x%X]][0x%X]\n",ctob(_current->td.vm_dsize),_current->td.vm_dsize); #endif } diff --git a/src/tools/Makefile b/src/tools/Makefile index 0514299..3d04014 100644 --- a/src/tools/Makefile +++ b/src/tools/Makefile @@ -47,9 +47,9 @@ (cp ../bin/cat/cat /mnts/ubix/bin) (cp ../bin/ld/ld.so /mnts/ubix/lib) #(cp ../bin/rtld-elf/ld-elf.so.1 /mnts/ubix/libexec) - #(cp ../bin/tcc/tcc /mnts/ubix/bin) + (cp ../bin/tcc/tcc /mnts/ubix/bin) (cp ../lib/libc_old/libc_old.so /mnts/ubix/lib) - #(cp ../lib/libc/libc.so /mnts/ubix/lib) + (cp ../lib/libc/libc.so /mnts/ubix/lib) (cp ../lib/ubix_api/ubix_api.so /mnts/ubix/lib) (cp ./userdb /mnts/ubix/etc) (cp ./motd /mnts/ubix/etc)