Цитата(makc @ Jun 21 2006, 11:55)

Тут еще вопрос в том, с какой частотой будет вызываться шедулер. Если период вызова шедулера будет больше или равна 10 мс, то, понятно, "дырка" может быть больше 10 мс.
- в стандартном варианте - 10мс., но при ядре старше 2.6.х вы можете эту дискретность уменьшить.
- но вы можете просто не позволять решедулировать этот процесс user space другими, играясь приоритетом и политикой диспетчеризации, тогда дискретность вам вообще до фени (только не забыть устранить всякое "динамическое управление приоритетом" со стороны ОС):
Цитата(makc @ Jun 21 2006, 12:13)

Это можно будет утверждать только при жестко заданных условиях: какие процессы запущены, их приоритеты, какие прерывания активны и как часто они возникают, сколько времени может отнять обработка отдельного прерывания. Если знать все эти параметры, то, думаю, можно уложиться в 50 мс.
- это, в общем случае, так, но у вас, по сказанному раньше, нет особенно с фокусами ни юзеровских ни системных процессов?
- неприятность в том, что кроме штатного решедулирования вам большую (во много раз) дисперсию могут "подарить" другие механизмы: возникновение свопинга (который должен быть напрочь исключён), ... инверсия приоритетов, которую можно создать уже при 3-х процессах/потоках...
Смотрите и в эту сторону.
P.S. а вообще, именно из-за этого, что механизмы
никакого Linux не гарантируют невозникновение каких-то задержек на все-все 100% - это заложено в идеологии системы - Linux ни с какими приставками RT не будет до конца RT (даже при 2-х ядерности)...
Хотя у некоторых здесь бытует мнение, что всякое RT - это некий мистификасьён

... - может они что-то знают, и будем им верить?