Hast du ein KKB (kurzes kompilierbares Beispiel) zum testen der Zeit von nanosleep?
Soft Realtime ist mit der Kerneloption PREEMPT schon im Defaultkernel aktiviert. Solltest du Hard Realtime benötigen, gibt es Xenomai, welche sich vor dem Linuxkernel schaltet.
Bzgl. den Steckverbindern, du brauchst sowieso das APF28-Devboard, außer du willst die Platine selber designen.
Code:# cat /proc/timer_list Timer List Version: v0.6 HRTIMER_MAX_CLOCK_BASES: 2 now at 223022594011 nsecs cpu: 0 clock 0: .base: c05f7678 .index: 0 .resolution: 1 nsecs .get_time: ktime_get_real .offset: 9516562497 nsecs active timers: clock 1: .base: c05f76a8 .index: 1 .resolution: 1 nsecs .get_time: ktime_get .offset: 0 nsecs active timers: #0: <c05f7be0>, tick_sched_timer, S:01 # expires at 223030000000-223030000000 nsecs [in 7405989 to 7405989 nsecs] #1: <c7087f30>, hrtimer_wakeup, S:01 # expires at 223037001169-223037051169 nsecs [in 14407158 to 14457158 nsecs] .expires_next : 223030000000 nsecs .hres_active : 1 .nr_events : 4138 .nr_retries : 182 .nr_hangs : 0 .max_hang_time : 0 nsecs .nohz_mode : 2 .idle_tick : 222980000000 nsecs .tick_stopped : 0 .idle_jiffies : 4294959594 .idle_calls : 23304 .idle_sleeps : 11222 .idle_entrytime : 223010000001 nsecs .idle_waketime : 223010000001 nsecs .idle_exittime : 223010062503 nsecs .idle_sleeptime : 213128532357 nsecs .iowait_sleeptime: 0 nsecs .last_jiffies : 4294959596 .next_jiffies : 4294959597 .idle_expires : 223010000000 nsecs jiffies: 4294959598 Tick Device: mode: 1 Per CPU device: 0 Clock Event Device: mxs tick timer max_delta_ns: 134218658631456 min_delta_ns: 468753 mult: 137438 shift: 32 mode: 3 next_event: 223030000000 nsecs set_next_event: mxs_set_next_event set_mode: mxs_set_mode event_handler: hrtimer_interrupt retries: 0







Zitieren

Lesezeichen