Embedded 硬度实时测试操作系统
我有一个嵌入式设备()宣传实时功能,但没有提到“硬”或“软”。当我等待制造商的回复时,我想自己测试系统不会有什么坏处 确定特定设备在实时/确定性行为(延迟和抖动)方面的“硬度”有哪些既定程序Embedded 硬度实时测试操作系统,embedded,real-time,hard-real-time,Embedded,Real Time,Hard Real Time,我有一个嵌入式设备()宣传实时功能,但没有提到“硬”或“软”。当我等待制造商的回复时,我想自己测试系统不会有什么坏处 确定特定设备在实时/确定性行为(延迟和抖动)方面的“硬度”有哪些既定程序 在大学里,我可以使用一些非常整洁的硬件(好的示波器和信号发生器),所以我认为我不会在测试设备方面遇到任何问题,只是专业知识。有了这种设备,应该很容易将示波器与稳定的时钟同步,每次实时系统产生一个输出时产生一个尖峰,看看这个尖峰与中心的差异有多大。变化越小,硬度越大。为了澄清鲍勃的答案,可能: 使用信号发生器
在大学里,我可以使用一些非常整洁的硬件(好的示波器和信号发生器),所以我认为我不会在测试设备方面遇到任何问题,只是专业知识。有了这种设备,应该很容易将示波器与稳定的时钟同步,每次实时系统产生一个输出时产生一个尖峰,看看这个尖峰与中心的差异有多大。变化越小,硬度越大。为了澄清鲍勃的答案,可能: 使用信号发生器以某种不同的频率产生脉冲。 最好在一定范围内随机分布 使用信号发生器(触发信号)启动示波器 RTO必须响应、执行操作并发送输出脉冲 将RTOS输出馈送到作用域的输入2中 获取持久化/收集模式的作用域。 让示波器从A开始,在B停止。如果可以的话 在理想的工作环境中,让它为您测量分布。勒克罗伊会的。 从比预期慢得多的跟踪开始。您需要能够看到缓慢的异常值。 您将能够看到分布情况。
假设为正态分布,响应时间变化的SD为柔软度。 (这在实践中不会真的发生,但如果你没有得到异常值,它是相当有用的。) 如果存在较大延迟的异常值,则RTO不是很难实现。不能很好地满足最后期限。那么它就不适合于艰苦的实时工作。 许多类似RTO的东西都有很好的曲线左边缘,像1/f曲线一样向下倾斜。 这是综合性紧张的迹象。要注意的是示波器右端的慢响应尖峰。如果没有异常值,继续用更快的轨迹重复实验,以获得良好的坡度图像。在你的论文中应该有一些推测性的结论 如果对于您的应用程序,假设1uS的增量是可以的,而您的测量值是0.5us,那么这一切都很酷 无论如何,您可以发布结果(可能是发布,但肯定是在web上)
当你写完这篇文章时,把这个问题链接到这篇文章。我知道自己是个怪人,但用示波器测试一台带有以太网/usb/其他数字端口和巨大内部状态(RAM)的计算机既无效又不可靠 您可以将任何PC连接到输出端口并运行适当的统计分析,而不是查看波形 既定程序(如果输入信号本质上是模拟的)是针对多个特征输入(传统上是尖峰、阶跃函数和不同频率的正弦波)测试系统,并测量每种输入类型的相移和方差。然后在系统规范中使用最坏情况 同样,如果您使用的是标准端口,您可以轻松地在PC上生成这些端口。如果输入是真正的模拟输入,则需要一个单独的DAC或一个好的声卡 现在,这并不能说明操作系统是实时的——它可以运行香草Linux,甚至赢得CE,并且如果硬件足够快,仍然可以在这些测试中产生良好和稳定的结果 所以,您需要在处理器、内存和所有端口上模拟繁重且变化的负载,让它加热并消耗内存几个小时,然后重复测试。如果延迟保持不变,就很难实现实时性。如果在任何负载和输入信号类型下,它没有增加到可接受的极限以上,则它是软的。否则,这就是广告
附言:这意味着,即使对于关键系统,如果你有硬件,你实际上也不需要硬实时。硬实时与软件的工作方式有关,而不是硬件本身。当询问某件事情是否是硬实时时,必须将其应用于整个系统(硬件、RTO和应用程序)。这意味着硬实时或软实时是系统设计问题 在负载超过规范的情况下,即使是硬实时系统也会出现故障(希望有适当的故障指示),而低负载的软实时系统会给出硬实时结果。必须及时进行多少处理以及可以执行多少预/后处理是硬/软实时的真正关键 在某些实时应用程序中,某些数据丢失不是故障,它应该只是低于某个级别,这也是系统标准 您可以生成电路板的输入,让一个小应用程序对其进行计数,并检查数据丢失的级别。但这会给您一个特定于运行该应用程序的系统的评级。一旦你开始做更多的处理,你的计算量就会增加,你现在有了一个不同的硬实时限制 该板卡将运行一个裸体调度程序,这将为大多数任务提供良好的可预测的硬实时性能。 在计算量很大的情况下运行完整的RTOS,您可能只能获得软实时
评论后编辑
我用来衡量软件性能的最有效和最简单的方法(假设您使用调度)是在电路板上使用一个自由运行的硬件计时器,并在我的周期的开始和结束时加上时间戳。或者,如果运行完整的RTOS时间戳,则需要进行采集和转换。节省您的最大时间,并在一秒钟内对这些值进行平均。如果你的平均值在50%左右,而你的最大值在平均值的20%以内,你就可以了。如果不是的话,是时候重构你的应用程序了。随着应用程序的增长,周期时间也会增加。您可以监视所有软件更改对周期时间的影响 阿诺