Date: Fri, 12 May 2006 14:33:30 -0700 From: Maxim Sobolev <sobomax@FreeBSD.ORG> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: Daniel Eischen <deischen@FreeBSD.ORG>, David Xu <davidxu@FreeBSD.ORG>, current@FreeBSD.ORG Subject: Re: Fine-grained locking for POSIX local sockets (UNIX domain sockets) Message-ID: <20060512213330.GA73197@gk.360sip.com> In-Reply-To: <17508.62183.562795.176709@grasshopper.cs.duke.edu> References: <20060506150622.C17611@fledge.watson.org> <20060509181302.GD3636@eucla.lemis.com> <20060509182330.GB92714@xor.obsecurity.org> <200605100726.28243.davidxu@freebsd.org> <44613469.2050000@freebsd.org> <4461522D.9060405@freebsd.org> <Pine.GSO.4.64.0605092346340.21472@sea.ntplx.net> <17508.62183.562795.176709@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, May 12, 2006 at 04:41:11PM -0400, Andrew Gallatin wrote: > > In addition to this linux vsyscall, there is the MacOSX/Darwin > commpage. The map machine-specific implementations of atomic > operations, bcopy, bzero, spinlocks, pthread_getspecific, etc into a > common page mapped into userspace applications. The also do a (mostly) > syscall-free gettimeoday this way. > > See http://fxr.watson.org/fxr/source/osfmk/ppc/commpage/?v=xnu-792 > > Obviously, we could not take the code due to APSL infection (unless > Apple were to donate it), but it is something else to look at. As somebody suggested, it can be easily done by exporting ELF shared object via md(4)-like device driver and then libc will be able to dlopen() and use it. This should provide the same performance as a "magic-page" approach, but it much easier to implement and it looks much less "hackish". -Maxim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060512213330.GA73197>