Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1702 6561 d 7 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1686 6564 d 11 h decky /kernel/trunk/ update mips32 boot loading API  
1595 6568 d 14 h palkovsky /kernel/trunk/ Added kernel circular buffer klog.
Added automatic killing of tasks raising inappropriate exceptions.
TODO: Fix vsnprintf return value(and behaviour according to specs) and remove workaround in klog.
 
1587 6569 d 4 h jermar /kernel/trunk/ task_destroy() implementation, fixes in as_destroy() and task_kill().
This is the first version of HelenOS that would perform complete cleanup leading from thread to destruction of address space.
 
1511 6572 d 7 h palkovsky /kernel/trunk/arch/ Remove __address from include file included by uspace  
1474 6574 d 0 h palkovsky /kernel/trunk/ Added syscall that lets kernel regain access to keyboard.  
1434 6577 d 4 h palkovsky /kernel/trunk/ Added 'realtime' clock interface.
Added some asm macros as memory barriers.
Added drift computing for mips platform.
 
1423 6578 d 8 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1293 6600 d 7 h palkovsky /kernel/trunk/ Implemented mips memcpy (copy from gcc builtin memcpy).  
1288 6600 d 10 h jermar /kernel/trunk/ Complete implementation of copy_from_uspace() and copy_to_uspace()
for amd64 and ia32. Other architectures still compile and run,
but need to implement their own assembly-only memcpy(), memcpy_from_uspace(),
memcpy_to_uspace() and their failover parts. For these architectures
only dummy implementations are provided.
 
1258 6606 d 0 h palkovsky /kernel/trunk/ Added support for IRQ notifiactions.
- seems to work correctly on ia32, amd64
- the mips kbd probably lowers interrupts when the char is read from
the port, we will have to find a way how to deal with it.
 
1223 6612 d 9 h jermar /kernel/trunk/ Make ia64 and sparc64 compile again.
Fix ia64 to set up inits in arch_pre_main().
 
1222 6612 d 22 h decky /kernel/trunk/arch/ init tasks must be registered before main_bsp()  
1185 6622 d 7 h jermar /kernel/trunk/ Add task_create_arch() for all architectures.  
1184 6622 d 7 h jermar /kernel/trunk/ Move arch/thread.h to arch/proc/thread.h on all architectures.
Replace ARCH_THREAD_DATA with new thread_arch_t arch on all architectures.
Similarily, add task_arch_t arch on all architectures.
On amd64 and ia32, grow the TSS segment by 64K + 1B to support IO port
permission bitmap. For the same reason, define per task IO port permission bitmaps
on ia32 and amd64.
 
1171 6623 d 13 h jermar /kernel/trunk/ Initialize ARCH_THREAD_DATA on all architectures.
On ia32 and amd64 this fixes bug caused by uninitialized TLS pointer.
 
1122 6642 d 21 h palkovsky /kernel/trunk/arch/mips32/ Set up T9 to entry point on entry to userspace to facilitate better
PIC running.
 
1107 6643 d 23 h jermar /kernel/trunk/ Small atomic #include and typedef changes.  
1104 6644 d 4 h jermar /kernel/trunk/ Define atomic_t only once in atomic.h
Change the encapsulated counter type to long so that it supports negative values as well.
 
1102 6644 d 23 h palkovsky /kernel/trunk/arch/ Keep $K1 register for use as a thread local storage pointer on MIPS.  
1100 6646 d 1 h palkovsky /kernel/trunk/ Cleanup of spinlocks, now compiles both ia32 and amd64 with
and without DEBUG_SPINLOCKS. Made spinlocks inline.
Moved syscall_handler to generic (it was identical for ia32,amd64 & mips32).
Made slightly faster syscall for ia32.
Made better interrupt routines for ia32.
Allow not saving non-scratch registers during interrupt on ia32,amd64,mips32.
Aligned interrupt handlers on ia32,amd64, this should prevent problems
with different instruction lengths.
 
1096 6646 d 8 h palkovsky /kernel/trunk/ Cleanup of mips
- inline register reads
- better fpu disable/enable - global settings is automatically propagated to task
- fast syscall
 
1087 6647 d 11 h palkovsky /kernel/trunk/arch/mips32/include/mm/ Fix MIPS32 bad paging index computation. Fixed random page faults on mips.  
1078 6649 d 4 h jermar /kernel/trunk/ Improved uspace threads.
ia64 needs fixing.
 
1070 6649 d 12 h jermar /kernel/trunk/ More checks for address space area conflicts.  
1055 6650 d 4 h cejka /kernel/trunk/arch/mips32/include/ Stack constants moved to stack.h as on other archs.  
1054 6650 d 5 h cejka /kernel/trunk/ Updated stackarg macros for mips32.
Mips32 stack aligned on 8 bytes boundary.
 
1024 6651 d 3 h jermar /kernel/trunk/ Redefine semantics of unary atomic operations.
Add test to verify that an architecture understands the semantics correctly.
 
980 6652 d 7 h palkovsky /kernel/trunk/ Small speed update of ipc.
Fixed some bugs regarding pages in mremap.
 
977 6652 d 8 h jermar /kernel/trunk/ Add sys_mremap() syscall.  
967 6652 d 11 h palkovsky /kernel/trunk/ Allowed userspace to include page.h.  
958 6653 d 2 h jermar /kernel/trunk/ Nicer ia32 interrupt handlers and structures holding interrupted context data.
Unify the name holding interrupted context data on all architectures to be istate.
 
955 6653 d 2 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
941 6654 d 3 h palkovsky /kernel/trunk/ Fixed mips elf loading.  
940 6654 d 3 h jermar /kernel/trunk/ Get rid of unneeded macros.
Their functionality has been replaced by the ELF loader.
 
938 6654 d 3 h jermar /kernel/trunk/ Basic support for loading ELF object files.
ia64, amd64, ia32 working.
mips32 requires some attention.
 
924 6654 d 13 h palkovsky /kernel/trunk/arch/mips32/ Macro redefinition for mips fpu.  
910 6661 d 8 h bondari /kernel/trunk/ ELF framework for all archs. SPARC V9 not tested to compile.  
906 6663 d 21 h palkovsky /kernel/trunk/ Added lazy fpu context allocation.
- threads that don't use fpu, don't get allocated fpu context
- fpu context alignment on AMD64 nicely disappeared
 
860 6673 d 22 h decky /kernel/trunk/ indentation changes
ppc32 fpu context save/restore
ppc32 CPU version
ppc32 memcpy