Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
2972 5887 d 0 h svoboda /branches/dynload/uspace/ Add so_bias argument to elf_load_file(). Successfully load libtest.so into memory.  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/include/elf_load.h
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/rtld.c
2971 5887 d 1 h svoboda /branches/dynload/uspace/ Add libtest to iramfs. Link rtld with position-independent libsoftfloat.  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/softint/Makefile
2970 5887 d 1 h svoboda /branches/dynload/uspace/lib/libtest/ Fix symlink  
/branches/dynload/uspace/lib/libtest/libtest.so.0
2969 5887 d 16 h svoboda /branches/dynload/uspace/ Incorporate ELF loader from iloader to rtld  
/branches/dynload/uspace/app/iloader/include
/branches/dynload/uspace/app/iloader/include/elf.h
/branches/dynload/uspace/app/iloader/include/elf_load.h
/branches/dynload/uspace/app/iloader/include/pcb.h
/branches/dynload/uspace/lib/rtld/elf_load.c
/branches/dynload/uspace/app/iloader/elf.h
/branches/dynload/uspace/app/iloader/elf_load.h
/branches/dynload/uspace/app/iloader/pcb.h
/branches/dynload/uspace/lib/rtld/include/elf.h
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/lib/rtld/rtld.c
2968 5887 d 17 h svoboda /branches/dynload/uspace/ Parse .dynamic section fields into a more useful form.  
/branches/dynload/uspace/lib/rtld/dynamic.c
/branches/dynload/uspace/lib/rtld/include/dynamic.h
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/rtld.c
2967 5887 d 21 h svoboda /branches/dynload/uspace/ For testing purposes, add a trivial shared library and a program linked to it  
/branches/dynload/uspace/app/dltest
/branches/dynload/uspace/app/dltest/Makefile
/branches/dynload/uspace/app/dltest/_link.ld.in
/branches/dynload/uspace/app/dltest/dltest.c
/branches/dynload/uspace/lib/libtest
/branches/dynload/uspace/lib/libtest/Makefile
/branches/dynload/uspace/lib/libtest/_link.ld.in
/branches/dynload/uspace/lib/libtest/libtest.c
/branches/dynload/uspace/lib/libtest/libtest.h
/branches/dynload/uspace/lib/libtest/libtest.so.0
/branches/dynload/uspace/Makefile
2966 5888 d 1 h svoboda /branches/dynload/uspace/lib/rtld/ Define more ELF constants and use them  
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
2965 5888 d 1 h svoboda /branches/dynload/uspace/ Add headers for dynamic-loading-related ELF stuff. Reorganize rtld include directories.  
/branches/dynload/uspace/lib/rtld/arch/ia32/include
/branches/dynload/uspace/lib/rtld/arch/ia32/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/arch/ia32/src
/branches/dynload/uspace/lib/rtld/arch/ia32/src/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/src/entry.s
/branches/dynload/uspace/lib/rtld/arch/ia32/src/runtime.c
/branches/dynload/uspace/lib/rtld/include
/branches/dynload/uspace/lib/rtld/include/elf.h
/branches/dynload/uspace/lib/rtld/include/elf_dyn.h
/branches/dynload/uspace/lib/rtld/include/rtld.h
/branches/dynload/uspace/lib/rtld/arch/ia32/bootstrap.c
/branches/dynload/uspace/lib/rtld/arch/ia32/entry.s
/branches/dynload/uspace/lib/rtld/arch/ia32/runtime.c
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/pcb.h
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
/branches/dynload/uspace/lib/rtld/rtld.c
2964 5888 d 2 h svoboda /branches/dynload/uspace/app/iloader/ Restructure elf loader data. Extract .dynamic section address  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/elf_load.h
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iloader/pcb.h
2963 5888 d 3 h svoboda /branches/dynload/uspace/app/iloader/ Add missing elf_load.h  
/branches/dynload/uspace/app/iloader/elf_load.h
2962 5888 d 3 h svoboda /branches/dynload/uspace/app/iloader/ Restructure iloader. Rename elf.c to elf_load.c (need elf_load.h vs elf.h)  
/branches/dynload/uspace/app/iloader/elf_load.c
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/main.c
2961 5888 d 3 h svoboda /branches/dynload/uspace/app/iloader/ Read section headers in iloader  
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/main.c
2960 5888 d 4 h svoboda /branches/dynload/uspace/app/iloader/ Add missing file pcb.h. Introduces the Program Control Block (PCB)  
/branches/dynload/uspace/app/iloader/pcb.h
2959 5888 d 4 h svoboda /branches/dynload/ Load both program and dynamic linker from program loader. Pass program entry point to dynamic linker and have it run the program  
/branches/dynload/tools/bin2c.py
/branches/dynload/uspace/app/iloader/arch/ia32/_link.ld.in
/branches/dynload/uspace/app/iloader/main.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/uspace/lib/libc/generic/time.c
/branches/dynload/uspace/lib/rtld/rtld.c
2956 5888 d 18 h svoboda /branches/dynload/uspace/lib/ Temporarily force local dynamic TLS model in libc by declaring all __thread variables static. Implement a trivial __tls_get_addr() function. Now rtld works linked with libc. Yaay! :D  
/branches/dynload/uspace/lib/rtld/arch/ia32/runtime.c
/branches/dynload/uspace/lib/rtld/ulibc.c
/branches/dynload/uspace/lib/libc/generic/async.c
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/Makefile.inc
2955 5889 d 0 h svoboda /branches/dynload/ Build a position-independent libc  
/branches/dynload/kernel/arch/ia32/include/barrier.h
/branches/dynload/uspace/lib/libc/Makefile
2954 5889 d 3 h svoboda /branches/dynload/uspace/lib/rtld/ Read a file from rtld with more ugly hacking  
/branches/dynload/uspace/lib/rtld/rtld.c
/branches/dynload/uspace/lib/rtld/ulibc.c
2952 5889 d 17 h svoboda /branches/dynload/ Load rtld.so with iloader and make it write to console with a stripped-down version of the C library  
/branches/dynload/uspace/lib/rtld/syscall.S
/branches/dynload/uspace/lib/rtld/ulibc.c
/branches/dynload/kernel/generic/include/syscall/syscall.h
/branches/dynload/kernel/generic/src/syscall/syscall.c
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/lib/rtld/Makefile
/branches/dynload/uspace/lib/rtld/arch/ia32/bootstrap.c
/branches/dynload/uspace/lib/rtld/rtld.c
2950 5889 d 17 h svoboda /branches/dynload/uspace/lib/rtld/arch/ia32/ Fix rtld linker script with some magic so that ld produces correct DT_REL[SZ], DT_JMPREL, DT_PLTRELSZ entries  
/branches/dynload/uspace/lib/rtld/arch/ia32/_link.ld.in
2949 5889 d 18 h svoboda /branches/dynload/ Add a python script 'bin2c.py' and an application 'iramfs' to smuggle an executable file into VFS. Demonstrate by running Tetris from VFS  
/branches/dynload/tools/bin2c.py
/branches/dynload/uspace/app/iramfs
/branches/dynload/uspace/app/iramfs/Makefile
/branches/dynload/uspace/app/iramfs/data.h
/branches/dynload/uspace/app/iramfs/main.c
/branches/dynload/boot/arch/ia32/Makefile.inc
/branches/dynload/boot/arch/ia32/grub/menu.lst
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/iloader/Makefile
/branches/dynload/uspace/app/iloader/elf.c

Show All