我一直在阅读实时系统以及它们的工作原理等。我也在看维基百科的文章,文章中说每步棋都有计时器的国际象棋游戏可以被认为是实时系统,因为程序必须在这段时间内计算一步棋。其他的游戏呢?正如我们所知,游戏通常尝试在25+ FPS上运行,它是否可以被认为是一个软实时系统,因为如果它低于25 (我使用25作为预定义的阈值),这并不是世界末日,只是对我们想要的性能的打击?
还有-游戏也有他们必须处理的事件。用户使用键盘/鼠标,并且系统必须在预定义的时间内(再次)相应地回答这些事件,然后游戏才被认为是“失败的”。
哦,为了简单起见,我现在说的是单人游戏。
听起来游戏符合软实时系统的标准,但我想知道我是否遗漏了什么……谢谢。
发布于 2010-04-27 02:12:31
来自Wikipedia,
如果一个操作的完全正确性不仅取决于它的逻辑正确性,而且还取决于它被执行的时间,那么这个系统就称为实时的。经典的概念是,在硬实时或即时实时系统中,在截止日期之后完成的操作被认为是无用的-最终,这可能会导致整个系统的严重故障。另一方面,软实时系统将容忍这种延迟,并且可能以降低的服务质量来响应(例如,在显示视频时省略帧)。
因此,我想说这些FPS游戏绝对是软实时系统的例子。如果有些帧被丢弃了也没问题。也就是说,维基百科还指出,国际象棋引擎在分配的时间范围内未能给出行动被认为是严重故障,因此,它是一个硬实时系统。
另一个想法是关于FPS-es中的AI。如果AI没有设法在足够的时间内返回结果,从而导致冻结,那么人们可能会认为AI是一个“失败的系统”。
发布于 2010-04-27 02:11:20
是的,但是非常强调soft的实时性。
实时并不是真正的快速--它只是简单地说,“足够快”地获得结果是正确结果定义的一部分。
发布于 2010-04-27 02:11:01
你可以这么叫它们,但我认为这会延伸“实时”的定义。正如业界所理解的那样,“实时”通常意味着事件将在最大时间内得到服务,而该时间通常是毫秒,有时甚至是微秒。相比之下,国际象棋程序以冰川般的速度进行(至少就交互而言)。满足硬实时约束所需的任何特殊编程约束都不适用于编写像这样的“缓慢”交互式游戏。
“互动”是一个合适的词。至于视频游戏,"FPS“实际上已经成为用于对这类程序进行分类的术语,其特征是循环重复地更新图形和计算游戏机制。
https://stackoverflow.com/questions/2715708
复制相似问题