精华内容
下载资源
问答
  • WINDOWS RTX实时操作系统,包括5篇论文和期刊,以及简单源码。由于网上关于RTX的资料较少开发项目特此整理,可通过官网申请下载软件后,软件内部也带有DEMO代码,参考文档开发过程完成开发。
  • 获取windows系统实时播放的音量,windows7 系统Embarcadero® Delphi 10 Seattle下调试成功
  • Windows系统下开发不可缺少的利器,实时查看日志利器。
  • windows实时操作系统

    千次阅读 2014-07-02 21:39:00
    最近一个项目需要用windows进行实时定时操作以实现同步功能(12ms),不过由于windows是分时系统,其可供用户使用的定时器误差较大。 通过查找发现了一个ardence公司开发的一个叫做RTX的可以用于windows的能够实现...

    最近一个项目需要用windows进行实时定时操作以实现同步功能(12ms),不过由于windows是分时系统,其可供用户使用的定时器误差较大。

    通过查找发现了一个ardence公司开发的一个叫做RTX的可以用于windows的能够实现实时操作的子系统,结果一直没找到这个软件,后来才发现这个公司在2006年就被citrix systems(做虚拟化产品的软件公司)兼并了,这个公司的产品里面也没有这种实时操作子系统了。

    后来又发现http://www.msptc.com/RTH.htmlhttp://www.real-time-systems.com/real-time_hypervisor_faq/index.php#Which processor architectures are supported?,http://zone.ni.com/reference/en-XX/help/372833D-01/rthyperhelp/hv_manager/,这三件公司据介绍也是做实时操作子系统这类东西的。

    好像有的说是这种实时操作子系统就是基于intel提供的vt-x(?忘了,就是虚拟技术)实现的,有的说是通过某种方法以dos的方式执行,我也是没有弄明白。

    这些软件网上找了很久也没有找到,不知道有没有人用过,可否给我提供些帮助?谢谢

    还有就是说win ce 的实时性能挺不错的,不知道能达到什么级别的定时精度?

    转载于:https://www.cnblogs.com/comolanma/p/3821192.html

    展开全文
  • Windows实时处理系统的研究.pdf WINDOWS环境下开发实时系统的关键.pdf 基于80_86CPU和Windows平台的实时测控系统精确定时.pdf 基于APIC时钟的嵌入式Linux内核实时化研究.pdf 基于LocalAPIC的Windows2000实时化改造....
  • 无法立即响应外部事件的中断,因此也就不能满足工业应用环境中实时事件处理和实时控制应用的要求,因此如何在Windows环境下实现实时控制是实现大多数实时系统的关键。本文归纳了Windows环境下实时操作系统实现的几种...
  • TenAsys INtime实时操作系统与Windows能够完美结合,同时INtime还可以脱离Windows独立运行于远程计算机的CPU节点,并能够在INtime实时系统内部组成本地节点和远程节点的互相访问,特别适合协同自动化控制和机器人...
  • 为什么windows不是实时操作系统

    千次阅读 2014-07-04 23:04:15
    实时操作系统要求用户任务可以得到及时响应,多用于嵌入式设备,而windows和linux属于通用型操作系统,更注重数据吞吐量而不是系统响应时间,这是通常的说法。 从操作系统的管理机制来看,windows具备多级中断...



    实时操作系统要求用户任务可以得到及时响应,多用于嵌入式设备,而windows和linux属于通用型操作系统,更注重数据吞吐量而不是系统响应时间,这是通常的说法。

    从操作系统的管理机制来看,windows具备多级中断体系和线程优先级。获得windows最高优先响应的是级别最高的中断,中断是一种可以打乱正常执行流程的机制,在IA32体系中,它来源于设备对CPU的请求,一般也称为IO中断。这是因为设备的IO体系处理速度要远远低于几千MIPS的CPU处理速度,CPU若不想白费力气的轮询,只能让设备完成IO任务之后中断自己以便继续处理。举个生活中的例子,中断机制就像打电话通知,比如你维修一个电器,根据损坏程序,也许是1天也许是一周可以修好,你通常不会每天去一遍维修店(轮询)而是等待维修店给你的电话(中断)。

    windows用IRQL来标示中断优先级,0号中断跟电源相关,级别最高;最低的三级分别是DPC/Dispatch,APC和Passive级别。IA32体系中,优先级最高的中断可以中断优先级低的中断,这叫做中断屏蔽:这也很容易理解:我们生活中总是优先处理更重要的电话。当然,中断屏蔽之前会保存现场,比如你可以在挂掉低级中断的电话前跟对方抱歉,说一会儿再打过去。

    中断屏蔽是这样实现的:CPU在接到一个中断请求(IRQ)之后,会提升当前中断请求级别,此时和当前级别相同甚至更低的中断请求就被屏蔽了,所有的时间片都用于当前中断的处理(除了时钟,因为时钟中断级别够高),只有当处理完当前中断后,CPU才会降查看是否有低级中断出现,如果有,就将当前IRQ降低到该中断请求级别并进行处理。所以CPU是否能够及时响应取决于该中断的优先级。那么用户线程(任务)在windows中断级别中排在那个位置呢?——排在最低:Passive级别。这样,用户任务的实时性就无法保证。所以windows不是实时操作系统。

    passive以及比它高的俩级别都是软件中断,平时用户任务在线程调度程序(位于dispatch级别)的安排下按照时间片进行分时处理,用户任务(线程)虽然也有优先级,但是因为它们出于passive这一级别的IRQL上,所以总会被其他发生的中断所打断。举例来说,老师是线程调度程序,学生们是用户线程,老师调度每个学生在固定时间(时间片固定)内发言,但根据学生(线程)优先级的不同,老师可以决定学生的发言频率(线程调度策略),但是如果发生意外事件,比如校长跑到教室有事情要讲(软中断),或者停电(最高级别的硬件中断),那么正常的课堂秩序被打乱,除非中断响应程序执行完毕,才会恢复。这种情况下,假如学生(用户线程)即使出现什么实时性要求高的事件,也得不到CPU的响应。

    转载自:http://hi.baidu.com/trueailei/item/9e21b3cd22b5f83f44941603


    展开全文
  • Windows CE 5.0实时系统介绍

    千次阅读 2006-06-19 13:54:00
    目前,Windows CE已从一款基本操作系统升级到体积小巧、组件化的硬实时嵌入式操作系统。尽管Windows CE具有与Win32相同的应用编程接口(API),而且微软台式机和服务器操作系统也配备了此类接口,但Windows CE的底层...

    目前,Windows CE从一款基本操作系统升级到体积小巧、组件化的硬实时嵌入式操作系统。尽管Windows CE具有与Win32相同的应用编程接口API),而且微软台式机和服务器操作系统也配备了此类接口Windows CE的底层操作系统架构和台式机的操作系统完全不同。Windows CE支持包括Win32MFCATL等在内的台式机应用开发结构,也支持使用.NET Compact Framework的管理应用开发,还支持当前实时嵌入式系统设计,提供操作系统必要之需的实时内核。本文中我们主要讨论用于验证Windows CE 5.0实时功效的操作系统工具。

    众所周知,实时系统并不通过单一分析进行测试,即使单一分析可以证明实时系统的正确性。实时系统的测试是详尽讨论此问题的依据。您的工作就是建立起用户对解决方案的信任感。下文介绍的工具可以完整、实时地解释应用程序和操作系统之间的交互作用,它们有助于您加深对实时系统的了解。

    尽管关于实时的定义还存在诸多争议我们还是来了解一下对它的定义。这里我引用comp.realtime FAQ的定义。实时系统的权威定义Donald Gillies如下

     实时系统是这样一种系统,即其计算正确与否,不仅取决于计算逻辑是否正确,还取决于计算结果所花费的时间如果不能满足系统的时间限制,就会出现系统失败的情况。

    因为集高速I/O、机器人技术和机械控制于一身的工业自动化应用对时间的要求最为苛刻。微软开始了解实时嵌入式操作系统的特殊社会要求。自1986以来,通用汽车动力公司(GMPTG)在制造应用中实施OMAC技术方面一直处于领先地位并且在后来促成了OMAC用户群的形成。他们一起对数百种应用进行评估后发现,大多数系统95%需要一毫秒或稍长的周期。一毫秒周期允许的变化幅度为10%或是100微秒(µs。这是基于200 MHz X86系统的Windows CE的设计目标,其在该平台上的平均响应时间为50 µsWindows CE达到或超过了95%的被评估的硬实时应用OMAC的要求。

    大部分满足要求的工业自动化应用是由从一台机器发出的外部信号驱动的。此信号以中断形式发送给硬实时应用。微软鼓励Windows CE的开发人员尽可能在中断服务线程IST中置入更多的应用代码。这使OMAC抖动定义变为针对不超过100 µsIST延迟的时间限制。其余被评估的应用使用计时器创建其周期。这就需要一台延迟或抖动不超过100 µs1毫秒计时器。总之OMAC定义提出以下设计和测试要求

    ·                     Interrupt Service Thread (IST) latencies of no more than 100 µs latency.

    ·                     1 millisecond timers with maximum of 100 µs latency.

    ·                     中断服务线程IST延迟不超过100 µs

    ·                     1毫秒计时器的延迟最长为100 µs

    在了解了OMAC设计和测试要求后接下来让我们看看Windows CE中安装的工具。这些工具的用途是确定中断定时、应用执行动作、操作系统功能定时和时序安排定时。

     

    区分实时系统和实时操作系统也很重要。实时系统包含硬件、操作系统和应用等所有元素。实时操作系统仅仅是构成实时系统的其中一个元素。如需了解更多信息请参阅微软Windows CE实时性能设计和优化

     

    我们将介绍诸多工具和用途

    ·                     ILTiming。该工具用于确定平台的中断服务例程ISR和中断服务线程IST延迟。ISR延迟是指从硬件中断到第一次中断服务例程指令之间的时间间隔。而IST延迟是指从现有ISR到中断服务线程开始之间的时间间隔。

    内核实时性能最重要的特性之一就是可以在指定的时间内实施中断。中断延迟主要指软件中断处理延迟即从外部中断到达处理器直到中断处理开始之间的时间间隔。

     

    如果不发生分页操作,Windows CE中断延迟时间被限制于内存中锁定的线程。这样就可以计算最糟糕情况下的延迟时间ISR的启动和到IST的启动的总用时。通过计算ISRIST需时间可以确定中断处理以前的总用时。

    ISR延迟

    ISR延迟是指从IRQCUP中被设置到ISR开始运行时的时间。以下三个与时间相关的变量会影响ISR的启动

     

    A = 中断在内核中关闭的最长时间。内核很少关闭中断,但如果将它们关闭,则关闭的时间长度会受到限制。

    B = 在内核调度中断和ISR被实际调用之间的时间。内核使用该时间确定要运行什么ISR,并保存在继续之前必须保存的任何寄存器。

    C = ISR 返回到内核和内核实际停止处理中断之间的时间。这是内核通过还原在ISR被调用之前被保存的任何状态(例如寄存器)来完成ISR操作的时间。

     

    正在测量的ISR的启动时间可以基于系统中其他中断的当前状态进行计算如果中断正在进行,则计算要测量的新 ISR 的启动时间必须考虑到两个因素:所关注的中断已经发生之后将发生的较高优先级中断的数量,以及执行ISR所占用的时间。

     

    Windows CE和原始设备制造商OEM都会影响执行ISR的时间。Windows CE的控制变量ABC都受到限制。

    IST延迟

    IST延迟是指从完成执行ISR即(通知线程IST开始执行的时间。以下四个与时间相关的变量会影响IST的启动

     

    B = 内核调度中断和真正调用ISR的时间间隔。内核利用这一时间决定将要运行什么ISR,并保存在继续之前必须保存的任何寄存器。

    C = ISR返回到内核和内核实际停止处理中断之间的时间。这是内核通过还原在ISR被调用之前保存的任何状态(例如寄存器)来完成ISR操作的时间。

    L = Kcall内核调用)中的最长时间。

    M = 调度线程的时间。

     

    ISR返回到内核并且内核执行某些工作来开始执行IST之后最高优先级IST开始的启动时间。在ISR返回并通知IST开始运行之后,IST启动时间受所有ISR的总计时间的影响。下面的示例说明了所得到的启动时间

    最高优先级IST启动时间 =

     

       

    Windows CEOEM都会影响执行IST所需的时间。Windows CE控制变量BCLM都是受限制的。OEM控制NISRTISR(N),它们可以影响IST延迟。

     

    Windows CE还对IST添加了以下限制:链接ISRIST的事件处理只能用在WaitForSingleObject函数中。Windows CE防止ISR-IST事件处理被用在WaitForMultipleObjects函数中,这意味着内核可以担保触发事件的时间和释放IST的时间有一个上限。

     

    ·                     计划程序计时分析OSBench该工具允许您收集计时样本通过执行调度性能定时测试测量内核的性能。

    ·                     内核跟踪程序Kernel Tracker):此工具可以直观显示Windows CE .NET操作系统在目标设备上的执行状况。该工具可用于在实时环境下查看线程交互、内部关联以及系统状态信息。本文目的是检验线程和进程间的交互作用。

    ·                     调用评测程序Call Profiler):此工具可用于确定代码的算法瓶颈。

    设备中存在许多影响实时性能的因素,如硬件、驱动程序和应用。在本例中我们从应用级开始。运行于实时环境中的应用启动时就应该分配所有资源。所有内核对象进程、线程、互斥锁、临界段、信号和事件都按照需要分配到虚拟内存中。按需分配内存是不确定的因此,不能对操作系统完成操作的时间进行限制,所以它不能用于应用的实时执行中。

    远程调用评测程序

    实时系统不仅包括硬件和操作系统,日益增多的应用逻辑也运行于相同的硬件之上。因此,嵌入式设计中的应用代码可能存在失败风险。Windows CE不会强行命令IST在设备驱动程序环境中运行,IST仅是一个特殊的线程,因此在应用环境中可以运行IST线程。既然如此,该如何检验应用代码的瓶颈呢?当然,这可能会影响设备的整体性能。答案是:这正是Windows CE安装的工具 远程调用评测程序的功能该工具可解答下列问题:何时执行何种代码?何谓软件组件的交互?应用程序运行时,CPU在做什么?

    为了证明这一点我采用构建、运行在Windows CE上的哲学家就餐问题应用。以下是解决过程:现在,五位哲学家(线程)围坐在圆桌前。每人面前放着一碗食物。哲学家们用一支筷子开始吃饭。哲学家就餐的前提是他必须有两支筷子(因此,五位哲学家中必须有一人奉献出一支筷子)。这时哲学家就必须找到一种能够共享筷子的方法,以保证大家都能吃到碗中的食物。

    同样地,当多线程程序中有一个以上的线程(哲学家)竞争资源(食物)时,就有可能发生死锁或争执,当然这要取决于哲学家的饥饿程度!如果多个线程都在等待使用稀缺资源,就会造成等待时间的不确定性进而冻结所有应用。对实时应用而言这并不是个难题您可以选择远程调用评测程序运行应用就可以解决该问题。

    远程调用评测程序可以在不同视图中显示调用信息,包括直观的调用图表。它会显示应用运行每个函数时花费的时间。显而易见这是处理视频/音频流的实时压缩/解压缩问题的最为有效的工具。下表显示的是远程调用评测程序应用中的视图。

     

    1. 远程调用评测程序中的视图

    视图

    描述

    顶端视图(Top X View

    显示花费时间最长的函数或基于指定的定时标准计算的值。

    模块概要视图

    统计列出载入模块的数据以及进入每一个功能模块的情况。

    调用树视图

    显示函数调用路径的分级描述。

    蝴蝶型视图

    以列表格式显示反映主调用与被调用函数之间关系的数据。

    调用图表视图

    显示函数间的总的从属关系。

    调用跟踪与函数跟踪视图

    显示数据栅格以反映函数进入和退出事件的实际与计算的定时值。

    下图显示的是哲学家应用的调用图表视图。此图显示35%的应用时间花费在函数Eat( ) 上。也许应该了解一下函数的内容!

     

    1. 远程调用评测程序

    您也许会问,要运行远程调用评测程序,需要向应用代码中添加什么。实际上您根本无需更改所有代码,而仅需要用其它标志函数WINCECALLCAP=1进行编译。

    调用评测库为应用开发人员提供了一幅独特的应用逻辑执行过程细节图。将该工具用于低速测试过程以培养客户对应用代码的信任感。

    内核跟踪程序Kernel Tracker):

    远程内核跟踪程序可用于检测运行设备上的进程、线程和中断之间的交互作用关系。下面是一些内核跟踪程序中集成的样本代码。实例中的应用运行的是Windows CE设备的文件系统其中一个文件夹在台式机放置释放文件此应用为驻留在台式机中的每个文件生成了一个KITL内核独立传输层中断。因此我们可以在运行的操作系统镜像中清晰地观察应用与中断间的交互作用也可以确定应用线程运行与KITL中断处理间的时间增量。

    作为一个用户界面 内核跟踪程序被划分为三个区域 左窗格显示中断和进程 中窗格显示线程 / 进程间的交互作用 右窗格 未显示字 )中的内容 是对中窗格使用的符号的解释。我们可以在镜像底部清楚地看到 W alkTree 应用正在运行 但看不到在应用和内核环境中花费的时间。
    展开全文
  • 无法立即响应外部事件的中断,因此也就不能满足工业应用环境中实时事件处理和实时控制应用的要求,因此如何在Windows环境下实现实时控制是实现大多数实时系统的关键。本文归纳了Windows环境下实时操作系统实现的几种...
  • windows系统温度等实时监测,C#源代码,监测信息非常详细
  • Windows系统是目前最为流行的PC系统之一,拥有...由于Windows系统不是实时系统,因此解决Windows系统的实时性就成为基于Windows的工控系统所要解决的首要问题。所介绍的正是一种解决Windows系统的实时性问题的方法。
  • 基于Windows/RTX烟支实时测控系统研究pdf,基于Windows/RTX烟支实时测控系统研究
  • RTX是基于Windows操作系统实时解决方案,是目前Windwos平台的唯一纯软件的硬实时扩展子系统。RTX不对Windows系统进行任何封装或修改,其通过在HAL层增加实时HAL扩展来实现基于优先级的抢占式的实时任务的管理和...
  • Windows实时扩展系统--RTX架构

    千次阅读 2011-03-22 07:30:00
    RTX扩展了Windows的硬件抽象层,使得RTX下的中断和程序不受Windows的影响。

    RTX被实现为一套库的集合(动态库与静态库)RTSS作为Windows的内核设备驱动与硬件抽象层HAL扩展,实现实时对象和调度器控制。通过一套被称作RtWinAPI的实时API,提供了对这些对象的访问方法。RtWinAPI可以被标准Win32环境和RTSS环境调用。虽然在Win32环境中使用RtWinAPI不能提供在RTSS下的确定性,但是却可以允许应用程序在更加友好的Win32编程环境而不是DDK环境中开发。将Win32程序转化为RTX程序只需要重新链接一套不同的库而已。 

    通过扩展HAL,实现了3个目的:

    ① 在Windows RTX线程之间增加独立的中断间隔:中断隔离意味着Windows 线程和Windows 管理的设备不可能中断RTSS,同时Windows 线程也不能屏蔽RTSS管理的设备。

    ② 实现高速时钟和定时器:Windows 提供的计时器的最小计时单位为1000微秒(1毫秒)RT-HAL将其降到了100纳秒并且提供了同步(与计时器)的时钟。

    ③ 实现关闭处理程序:当Windows 正常关机或者蓝屏崩溃时, RTSS应用程序可以被关联到Windows 关机管理器。正常关机允许RTSS不受影响的继续运行,直到所有的RTSS关机处理器返回。但当出现蓝屏时,RTSS关机处理器就会受到限制,它将无法调用Windows 的服务(例如分配新内存)。在实际中,这意味着当系统正关机或者崩溃时,关机处理器清除一切并复位硬件,还可能向操作者发出警告,或者切换到备用状态。

    为了方便RTX子系统进程和Win32应用之间的通信和数据共享,通过RTX共享内存和IPC对象,WindowsRTX子系统可以共享大量的数据。

    RTX子系统提供高性能的TCP/UDP/IP网络协议。实时TCP/IP支持IPv4IPv6RTX USB支持USB 1.1USB 2.0

     

    欢迎有兴趣的朋友一同探讨。product_gao@163.com; www.hxsolution.com

    展开全文
  • RTX代理在南航的培训和讲座的资料,以及RTX试用版
  • Windows实时套件Kithara

    2018-02-05 23:14:05
    其通过构建一个与Windows并行执行的实时核来拓展windows实时性能,从而让windows系统也可以应用于对系统实时性有极高要求的工业应用环境中,如机器人,检测装备,非标产线装备等。Kithara在其实时核中,还构建了...
  • Windows实时拓展Kithara

    千次阅读 2019-02-25 22:48:11
    德国Kithara软件公司是业界知名的Windows实时拓展软件专家,自1996年开始致力于Windows实时拓展软件的研发。其推出的模块化Windows实时拓展软件Kithara Realtime Suite(KRTS)支持Windows XP/7/8/10(32&64...
  • 上一篇系列文章“INtime可与Windows在同个PC运行的实时操作系统(上)”中我们介绍INtime实时操作系统的基本特性与功能。本篇文章将着重介绍INtime RTOS内部的关键处理机制及其相关的应用案例。 INtime ® RTOS是一...
  • 部署在云服务器上的项目报错,不想一直在文件夹下面查看log文件,有什么办法能够实时在控制台输出tomcat 的日志吗?
  • 实时系统和非实时系统的区别

    万次阅读 2018-08-27 16:51:58
    常见的非实时系统有:windows、linux、Android。两类操作系统的主要区别在于任务调度处理方式不同,具体说明如下。 非实时系统 任务调度使用如下两种方式: 1. 非抢占式:一旦内核把资源分配给某进程后,便让该...
  • Windows95平台下数控系统实时控制的研究付永忠 殷苏民摘 要:Windows95是目前最流行的PC机操作系统,开发基于Windows95下的数控系统具有重要意义.通过分析Windows95中断机制和内核结构,提出了利用Windows95的中断...
  • ``` EventLog^ log = gcnew EventLog(); log->Log = ("system"); EventLogEntryCollection^ myCollection ...通过以上程序可以直接读取Windows系统日志,但却是一次性的; 如何实时监控,一有日志出现就读取出来
  • 由于很多商业和技术原因,Microsoft(r1Windows NT(r)、Microsoft Windows 2000、Windows XP和Windows XP Embedded操作系统越来越多被考虑作为实时系统平台。为了满足硬实时系统严格的响应时间的要求,增加Windows ...
  • 嵌入式实时系统中采用的操作系统我们称为嵌入式实时操作系统,它既是嵌入式操作系统,又是实时操作系统。作为一种嵌入式操作系统,它具有嵌入式软件共有的 可裁剪、低资源占用、低功耗等特点;而作为一种实时操作...
  • linux是实时系统还是分时操作系统

    万次阅读 2017-07-11 16:25:15
    实时操作系统 实时操作系统  英文称Real Time Operating System,简称RTOS。  1.实时操作系统定义  实时操作系统(RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在...
  • 在一次编程的时候,debug结束以后无法终止调试,甚至没法关机,找了一番原因,原来是我在主函数的while循环中没有延时,导致不停的按照最小时间间隔在运行,没有办法终止调试,解决方法:1.编程时避免过小的时间间隔...
  • [Windows ] windows实时打印日志

    千次阅读 2017-05-27 11:21:31
    链接: http://pan.baidu.com/s/1eSvexgA 密码: 3mhp 下载后解压,把tail.exe 复制到 目录:C:\Windows\System32 下直接输命令就可以了:
  • 摘要:Windows 是采用CPU 时间片轮转多任务分配机制的非实时操作系统,无法满足实时性要求比较高的任务需要。而随着CPU技术的快速发展,当前市场上双核甚至多核CPU 已成为主流,这使得在Windows 平台上用多核CPU 的...
  • 最近使用vs进行开发一些小工具,但是发现,系统整天弹出实时调试器,提示wininit.exe某个进程报错,由于权限不够,但是我一点取消它又弹出来,网上找了很多办法,比如删除注册表那些,都不行,下载360整个下午扫毒都...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 179,453
精华内容 71,781
关键字:

windows是实时系统吗