[LWN Logo]

From:	"Ulrich Windl" <ulrich.windl@rz.uni-regensburg.de>
To:	linux-kernel@vger.rutgers.edu
Date:	Mon, 22 Feb 1999 09:53:19 +0100
Subject: announce (experimental, i386 only): `nanokernel' #2 (PPSkit)

Hello,

after about another 14 hours of hacking, several reboots, compiles, 
and significant frustration I'd like to announce the second snapshot 
of the PPSkit-0.6, also known as `nanokernel', because it brings 
nanoseconds into the kernel.

Relative to the first snapshot I've made more renamings (the kernel 
lords will curse me, I guess), and basically the thing is ready for 
true nanoseconds resolution.

I only have one problem left: calibrate_tsc() is currently disabled, 
because it will casue a divide overflow when trying to calibrate for 
nanoseconds. Maybe I was to tired when I tried to fix it, but my 
solution didn't work. Maybe someone can open my eyes...

I did two short basic tests on my Pentium 100: Run xntpd3-5.93 
(quickly hacked and recompiled) with a "PPS" source (Meinberg 
GPS167), and it looked good. Then I let the quartz run free and 
measured the offset against the PPS pulse. It also gave a straight 
line. So I guess time is still working...

Locations are master.kernel.org/pub/linux/daemons/ntp/PPS and 
ftp://pcphy4.physik.uni-regensburg.de/pub/wiu09524/PPS, the file is
PPSkit-0.6-i386-pre2.diff.gz.

The kernel will call itself "2.2.1-NANO"...

Feedback is welcome. I hope to be able to finish the nanokernel soon 
to return to other projects (like my tax declaration 8-().

Gurus for the non-i386 architecture can preview the stuff, but maybe 
not yet implement similar routines as long as the interfaces haven't 
settled down.

Especially we have every time routine doubled now, once for 
microseconds, once for nanoseconds. I'd also like to minimize the 
architecture-specific time.c. I'll have to see what I can do...

Regards,
Ulrich Windl


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/