minix/kernel
Tomas Hruby 2521cc6bdf Slightly faster IPC
- there are cycles wasted in the IPC call due to a fairly compliacted
  way of copying messages from userland to kernel. Sometimes this
  complicated way (generic though) is used even for copying within the
  kernel address space, sometimes it is used for copying in case _no_
  copying is necessary. The goal of this patch is to improve this a
  little bit.

- the places where a copy is from user to kernel use the
  copy_msg_from_user() kernel-kernel copies are turned into
  assignments and BuildNotifyMessage uses the delivery buffers to
  avoid copying.

- copy_msg_from_user() was introduced when removing the system task
  and is about 2/3 faster then using the current mechanism
  (phys_copy). It also avoids the PHYS_COPY_CATCH macro. Assignment is
  also faster and no copy is the fastest ;-) so perhaps there will be
  some hardly noticable performance gain besides the clean up.
2010-03-29 11:16:37 +00:00
..
arch/i386 Userspace scheduling 2010-03-29 11:07:20 +00:00
system Userspace scheduling 2010-03-29 11:07:20 +00:00
clock.c Userspace scheduling 2010-03-29 11:07:20 +00:00
clock.h Clock task split 2009-11-06 09:04:15 +00:00
config.h Userspace scheduling 2010-03-29 11:07:20 +00:00
const.h Time accounting based on TSC 2010-02-10 15:36:54 +00:00
debug.c Userspace scheduling 2010-03-29 11:07:20 +00:00
debug.h re-establish kernel assert()s. 2010-03-10 13:00:05 +00:00
glo.h Move archtypes.h, fpu.h, and stackframe.h 2010-03-09 09:41:14 +00:00
interrupt.c Lots of const correctness. 2010-03-27 14:31:00 +00:00
ipc.h Userspace scheduling 2010-03-29 11:07:20 +00:00
kernel.h Time accounting based on TSC 2010-02-10 15:36:54 +00:00
main.c Userspace scheduling 2010-03-29 11:07:20 +00:00
Makefile Incorporate bsdmake into buildsystem and reorganize libs 2010-02-16 14:41:33 +00:00
priv.h New RS and new signal handling for system processes. 2010-03-17 01:15:29 +00:00
proc.c Slightly faster IPC 2010-03-29 11:16:37 +00:00
proc.h Userspace scheduling 2010-03-29 11:07:20 +00:00
profile.c Lots of const correctness. 2010-03-27 14:31:00 +00:00
profile.h cprofile not conditional 2009-01-09 21:44:52 +00:00
proto.h Userspace scheduling 2010-03-29 11:07:20 +00:00
start.c Lots of const correctness. 2010-03-27 14:31:00 +00:00
system.c Userspace scheduling 2010-03-29 11:07:20 +00:00
system.h Userspace scheduling 2010-03-29 11:07:20 +00:00
table.c Prioritized NOTIFY messages for reliable asynchonrous delivery of system events. 2010-03-22 23:44:55 +00:00
type.h Miscellaneous code cleanup. 2010-03-22 20:43:06 +00:00
utility.c panic() cleanup. 2010-03-05 15:05:11 +00:00
vm.h intr_disabled() tests removed 2010-02-09 15:29:58 +00:00
watchdog.c no more kprintf - kernel uses libsys printf now, only kputc is special 2010-03-03 15:45:01 +00:00
watchdog.h Lots of const correctness. 2010-03-27 14:31:00 +00:00