Bozitaai wrote: > Platform => Linux 2.4.32 with RTAI > Development in User Space > > I am developing the UDP Packet Scheduler, which sends the UDP packets at > particular time, the target transport rate is 20Mbits/s and the time > different between each UDP packet is about 500 microseconds. The > transmission time must be very precisely, otherwise the buffer of receiver > will be under-flow or over-flow. > > In my program, nanosleep function is used to control the time, and I > observed the kernel sometimes schedules to do other lower priority tasks. It > makes my program sometimes occurs LONG DELAY, about 20 ~ 60 > milliseconds, and my program can't use 100% resource of whole Linux system. > > I was trying different methods, for example, low-latency patch, preemption > patch and hrt patch, but the problem still doesn't been solved. > > Any idea can share with me? Thank you very much >
Using RTnet without RTmac/TDMA will likely be the safest way to go. Hoping on the determinism of the standard Linux network stack even under PREEMPT_RT is risky. It's simply lacking a hard-RT resource management. Thus your program may sporadically fail to meet its deadline, e.g. under memory pressure. Jan
signature.asc
Description: OpenPGP digital signature