cvs commit: src/sys/sys proc.h syscall.h syscall.mk sysproto.h
 umtx.h src/sys/kern init_sysent.c kern_umtx.c syscalls.c        
 syscalls.master
    David Xu 
    davidxu at freebsd.org
       
    Sun Jul  3 00:58:37 GMT 2005
    
    
  
I have a demo program there to explain the shared umtx
feature:
http://people.freebsd.org/~davidxu/umtx_cond.c
David Xu wrote:
>davidxu     2004-12-18 12:52:45 UTC
>
>  FreeBSD src repository
>
>  Modified files:
>    sys/sys              proc.h syscall.h syscall.mk sysproto.h 
>                         umtx.h 
>    sys/kern             init_sysent.c kern_umtx.c syscalls.c 
>                         syscalls.master 
>  Log:
>  1. make umtx sharable between processes, the way is two or more processes
>     call mmap() to create a shared space, and then initialize umtx on it,
>     after that, each thread in different processes can use the umtx same
>     as threads in same process.
>  2. introduce a new syscall _umtx_op to support timed lock and condition
>     variable semantics. also, orignal umtx_lock and umtx_unlock inline
>     functions now are reimplemented by using _umtx_op, the _umtx_op can
>     use arbitrary id not just a thread id.
> 
>
    
    
More information about the cvs-all
mailing list