什么构成'实时'

时间:2008-09-17 05:55:09

标签: real-time glossary near-real-time

我无法决定是将“我的应用”分类为“实时”还是“接近实时”,或者甚至是其他东西。

软件在从源生成数据时立即接收数据,然后根据某些规则,在满足某些条件时发出警报。它需要每隔30秒检查最后30秒的数据,以确定是否满足规则的标准。

那是实时的吗?实时与近实时定义的阈值是什么?

修改

我认为这是Define realtime on the web for business的副本。

请确定以上主题是否不足以回答您的问题。

13 个答案:

答案 0 :(得分:20)

实时=保证最长的分辨率。它可能是皮秒或分钟,具体取决于应用程序的要求

这是StackOverflow最大的问题:不合格的人回答很多问题的答案“听起来不错”并得到投票,关心答案是否真正正确的人不要快速吐出废话以赢得代表修复错误答案。由于预期的下意识反应而匿名发布。

答案 1 :(得分:9)

实时获取对在指定时间段内完成的事件或您的系统失败的必要响应。

人们习惯于认为这必须意味着“少量毫秒/微秒”,但这不一定是真的 - 这取决于你的系统。

如果您的系统失败,如果它没有在30秒内完成所需的响应,那么它就是“实时”。

对于某些系统, fail 可能是灾难性的,例如:造成多人死亡 - 这被描述为安全关键,例如:关闭核电站。

答案 2 :(得分:6)

短语“实时”涵盖了相当大的一块地面。

模糊的定义是“在有限的响应时间内起作用的软件”。

如果边界很难,例如在汽车的喷射控制系统中,该软件被称为“硬实时”。

边界是柔软的,例如在音乐播放系统中,可以容忍高达50ms的变化,系统被称为“软实时”。

所以是的,对于某些实时定义,您的系统是实时的。

但如果你实时调用实时系统中的任何其他人,你可能会被嘲笑,因为30秒是非常巨大的。

答案 3 :(得分:3)

嗯,这可能更像是一个营销问题,而不是技术问题。

就嵌入式硬件而言,实时涉及处理传入信息(中断等)的已知固定最长时间。

您当然可以将30秒延迟视为实时,特别是如果所述信息的传递时间长于此值。

例如,如果您的“提醒”是一封可能在邮件服务器上花费10分钟的电子邮件,或者用户只在每半小时检查一次红十字,那么30秒就足以实现。

答案 4 :(得分:2)

我认为定义实时的一个方面是流程是 deterministic - 也就是说,应用程序的响应时间完全可以根据输入进行预测。

因此,使用非常宽泛的画笔绘画,任何位于Windows顶部的应用程序最多只能“接近实时”。如果您的应用程序在某种沙箱平台(Java,.NET)上运行,那么您就无法完全控制平台功能(例如垃圾收集)。

我个人的规则是“实时”不属于台式电脑;这是PLC的领域(是的,他们可能正在运行像QNX,VxWorx甚至RTLinux这样的操作系统。)

答案 5 :(得分:1)

定义“实时”的另一种方法是评估许多RTOS(实时操作系统)的功能。例如QNX的定义是here。请注意,它们符合POSIX PSE52实时控制器1003.13-2003系统产品标准。大多数嵌入式操作系统都将提供类似的功能。

答案 6 :(得分:1)

来自我的控制朋友的'硬'实时定义 - 迟到的信息是错误的信息。如果它需要每1秒存在并且它在1.1秒内到达那里,它对于计算是无用的。

答案 7 :(得分:1)

我在我的网站real-time.org上提供了一个冗长的讨论。主页有一个简报的临时链接。简报讨论了人们如何以及为什么不理解“实时”(以及“硬”和“软”和“可预测”等)的含义。它提供了一些精确和一般的定义。我从那些不同意我对这个主题的解释的人那里听到了,但他们都没有像我一样精确和一般地提出任何东西。 “拉起一把椅子,让我们谈谈”,正如拉里金所说的那样。

答案 8 :(得分:0)

我认为答案是实时系统是主观的,因为“实时”只是需求强加的及时性约束。虽然显然需要2个小时来响应请求并不是实时的,但30秒的延迟可能足够快以符合实时要求。

我研究的是我认为是实时系统的情况,当系统中发生事件时,它会立即传播到系统上的设备,这样知道设备更新的延迟就是网络延迟和更新其内存数据的时间。

我个人不会将该民意调查的内容分类为每30秒更新一次。我们有一个网络应用程序作为前面提到的系统的一部分,它每30秒刷新一次,因此向用户显示最多30秒的数据。将此与赢得表格等同的对比与事件发生后立即更新。

同样,“实时”受到您对及时响应的定义的限制。

答案 9 :(得分:-1)

我想说实时的定义取决于背景。与音乐示例一样,实时需要毫秒,但可能与您的示例实时可能在30秒左右。这都是相对的。

答案 10 :(得分:-1)

我认为您需要查看特定解决方案或解决方案的一部分,以便您需要实时响应。实时响应是接收者(应用程序或基本上是最终用户)认为是实时的响应。

答案 11 :(得分:-1)

实时处理微秒......主要是围绕机器人技术。想想'移动手臂30微秒;焊接1000微秒;',就像汽车装配一样。

您的30秒是基于线程睡眠还是非实时操作系统中的计时器?如果是这样,那么你就有潜力。如果你超出这种差异(30.01秒),你会认为它是失败的吗?如果没有,那就不是实时了。

答案 12 :(得分:-2)

我同意John的意见,在你的情况下,你看起来至少有30秒的延迟,我会说这几乎是实时的。