[Lazarus] EpikTimer v1.0.1 released

Lukasz Sokol el.es.cr at gmail.com
Fri Jun 20 14:15:18 CEST 2014


On 20/06/14 12:52, Michael Schnell wrote:
> On 06/20/2014 01:38 PM, Lukasz Sokol wrote:
> 
>> Is it possible to call about any syscall (timing included) through
>> (32bit) exising vdso ?
> I understand that is what "__kernel_vsyscall" is supplied for (and I
> don't understand why it is nit supplied in 64 Bit).

Henry just corrected me : that's not what this function is for: it's to select int 0x80 vs sysenter...

and I remember seeing somewhere on lkml (long time ago) that 64bit x86 don't need it,
(either they both are equivalent or int 0x80 doesn't exist any more, or something...)

>> And measure how it goes vs 'normal' way of doing it via library
>> chain?
>> 
> In fact that is not in my agenda.
> 
> I suppose for normal syscalls there will be no significant
> difference, as the switch to Kernel-mode and back will take the
> greatest amount of latency. But there might be certain syscalls that
> in fact are handled  completely in user mode by the vDSO variant and
> hence  will perform better.
> 

Can't comment on that, I'm afraid, you wouldn't know till you tried though.

> 
> I did not yet actually _call_ any vDSO function right now. I only
> checked how to find the vDSO ELF structure and dumped it's content on
> the screen so that I can see, what functions are implemented.
> 
> I did not yet try to do code that analyzes the ELF structure itself
> to find the procedure entry points.

That too I remember had some coverage on lkml since creators of one 
compiler (the Go language) got it wrong (the ELF parsing). 
But it seems they tried, at least.

> 
> If you want do do  some tests yourself, I can send you my pure-pascal
> source code (no C-library calls ) that is able to locate the ELF
> structure (as well 32 as 64 Bits), so that you can enhance it.
> 

I'm sorry :) I've neither time or knowledge required ...
(I run Wheezy here, with kernel 3.2.0 i probably can't be of any help here either...)

Having a timer component, however, that can use this, 
could provide us application writers to have a way to detect&select what we want,
when it comes to implementation.


> -Michael
> 
Lukasz








More information about the Lazarus mailing list