您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术MS Windows CE的实时系统 正文
MS Windows CE的实时系统

MS Windows CE的实时系统

点击数:7506 次   录入时间:03-04 12:01:58   整理:http://www.55dianzi.com   嵌入式系统-技术

    中断测试应用软件Intrtime.exe,在WindowsCE标准版本收集中断分时延迟信息,应用软件在测试中控制系统时间。因此,当系统需要时间控制器时,是不合适使用的。例如,此应用程序不能与内核instrumented版本一起使用,因为它也需要时间控制。

    在WindowsCE2版(Beta版)测试响应,

    Intertime应用软件在odoSH3参考平台上运行1000次中断测试,内部运行58.98MHz,外部为14.745Mhz外部频率,这个测试在一个标准的H/PC配置,它包括WindowsCE所有模式和组合。仅有主操作系统进程进行(NK.exe,Filesys.exe,Gwes.exe,Device.EXE,Shell.EXE和Explover.EXE),在测试中无用户初始中断(触摸屏、键盘或其它应用),应用软件可报告下面的ISR和IST开始、最小和最大时间:

    响应最大、最小值(1000次测试)

    ISR开始1.3-7.5微秒

    IST开始93-275微秒

    大多数测试结果,分布在最小值数值附近,当测试ISR开始时间时,最小值1.3和1.6微秒,出现了293和549次,共占测试的84%,类似的超过90%的(1000次中923)start-of-IST测试出最大响应为102微秒或少一些。

    Intertime应用软件也使用一个用户指定数目的系统对象来测试ISR和IST开始时间。虽然工作十分初级,但它验证了ISR开始时间与系统对象数目无关,测试设为1000次(除了特别更改)并且线程优先权为5或7。

    ISR开始最大值后台线程、数目(每个线程一个事件)优先级

    8.407

    8.65(注:仅100次)7

    9.010(注:仅100次)5

    14.8105

    19.2105

    17.0107

    12.8205

    11.020(注:仅100次)7

    10.0507

    15.01005

    15.61007

    这数值不是系统对象数目的函数,不同的值可能由于中断出现时内核状态,开发组目前正在研究以鉴定ISR开始最差时间值。

    由这些结果向回推,假定ISR开始最小值代表最好情况。此时,dISR_Current和Sum(dISR_Htgbor)为0,最小的value1=ISR开始值=1.3微秒,类似的设定最好情况时,Sum(dIST)和Sum(dISR)为0,Value最小值=.IST开始值=93微秒,单从测验结果看,它是不能确定,valume1或value2最大值。

    附加的分时信息能够由instrumentedkernel收集,对于一个最差情况在IST开始前花费时间valume2,能由下列公式计算:

    Value2=dkCall+dNextThread

    dKcall=.内核调用时间;当消除优先级时,花费在内核的一部分时间量。

    DNextThread=Next.Thread内核调用时期。花费在IST中时间量。

    实际上,在0级别线程调度要比NextThread调用快,但此公式能估计出上限。

    下面表格显示了用instrumentedKernel进行初步测试时最差事件结果,这些测试条件与Intrtime测试相同。

    内核调用模型最大值(ad-hoc.testing)

    最大时间值(所用内核调用)266微秒(Learecrite)

    NextThread237微秒

    总值503微秒

    Instrumentedkernel显示这些条件下value2上限为500微秒。这个值为两个最差事件总时间,远远超过了由Intritime应用程序得到的结果,也大于实际最差事件时间。例如:通过Nextthread调度一个优先级为0的线程,不会导致最差事件,这意味着500微秒是一个高于实际的最差事件值的保守值。

    IntertimeUtility对于从总体上观察最差事件值十分有用,InstrumenttedKemel对于获得可能最差事件的值,通过内核描绘出所有响应原因——一个IST在这些事件运行,但在内核非优先部分运行执行时,将受阻碍,系统的最差事件响应可由每一部分的最差事件总和计算。

    注意本论文中所有测试结果均基于内部WindowsCE的beta版,目前存在的操作系统和应用将继续得到修正,并且进行附加测试以获得在不同操作条件下系统操作,这些数值将继续被更新并出版,以反思目前的操作系统版本。

    总结

    微软WindowsCE内核设计以达到RTOS最小要求,以使WindowsCE用在许多不同类型的嵌入式和实时系统作为操作系统;

    WindowsCE的多线程和优先级,WindowsCE支持个人线程优先级;

    WindowsCE支持优先权继承程序,以便调整优衔级别以修改优先权颠倒;

    WindowsCE支持一个可预测的线程同步机理,包括等待对象,如互斥体关键部分,命名或未命名的事件对象,它基于线程优先权排序。



www.55dianzi.com

    WindowsCE也支持与系统控制器的联连:

    OEM能够控制类由系统支持的中断处理,即通过执行ISRS和ISTS,它可弥补中断处理软件;

    OEM完成在所有映射到中断ID号的IRQS,并且它与中断处理软件相联系(ISR和IST),描绘工具和应用软件可以利用记录处理中断最大时间。

    中断响应是可预测和有限制的,当优先权取消时,上限即为花费在内核中时间总量,匹配转化时间,和由OEM执行的ISRS和ISTS申请处理时间。

    每个系统调用的时间是可预测的,并与系统对象数目无关,

    利用instrumenttedkernel系统调用时间能够保证WindowsCE内核设计保证中断和它们相关线程响应,可预测,并且有限,这使得对于许多实时应用更适合未来的WindowsCE嵌入式工具包(关于VC++)将包括中断分时功能和允许OEM检查,并将分时操作标准化。

    哪里可得到WindowsCE更详细信息

    关于VC++5.0的微软WindowsCE嵌入式工具包

    OEM的WindowsCE2.0的应用包

    微软公司操作分析和内存利用微软的WindowsCE1.01、Alpha1997.2.20.

    JasknBlack和Jon.Christhansen,软件的WindowsCE显示驱动器和硬盘1997.9.

    Jon.Christiasen,微软WindowsCE图色特色1997.9

    Franklin,Fite.Jr.和RandyKath微软WindowsCE2.0嵌入式开发

    JohnMurcy,微软WindowsCE内存使用1997.9

    DaridPefferin,Win32程序模式:嵌入式软件开发入门1997.9

    DaridPellerin,WindowsCE的VC++5。0嵌入式工具包介绍1997.9

    Guy,Smith,WindowsCE通信方式1997.9.



上一页  [1] [2] [3] 


本文关键字:Windows  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术

《MS Windows CE的实时系统》相关文章>>>