首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows 7不支持实时串行通信是真的吗?

Windows 7不支持实时串行通信是真的吗?
EN

Stack Overflow用户
提问于 2013-10-14 12:47:28
回答 3查看 678关注 0票数 1

我的一位同事正在从一个涉及串行通信的软件开发人员那里得到一个引用,在他们的引用中,开发人员做了以下声明:

...Windows 7操作系统,它使用非实时串行通信设置.

Windows 7不支持实时串行通信是真的吗?为了澄清“实时”的含义,该项目涉及机器人自动化和任何通信的延迟(如缓冲),可能会对产品造成损害,或使生产线停产。我找不到任何证据来支持或否认这一说法。不过,我不认为这是真的,我认为这可能与他们使用VB.Net进行开发有关。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-14 13:36:34

这里使用的“实时”一词实际上并不是指串行通信总线中的任何内容。

然而,它确实与windows多任务调度程序的设计无关,因为它不允许具有硬截止日期的实时任务。

有关为什么Windows不适合实时系统/高性能服务器?的一些信息,请参阅此问题

让你假装你有一个粒子加速器连接到你的电脑,你必须确保每10微秒磁力列车切换为下一组电池,但窗口决定是时候应用一些windows更新补丁。你的光子流不会被正确地重定向,并可能对系统造成损害。

票数 2
EN

Stack Overflow用户

发布于 2013-10-14 13:43:24

这是一个相当荒谬的说法,Windows本身并不是一个实时的操作系统.它无法提供用户模式代码响应速度足够快的硬保证。除了线程调度延迟之外,一个简单的错误(比如将进程的页面交换到分页文件)就足以导致重新运行它时的任意延迟。任何需要分页的虚拟内存操作系统的属性。因此,当然,“串行通信设置”也不能,假设您没有考虑编写环形0内核代码。没人知道。

这不是一个实际的问题,使用串口的唯一要点是与机器人的控制器对话。这提供了实时的保证。

只有当您命令机器人不受限制地移动并使用外部传感器使其停止时,您才会遇到麻烦。当你需要找到一个你不知道的物体时,这种情况并不少见。一个体面的控制器知道如何做到这一点,避免在Windows代码中实现它。内置在机器人内部触发电子停止的固体越野保护是必要的,你也不能相信那个传感器。

票数 2
EN

Stack Overflow用户

发布于 2013-10-14 13:44:52

不,Windows 7(实际上所有主流的Windows版本)都不是实时操作系统。为了澄清实时操作系统的含义:

实时操作系统(RTOS)是为实时应用程序请求服务的操作系统(OS) .它必须能够在数据进入时进行处理,通常不需要延迟缓冲。处理时间要求(包括任何OS延迟)以十分之一秒或更短的时间来测量。 RTOS的一个关键特征是它在接受和完成应用程序任务所需的时间上的一致性程度;可变性是抖动。1硬实时操作系统比软实时操作系统具有更少的抖动。主要的设计目标不是高吞吐量,而是一个软或硬性能类别的保证。通常或通常能够满足期限的RTOS是一个软实时操作系统,但如果它能够确定地满足一个期限,那么它就是一个硬实时操作系统。2 RTOS有一种先进的调度算法。调度程序的灵活性允许更广泛的计算机系统对进程优先级进行协调,但是实时操作系统更经常地专门用于一组狭窄的应用程序。实时操作系统中的关键因素是最小的中断延迟和最小的线程切换延迟;实时操作系统的价值更大的是它能以多快或多可预测的速度响应,而不是在给定的时间内所能完成的工作量。

请注意,大多数实时操作系统的效率较低(即吞吐量较低),这就是为什么主流操作系统中没有一个是实时的(例如,Linux的实时版本完全使用不同内核) --只有在非常精确的定时是绝对关键的情况下才值得这样做。

Windows CE ,是一个实时操作系统微软Windows CE 2.1实时系统

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19360602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档