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 5910 d 6 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 5910 d 6 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
2969 5910 d 22 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 5910 d 23 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 5911 d 3 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
2965 5911 d 7 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 5911 d 8 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 5911 d 9 h svoboda /branches/dynload/uspace/app/iloader/ Add missing elf_load.h  
/branches/dynload/uspace/app/iloader/elf_load.h
2962 5911 d 9 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 5911 d 9 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 5911 d 10 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 5911 d 10 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
2952 5912 d 23 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
2949 5913 d 0 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
2948 5913 d 0 h svoboda /branches/dynload/ Merged latest trunk changes into dynload  
/branches/dynload/kernel/generic/src/ipc/sysipc.c
/branches/dynload/uspace/app/tester/vfs/vfs1.c
/branches/dynload/uspace/srv/fs/fat/fat_idx.c
2932 5915 d 5 h svoboda /branches/dynload/uspace/ Fix iloader loading with bias and add it to makefile  
/branches/dynload/uspace/Makefile
/branches/dynload/uspace/app/iloader/elf.c
/branches/dynload/uspace/app/iloader/main.c
2929 5915 d 8 h svoboda /branches/dynload/uspace/app/iloader/ Merge iloader (c2928) from tracing to dynload  
/branches/dynload/uspace/app/iloader
2927 5915 d 9 h decky /branches/dynload/ added dynload branch  
/branches/dynload
2788 5963 d 12 h jermar /trunk/uspace/ Return EBUSY if trying to mount something over an already mounted root FS.
(Contributed by Tim Post)
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/srv/vfs/vfs_ops.c
2786 5964 d 5 h decky /trunk/uspace/app/tester/ revision of 2785  
/trunk/uspace/app/tester/ipc/connect.c
/trunk/uspace/app/tester/ipc/hangup.c
/trunk/uspace/app/tester/ipc/send_async.c
/trunk/uspace/app/tester/ipc/send_sync.c
/trunk/uspace/app/tester/tester.c
2785 5964 d 21 h jermar /trunk/uspace/app/tester/ Finish run_safe_tests() in app/tester (contributed by Tim Post).  
/trunk/uspace/app/tester/ipc/connect.c
/trunk/uspace/app/tester/ipc/hangup.c
/trunk/uspace/app/tester/ipc/send_async.c
/trunk/uspace/app/tester/ipc/send_sync.c
/trunk/uspace/app/tester/tester.c
/trunk/uspace/app/tester/tester.h
2763 5982 d 2 h jermar /trunk/uspace/ Support for rename().  
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/stdio.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/lib/libfs/libfs.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2755 5988 d 19 h jermar /trunk/uspace/ Add support for relative paths: chdir() and getcwd().  
/trunk/uspace/lib/libc/include/vfs/vfs.h
/trunk/uspace/lib/libc/include/vfs.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs/vfs.c
/trunk/uspace/lib/libc/include/errno.h
/trunk/uspace/lib/libc/include/unistd.h
/trunk/uspace/lib/libc/include/vfs/canonify.h
2737 6002 d 22 h jermar /trunk/uspace/app/tester/vfs/ Modify the vfs1 test to excercise unlink() and rmdir().  
/trunk/uspace/app/tester/vfs/vfs1.c
2717 6018 d 3 h cejka /trunk/uspace/app/ash/tools/ Ash: removed .map file commited by mistake.  
/trunk/uspace/app/ash/tools/mkinit.map
2716 6018 d 4 h cejka /trunk/uspace/app/ash/tools/ Ash: fixed recursive Makefile.  
/trunk/uspace/app/ash/tools/Makefile
/trunk/uspace/app/ash/tools/mksyntax.c
2715 6018 d 5 h cejka /trunk/uspace/app/ash/ Ash - add recursion to Makefile to create build tools in subdirectory.  
/trunk/uspace/app/ash/Makefile
2714 6018 d 6 h cejka /trunk/uspace/app/ash/ Initial commit of ash shell.
It cannot be compiled yet.
 
/trunk/uspace/app/ash
/trunk/uspace/app/ash/Makefile
/trunk/uspace/app/ash/TOUR
/trunk/uspace/app/ash/alias.c
/trunk/uspace/app/ash/alias.h
/trunk/uspace/app/ash/arith.c
/trunk/uspace/app/ash/arith.h
/trunk/uspace/app/ash/arith.y
/trunk/uspace/app/ash/arith_lex.l
/trunk/uspace/app/ash/bltin
/trunk/uspace/app/ash/bltin/bltin.h
/trunk/uspace/app/ash/bltin/echo.1
/trunk/uspace/app/ash/bltin/echo.c
/trunk/uspace/app/ash/bltin/test.c
/trunk/uspace/app/ash/bltin/times.c
/trunk/uspace/app/ash/builtins.def
/trunk/uspace/app/ash/cd.c
/trunk/uspace/app/ash/cd.h
/trunk/uspace/app/ash/error.c
/trunk/uspace/app/ash/error.h
/trunk/uspace/app/ash/eval.c
/trunk/uspace/app/ash/eval.h
/trunk/uspace/app/ash/exec.c
/trunk/uspace/app/ash/exec.h
/trunk/uspace/app/ash/expand.c
/trunk/uspace/app/ash/expand.h
/trunk/uspace/app/ash/fake.c
/trunk/uspace/app/ash/fake.h
/trunk/uspace/app/ash/funcs
/trunk/uspace/app/ash/funcs/cmv
/trunk/uspace/app/ash/funcs/dirs
/trunk/uspace/app/ash/funcs/kill
/trunk/uspace/app/ash/funcs/login
/trunk/uspace/app/ash/funcs/newgrp
/trunk/uspace/app/ash/funcs/popd
/trunk/uspace/app/ash/funcs/pushd
/trunk/uspace/app/ash/funcs/suspend
/trunk/uspace/app/ash/hetio.c
/trunk/uspace/app/ash/hetio.h
/trunk/uspace/app/ash/histedit.c
/trunk/uspace/app/ash/init.h
/trunk/uspace/app/ash/input.c
/trunk/uspace/app/ash/input.h
/trunk/uspace/app/ash/jobs.c
/trunk/uspace/app/ash/jobs.h
/trunk/uspace/app/ash/lex.yy.c
/trunk/uspace/app/ash/machdep.h
/trunk/uspace/app/ash/mail.c
/trunk/uspace/app/ash/mail.h
/trunk/uspace/app/ash/main.c
/trunk/uspace/app/ash/main.h
/trunk/uspace/app/ash/memalloc.c
/trunk/uspace/app/ash/memalloc.h
/trunk/uspace/app/ash/miscbltin.c
/trunk/uspace/app/ash/miscbltin.h
/trunk/uspace/app/ash/mkbuiltins
/trunk/uspace/app/ash/mktokens
/trunk/uspace/app/ash/myhistedit.h
/trunk/uspace/app/ash/mystring.c
/trunk/uspace/app/ash/mystring.h
/trunk/uspace/app/ash/nodes.c.pat
/trunk/uspace/app/ash/nodetypes
/trunk/uspace/app/ash/options.c
/trunk/uspace/app/ash/options.h
/trunk/uspace/app/ash/output.c
/trunk/uspace/app/ash/output.h
/trunk/uspace/app/ash/parser.c
/trunk/uspace/app/ash/parser.h
/trunk/uspace/app/ash/redir.c
/trunk/uspace/app/ash/redir.h
/trunk/uspace/app/ash/setmode.c
/trunk/uspace/app/ash/sh.1
/trunk/uspace/app/ash/shell.h
/trunk/uspace/app/ash/show.c
/trunk/uspace/app/ash/show.h
/trunk/uspace/app/ash/tags
/trunk/uspace/app/ash/tools
/trunk/uspace/app/ash/tools/Makefile
/trunk/uspace/app/ash/tools/mkinit.c
/trunk/uspace/app/ash/tools/mkinit.map
/trunk/uspace/app/ash/tools/mknodes.c
/trunk/uspace/app/ash/tools/mksignames.c
/trunk/uspace/app/ash/tools/mksyntax.c
/trunk/uspace/app/ash/trap.c
/trunk/uspace/app/ash/trap.h
/trunk/uspace/app/ash/var.c
/trunk/uspace/app/ash/var.h
2711 6024 d 0 h jermar /trunk/uspace/ Remove the debugging hack from tmpfs_init(), which created several files and
directories on the filesystem. TMPFS is now self-sufficient enough to be able
to create its content via the standard VFS interface.
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2710 6024 d 1 h jermar /trunk/uspace/ VFS_WRITE and tmpfs_write fixes.  
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs_ops.c
2707 6024 d 4 h jermar /trunk/uspace/ Support for mkdir().  
/trunk/uspace/lib/libc/include/sys/stat.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/sys/types.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/vfs/vfs.c
/trunk/uspace/srv/vfs/vfs.h
/trunk/uspace/srv/vfs/vfs_lookup.c
/trunk/uspace/srv/vfs/vfs_ops.c
2699 6032 d 20 h jermar /trunk/uspace/ Finish implementation of readdir(). Functions from this family are implemented
via using file descriptors for directories. For example, readdir() is
implemented as read() from an open directory. Of course, FS implementations
must understand that they are asked to read a directory and behave accordingly.
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/dirent.h
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
2678 6051 d 2 h jermar /trunk/uspace/ The IPC_M_SHARE_* and IPC_M_DATA_* calls pass through 3 stages. Rename the send,
receive and deliver wrappers to names ending with 'start', 'receive' and
'finalize', respectively. This should make it clearer for dummies.
 
/trunk/uspace/app/klog/klog.c
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/gcons.c
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/fs/tmpfs/tmpfs_ops.c
/trunk/uspace/srv/rd/rd.c
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_register.c
2677 6051 d 3 h jermar /trunk/ Rename IPC_M_AS_AREA_SEND to IPC_M_SHARE_OUT. Rename IPC_M_AS_AREA_RECV to
IPC_M_SHARE_IN. Provide user-friendly wrappers for these methods so that even
dummies can get it right. Some applications using simpler protocols still use
these methods directly.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/klog/klog.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/gcons.c
/trunk/uspace/srv/fb/ega.c
/trunk/uspace/srv/fb/fb.c
/trunk/uspace/srv/ns/ns.c
/trunk/uspace/srv/rd/rd.c
/trunk/uspace/srv/vfs/vfs_register.c
2674 6051 d 22 h jermar /trunk/uspace/ Add libc VFS wrapper for VFS_WRITE. Fix a small bug in read(). Place open(),
read() and write() declarations in their respective headers according to SUSv3.
 
/trunk/uspace/lib/libc/include/fcntl.h
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/vfs.c
/trunk/uspace/lib/libc/include/vfs.h
2672 6051 d 22 h jermar /trunk/uspace/app/tester/vfs/ Use libc's VFS wrappers instead of direct communication with VFS.  
/trunk/uspace/app/tester/vfs/vfs1.c
2670 6055 d 21 h jermar /trunk/uspace/ Move the open(), read() and write() provided by streams.c away so that
these functions won't clash with the real open(), read() and write(), which are
soon to be provided by a libvfs library. Applications can now use open_stdin(),
open_stdout(), read_stdin() and write_stdout(). Later, there might be an option
of providing a custom console file system, which will work similarly to how
streams' open(), read() and write() worked.
 
/trunk/uspace/app/tetris/screen.c
/trunk/uspace/lib/libc/generic/io/io.c
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/generic/io/vprintf.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/include/io/stream.h
2665 6058 d 21 h jermar /trunk/uspace/app/tester/vfs/ The vfs1 test now reads a file on a TMPFS file system.  
/trunk/uspace/app/tester/vfs/vfs1.c
2660 6059 d 0 h jermar /trunk/ Rename IPC_M_DATA_SEND to IPC_M_DATA_WRITE. Now, when we also add
IPC_M_DATA_READ, it will not clash and cause confusion with userspace wrappers
such as ipc_data_receive(). Rename the forementioned wrappers to
ipc_data_write_send(), ipc_data_write_receive() and ipc_data_write_deliver().
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/app/tester/devmap/devmap1.c
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
/trunk/uspace/lib/libfs/libfs.c
/trunk/uspace/srv/devmap/devmap.c
/trunk/uspace/srv/vfs/vfs_mount.c
/trunk/uspace/srv/vfs/vfs_open.c
/trunk/uspace/srv/vfs/vfs_register.c
2657 6059 d 23 h jermar /trunk/uspace/ VFS work.
Cleaner VFS_MOUNT protocol.
 
/trunk/uspace/app/tester/vfs/vfs1.c
/trunk/uspace/srv/vfs/vfs_mount.c