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
1293 6625 d 18 h palkovsky /kernel/trunk/ Implemented mips memcpy (copy from gcc builtin memcpy).  
1288 6625 d 21 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.
 
1278 6628 d 15 h palkovsky /kernel/trunk/ Changed interrupt_control to preemption_control.  
1260 6631 d 11 h palkovsky /kernel/trunk/ Small fixes.  
1258 6631 d 11 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.
 
1227 6637 d 17 h jermar /kernel/trunk/ Reorganize syscall names to better correspond to kernel architecture.
Add dummy placeholders for SYS_AS_AREA_SHARE_APPROVE and
SYS_AS_AREA_SHARE_PERFORM syscalls.
 
1223 6637 d 21 h jermar /kernel/trunk/ Make ia64 and sparc64 compile again.
Fix ia64 to set up inits in arch_pre_main().
 
1222 6638 d 10 h decky /kernel/trunk/arch/ init tasks must be registered before main_bsp()  
1221 6638 d 10 h decky /kernel/trunk/ printf-related and other code cleanup  
1212 6638 d 15 h palkovsky /kernel/trunk/ Added uspace call to enable/disable interrupts.  
1196 6644 d 20 h cejka /kernel/trunk/ Printf ported back from uspace to kernel.
Printf calls changed to match new conventions.
 
1191 6647 d 0 h jermar /kernel/trunk/ Kernel support for SYS_ENABLE_IOSPACE.
amd64 and ia32 provide dummy implementation thereof.
 
1187 6647 d 16 h jermar /kernel/trunk/ Cleanup pm.c and pm.h code on ia32 and amd64.
Add before_task_runs() and before_task_runs_arch() for each architecture.
Add ia32 and amd64 code to ensure I/O Permission Bitmap update.
 
1135 6666 d 11 h decky /kernel/trunk/ framebuffer code cleanup, support for non-standard scanline sizes
ppc32: get framebuffer parameters from boot loader
 
1126 6667 d 21 h palkovsky /kernel/trunk/arch/mips32/src/ Fix bad order of EPC & STATUS change in syscall_shortcut.  
1122 6668 d 9 h palkovsky /kernel/trunk/arch/mips32/ Set up T9 to entry point on entry to userspace to facilitate better
PIC running.
 
1121 6668 d 12 h jermar /kernel/trunk/ Small textual changes.  
1119 6668 d 12 h palkovsky /kernel/trunk/arch/ Fixed bad rflags masking in amd64.
Added TLS get address instruction emulation for mips.
 
1112 6668 d 23 h palkovsky /kernel/trunk/ Added basic kernel infrastructure for ThreadLocalStorage(TLS) for
ia32(complete),amd64(complete),mips32(missing emulation of rdhwr instruction).
 
1102 6670 d 11 h palkovsky /kernel/trunk/arch/ Keep $K1 register for use as a thread local storage pointer on MIPS.  
1100 6671 d 13 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.
 
1097 6671 d 20 h palkovsky /kernel/trunk/arch/mips32/src/ Still better syscall calling convention for mips.  
1096 6671 d 20 h palkovsky /kernel/trunk/ Cleanup of mips
- inline register reads
- better fpu disable/enable - global settings is automatically propagated to task
- fast syscall
 
1094 6671 d 23 h palkovsky /kernel/trunk/ Allowed saving less registers.  
1078 6674 d 15 h jermar /kernel/trunk/ Improved uspace threads.
ia64 needs fixing.
 
1066 6675 d 8 h jermar /kernel/trunk/ Support for user space threads.  
1044 6675 d 20 h jermar /kernel/trunk/ Page table locking.  
1037 6675 d 22 h decky /kernel/trunk/ support for more init tasks
(might break some archs yet)
 
983 6677 d 18 h palkovsky /kernel/trunk/ Fixed shrinking of as area.  
959 6678 d 13 h palkovsky /kernel/trunk/ New synchronous ipc.
Widened syscall to support up to 5 parameters.
 
958 6678 d 13 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 6678 d 14 h palkovsky /kernel/trunk/ Added kernel IPC functionality.  
938 6679 d 15 h jermar /kernel/trunk/ Basic support for loading ELF object files.
ia64, amd64, ia32 working.
mips32 requires some attention.
 
924 6680 d 1 h palkovsky /kernel/trunk/arch/mips32/ Macro redefinition for mips fpu.  
906 6689 d 9 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
 
897 6692 d 9 h jermar /kernel/trunk/ sparc64 work.
Fix KBD_VIRT_ADDRESS.
Call before_thread_runs() prior to the switch to the thread's stack. Add comment why this is crucial.
Add after_thread_ran() to the scheduler.
Add before_thread_runs_arch() and after_thread_ran_arch() for sparc64, mapping/demapping thread's kernel stack.
Add dummy after_thread_ran_arch() to all other architectures.
Add dtlb_insert_mapping() to promote code reuse.
 
853 6701 d 18 h palkovsky /kernel/trunk/arch/mips32/ Some arc bios tweaks. Wanted to print configuration data, but
the ARC seems to return strange values.
Newport graphics card does not seem to be easy to port, give up now.
 
852 6701 d 19 h palkovsky /kernel/trunk/ Fixes in memory allocator
- proper kernel blacklisting, when kernel not loaded on page boundary
- correct zone adding in zone list (how could this work??)
 
851 6702 d 12 h palkovsky /kernel/trunk/arch/mips32/src/ removed debugging printf.  
850 6702 d 12 h palkovsky /kernel/trunk/ Small bugs fixed after running all tests on mips.