V******B 发帖数: 3940 | 1 现在没用OS,都是些interrupt handler,因为对hard real time要求很高
如果上了操作系统,会有什么影响呢? |
S*A 发帖数: 7142 | 2 如果你现在的方案还行为什么要换呢?
【在 V******B 的大作中提到】 : 现在没用OS,都是些interrupt handler,因为对hard real time要求很高 : 如果上了操作系统,会有什么影响呢?
|
V******B 发帖数: 3940 | 3 系统越来越大了
每一代产品都是上一代10倍的code
如果有现成好的RTOS当然是最好的选择了
【在 S*A 的大作中提到】 : 如果你现在的方案还行为什么要换呢?
|
S*A 发帖数: 7142 | 4 So? Having Linux kernel you are going to deal with a much
bigger code base. Unless linux can provide some function
to simplify your code base.
【在 V******B 的大作中提到】 : 系统越来越大了 : 每一代产品都是上一代10倍的code : 如果有现成好的RTOS当然是最好的选择了
|
N****w 发帖数: 21578 | 5 no usually you don't need to touch most of linux code.
start with a real-time code base... hoho
QNX used to be very small. don't know now.
【在 S*A 的大作中提到】 : So? Having Linux kernel you are going to deal with a much : bigger code base. Unless linux can provide some function : to simplify your code base.
|
s****n 发帖数: 786 | 6 QNX 现在是RIM的产品,搞不好跟QT一样下场。
Vxworks 和 Monta Vista 也不错。
【在 N****w 的大作中提到】 : no usually you don't need to touch most of linux code. : start with a real-time code base... hoho : QNX used to be very small. don't know now.
|
S*A 发帖数: 7142 | 7 That is my point. It run a lot of kernel code before
running your RT code. So it might slow things down, no
strong RT guarantee.
You need to judge what is the real benefit of doing that.
【在 N****w 的大作中提到】 : no usually you don't need to touch most of linux code. : start with a real-time code base... hoho : QNX used to be very small. don't know now.
|
N****w 发帖数: 21578 | 8 the interrupt handling, bottom-half, kernel thread etc
is still very compact...
the benefit would be logging, debugging, web server... etc
【在 S*A 的大作中提到】 : That is my point. It run a lot of kernel code before : running your RT code. So it might slow things down, no : strong RT guarantee. : You need to judge what is the real benefit of doing that.
|
S*A 发帖数: 7142 | 9 bottom half (or now days call soft irq) is not really RT.
LZ ask RT so I assume he has some reason to use RT.
【在 N****w 的大作中提到】 : the interrupt handling, bottom-half, kernel thread etc : is still very compact... : the benefit would be logging, debugging, web server... etc
|
N****w 发帖数: 21578 | 10 RT means you have some requirement on latency
RT linux should have patches to achieve this, eg. somehow schedule the soft
irq sooner to meet the latency goal.
【在 S*A 的大作中提到】 : bottom half (or now days call soft irq) is not really RT. : LZ ask RT so I assume he has some reason to use RT.
|
S*A 发帖数: 7142 | 11 No strong latency guarantee.
Also it is a lot of work to change the current code to use
linux kernel for any thing your care about latency.
It comes back to for this price, what does that buy the LZ.
soft
【在 N****w 的大作中提到】 : RT means you have some requirement on latency : RT linux should have patches to achieve this, eg. somehow schedule the soft : irq sooner to meet the latency goal.
|
N****w 发帖数: 21578 | 12 https://rt.wiki.kernel.org/index.php/Frequently_Asked_Questions
The 2.6 Linux kernel has an additional configuration option, CONFIG_PREEMPT,
which causes all kernel code outside of spinlock-protected regions and
interrupt handlers to be eligible for non-voluntary preemption by higher
priority kernel threads.
With this option, worst case latency drops to (around) single digit
milliseconds, although some device drivers can have interrupt handlers that
will introduce latency much worse than that.
If a real-time Linux application requires latencies smaller than single-
digit milliseconds, use of the CONFIG_PREEMPT_RT patch is highly recommended
.
https://rt.wiki.kernel.org/index.php/CONFIG_PREEMPT_RT_Patch#Platforms_
Tested_and_in_Use_with_CONFIG_PREEMPT_RT
On recent Intel x86 CPU:
Avg. latency < 10us, worst case latency: < 30us (see Note 1)
【在 S*A 的大作中提到】 : No strong latency guarantee. : Also it is a lot of work to change the current code to use : linux kernel for any thing your care about latency. : It comes back to for this price, what does that buy the LZ. : : soft
|