Re: Re: Improving the kernel/i386 timecounter performance (GSoC proposal)

From: Sergey Babkin <babkin_at_verizon.net>
Date: Fri, 27 Mar 2009 16:14:06 -0500 (CDT)
   Would not a normal mmap be duplicated on fork? I'd do it as a small
   pseudo-= driver
   that allows to mmap this page. Then libc would open this pseudo-d   evice and mmap it,
   either in the on-load handler or on the first call of   gettimeofday().  I think, that should
   be it, no special magic nece= ssary.
   The per-process is more difficult and would require the magic= :-) Or
   maybe
   no magic a s such: just mmap the file from the /proc files= ystem.
   Then on fork
   in the child unmap this page, open the new file, and= map it. vfork
   will still be tricky :-)
   It also means wasting an extra p= age per process.
   -SB
   Mar 27, 2009 12:51:56 PM, [1]scottl_at_samsc= o.org wrote:

     I've been talking about this for years. All I need is help with      the VM
     magic to create the page on fork. I also want two pages, one gl     obal
     for gettimeofday (and any other global data we can think of) and
     on= e
     per-process for static data like getpid/getgid.
     Scott
     Sergey Babkin wrote:
     > (Sorry for the top quoting). Probably the= best implementation of
     > gettimeofd=y() is to have
     > a= page in the kernel mapped read-only to all the user
     pr=cesses. Put
     &g= t; the kernel's idea of time
     > into this page. Then getting the= =ime becomes a simple read
     (OK, two
     > reads, to make sure that<= br>> no update =as happened in
     between).
     

References

   1. file://localhost/tmp/3D"mai
Received on Fri Mar 27 2009 - 20:14:17 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:45 UTC