Как называется и какими функциями или макросами доступен
_всегда постоянно увеличивающийся таймер_,
то есть тот, который не зависит от смещения или установок даты/времени.P.S. Вроде уже пробегало в форуме, но не смог найти.
>Как называется и какими функциями или макросами доступен
>_всегда постоянно увеличивающийся таймер_,
>то есть тот, который не зависит от смещения или установок даты/времени.
>
>P.S. Вроде уже пробегало в форуме, но не смог найти.если я правильно понял, то можно оперировать unixtime.
в баше это будет примерно так:
t1=`date +%s`
.... проходит время
t2=`date +%s`
echo $((t2-$t1))
доступ к таймеру нужен не из shell, а из С
и таймер это должен всегда линейно инкриминироваться по прерываниямТакой есть, только я забыл как его зовут :)
>доступ к таймеру нужен не из shell, а из С
>и таймер это должен всегда линейно инкриминироваться по прерываниям
>
>Такой есть, только я забыл как его зовут :)Может быть, имеется в виду интервальный таймер ITIMER_REAL, который работает в реальном режиме? В структуре itimerval можно задать начальное время, когда таймер должен сработать, а также как часто это должно потом повторяться.
Если да, то функции - getitimer и setitimer.
clock_gettime(CLOCK_MONOTONIC, ...)
>clock_gettime(CLOCK_MONOTONIC, ...)Большое спасибо - оно.
P.S. Только что понял, что неправильно задал вопрос - причём тут интервальный таймер? :)
>>clock_gettime(CLOCK_MONOTONIC, ...)
>
>Большое спасибо - оно.
>
>P.S. Только что понял, что неправильно задал вопрос - причём тут интервальный
>таймер? :)Пишу статью про систему таймеров (система, ожидающая срабатывания большого количества таймеров), работающих в пользовательском процессе. Кому нидь этот вопрос интересен?
>Пишу статью про систему таймеров (система, ожидающая срабатывания большого количества >таймеров), работающих
>в пользовательском процессе. Кому нидь этот вопрос интересен?В общем да =).
>система, ожидающая срабатывания большого количества таймеров
Через callback функции?
>>система, ожидающая срабатывания большого количества таймеров
>
>Через callback функции?нет, не callback. Но можно приспособить под использование callback.
Трудно сходу предположить для чего это может быть нужно при наличии select:pool:epool:rtsig:kqueuе,
но очень интересно, особенно в плане "...большого количества таймеров..."
>Трудно сходу предположить для чего это может быть нужно при наличии select:pool:epool:rtsig:kqueuе,
>
>но очень интересно, особенно в плане "...большого количества таймеров..."К select:pool:epool:rtsig:kqueuе хочется добавить еще pselect и poll(4) :) А так, да. Про них там речь и пойдет.
Статья выглядит как ТЗ, для разработки универсальной библиотеки. К тому же почти закончена. Осталось доделать несколько ньюансов. Особенность - продуманность решения с минимальным потреблением ресурсов, высокая гибкость для встраивания в любые среды (в том числе и в Java), дополнена некоторой возможностью масштабирования. На данный момент есть одно досадное ограничение, которое пытаюсь преодолеть.
Статья планируется к выходу в сентябре. Возможно будет создан OpenSource проект, как реализация по ней.
Пока вся информация.
>Статья планируется к выходу в сентябре. Возможно будет создан OpenSource проект, как
>реализация по ней.Где можно почитать данную статью?
>clock_gettime(CLOCK_MONOTONIC, ...)Возник вопрос: clock_gettime(CLOCK_MONOTONIC, ...) использует syscall или это только внутренняя кухня glibc ?
>>clock_gettime(CLOCK_MONOTONIC, ...)
>
>Возник вопрос: clock_gettime(CLOCK_MONOTONIC, ...) использует syscall или это только внутренняя кухня glibc
>?это и есть syscall :)