Hello, I need to be able to put a process to sleep for 100-1000 microseconds (until now, I've been using a generic Linux kernel on a low-voltage x86 CPU). AFAIU, the x86 platform comes with several timers[*] and I had hoped one of them would prove useful in my situation. [*] I tried to list all the timers in: http://groups.google.com/group/comp.arch/msg/6be4741f4f92be6 (I found PIT, RTC, (L?)APIC timer, ACPI timer, HPET, TSC.) At some point, I was convinced that the simplest solution would be to purchase a PCI card with multiple Programmable Interval Timers, such as ADLINK's PCI-8554: http://www.adlinktech.com/PD/web/PD_detail.php?pid=27 Then I ran into the relatively new hrtimers infrastructure[*] which seems to let me do what I need. (I'm not sure how, though.) [*] http://www.tglx.de/hrtimers.html I'm confused. It seems a generic Linux kernel can indeed provide high-resolution timers without any additionnal hardware. Then when is a card with multiple PITs needed? Have any of you ever been in a situation where software came up short, and the multiple PITs were mandatory? What are the typical uses of such a card? Regards.
When is more than one PIT needed?
Started by ●September 5, 2006
Reply by ●September 6, 20062006-09-06
Spoon wrote:> I need to be able to put a process to sleep for 100-1000 microseconds > (until now, I've been using a generic Linux kernel on a low-voltage x86 > CPU). AFAIU, the x86 platform comes with several timers[*] and I had > hoped one of them would prove useful in my situation. > > [*] I tried to list all the timers in: > http://groups.google.com/group/comp.arch/msg/6be4741f4f92be6 > (I found PIT, RTC, (L?)APIC timer, ACPI timer, HPET, TSC.) > > At some point, I was convinced that the simplest solution would be to > purchase a PCI card with multiple Programmable Interval Timers, such as > ADLINK's PCI-8554: > > http://www.adlinktech.com/PD/web/PD_detail.php?pid=27 > > Then I ran into the relatively new hrtimers infrastructure[*] which > seems to let me do what I need. (I'm not sure how, though.) > > [*] http://www.tglx.de/hrtimers.html > > I'm confused. It seems a generic Linux kernel can indeed provide > high-resolution timers without any additionnal hardware. > > Then when is a card with multiple PITs needed? Have any of you ever been > in a situation where software came up short, and the multiple PITs were > mandatory? What are the typical uses of such a card?Perhaps there is a more appropriate newsgroup for this query?
Reply by ●September 6, 20062006-09-06
On Tue, 05 Sep 2006 16:31:25 +0200, Spoon <root@127.0.0.1> wrote: This may not be what you want but you might want to look at rtai linux. It's basically a real time kernel with linux riding on top. I assume you are working on one of the small board form factor pentium 2 or up?
Reply by ●September 6, 20062006-09-06