I think this is a good idea. But I suppose this will meet the same problem 
I have met ---- syscall package is outside of the runtime.

在2021年4月28日星期三 UTC+8 上午12:54:25<Michael Pratt> 写道:

> I'm not sure if calling through the VDSO is the best solution to this 
> specific issue, though it does sound like a case that would certainly 
> benefit.
>
> Regardless, one fairly clean way we could support this would be to make 
> x/sys/unix.ClockGettime (and Gettimeofday) call through the VDSO rather 
> than performing the syscall. That is always a valid operation (the VDSO 
> will make the syscall if it doesn't support the specific options passed), 
> and I think would solve this problem without even changing the API. It 
> seems we don't do that already for simplicity of implementation and prior 
> lack of need.
>
> On Tue, Apr 27, 2021 at 12:13 PM Ian Lance Taylor <ia...@golang.org> 
> wrote:
>
>> On Tue, Apr 27, 2021, 8:55 AM Manlio Perillo <manlio....@gmail.com> 
>> wrote:
>>
>>> Il giorno martedì 27 aprile 2021 alle 17:51:46 UTC+2 Ian Lance Taylor ha 
>>> scritto:
>>>
>>>> On Tue, Apr 27, 2021 at 7:43 AM Manlio Perillo <manlio....@gmail.com> 
>>>> wrote: 
>>>> > 
>>>> > Il giorno lunedì 26 aprile 2021 alle 10:24:09 UTC+2 Pure White ha 
>>>> scritto: 
>>>> >> 
>>>> >> So I really want to know what is the right way to do vdso call 
>>>> outside runtime? 
>>>> >> 
>>>> > What about using a different function instead of time.Now, and using 
>>>> RawSyscall? 
>>>>
>>>> That wouldn't be a VDSO call. VDSO calls are in general faster than 
>>>> system calls. There is more background at 
>>>> https://man7.org/linux/man-pages/man7/vdso.7.html.
>>>
>>> Ian
>>>
>>>
>>> Yes, that wouldn't a VDSO call.  But since a VDSO call will require cgo 
>>> , maybe RawSyscall will be more efficient? 
>>>
>>
>> The meaningful comparison is to time.Now, which uses VDSO.  I suppose it 
>> is possible that RawSyscall of clock_gettime with a coarse clock would be 
>> faster than time.Now, but I would be surprised.
>>
>> Ian
>>
>>> -- 
>>
> You received this message because you are subscribed to the Google Groups 
>> "golang-nuts" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to golang-nuts...@googlegroups.com.
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/golang-nuts/CAOyqgcX9mfSFq5gucrTCi0PJyVdLzA2xGXNByDeOGOyaFLo1hA%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/golang-nuts/CAOyqgcX9mfSFq5gucrTCi0PJyVdLzA2xGXNByDeOGOyaFLo1hA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/a57afc3e-a91a-4564-b540-dce9ff0e2429n%40googlegroups.com.

Reply via email to