vxworks
sukhoi27smk
学习是为了探索这个世界的本质
展开
-
tickGet
tickGet()返回的是从系统启动开始tick计数后的总的tick数目。tick是啥,是“滴答”,它是一个数值量,本身不能代表时间。如果说要知道tick增加一个代表多少时间的话,那就要看系统的时钟率了。在Shell下,sysClkRateGet()可以返回这个始终率的值。比如60。啥意思呢,就是1秒钟产生60个tick。操作系统调度是基于这个tick的,这在硬件上是个优先级很高(除了转载 2012-12-14 17:49:00 · 6778 阅读 · 0 评论 -
VxWorks下几种定时延时方法的小结
1 taskDelaytaskdelay()提供了一个简单的任务睡眠机制,也常用于需要定时/延时机制的应用中。它的格式是 STATUS taskDelay(int ticks /* number of ticks to delay task */ ),可以看出使用该函数实现延时的单位为tick(一般系统中一个tick都是ms级的)。在VxWorks下可以这样使用taskDe转载 2013-03-28 17:52:53 · 3008 阅读 · 0 评论 -
vxImmrGet
*PBODR(vxImmrGet()) &= 0xfcff;*PBPAR(vxImmrGet()) &= 0xfffffcff; *PBDIR(vxImmrGet()) |= 0x00000300;vxImmrGet()应该是获取powerpc 的IMMR(Internal Memory Mapped Registers)的值,这个寄存器保存着所有powerpc CPU寄存器所映射转载 2013-03-28 17:29:20 · 1965 阅读 · 0 评论 -
基于嵌入式操作系统VxWorks的多任务并发程序设计――中断与任务
中断处理是整个运行系统中优先级最高的代码,可以抢占任何任务级代码运行。中断机制是多任务环境运行的基础,是系统实时性的保证。几乎所有的实时多任务操作系统都需要一个周期性系统时钟中断的支持,用以完成时间片调度和延时处理。VxWorks提供tickAnnounce(),由系统时钟中断调用,周期性地触发内核。 为了快速响应中断,VxWorks的中断服务程序(ISR)运行在特定的空间。不同于一般的转载 2013-04-27 16:02:27 · 1090 阅读 · 0 评论 -
VxWorks系统BSP配置文件及生成下载
%A VxWorks BSP主要配置文件 config.h , Makefile 注解和 BSP生成下载实例。 %A %A 相关内容可参考 VxWorks BSP和启动过程 %A %A config.h文件配置 %A %A /* %A This file contains the configuration parameters for the CPU evaluati转载 2013-04-28 14:19:44 · 2435 阅读 · 0 评论 -
建立调试环境
建立调试环境 Tornado采用支持主机/目标机开发模式。本节以x86系列目标机为例介绍调试环境的建立。 7.1.1 配置文件config.h 目标机运行的程序包括两部分:引导文件bootrom.sys和操作系统影像文件VxWorks。引导文件bootrom.sys的主要作用类似于BIOS,一般它存放在一张软盘或目标机硬盘或目标 机FLASH盘上,由Vx转载 2013-04-28 14:24:49 · 920 阅读 · 0 评论 -
VxWorks动态加载
注:最近在做热补丁的功能,看到一篇gateway写的文章,觉得很通俗易懂的,就将搜集到的资料又整理了一下,供大家参考。 使用动态加载目标模块的方式有很多好处,比如可以在不破坏原来的环境下增加调试定位功能,相当于给系统打“补丁”,不需要编译原来的代码(甚至可以不用原来的代码)而只需要关注正在调试的代码,这样能减少编译时间和减少映像的加载量。 实现目标模块的动态加载有很转载 2013-04-28 14:17:38 · 6046 阅读 · 0 评论 -
搭建你的嵌入式Vxworks开发环境
3.1 最常见的开发环境配置使用串口和网络连接(host和target之间)。串口连接用于和boot loader之间的通信(如输出信息在host上的显示),网络连接用于传输文件,包括Vxworks system image。默认情况下使用网络连接。3.1.1 通常的操作:目标机上启动Vxworks。Vxworks包括一个target agent、Vxworks和其他workben转载 2013-04-28 14:26:20 · 2606 阅读 · 0 评论 -
Timer
[摘要] Timer是实时操作系统的一个重要组成部分。本文结合近阶段的学习和实验情况,对VxWorks中的时间函数和定时器作了一些探讨。主要介绍了Timer的机制,相关的函数,并给出了一些具体的例子。 一. TickTick是指每秒中定时器中断的次数。POSIX标准中,tick等于50,即每20ms定时器中断一次。VxWorks中,tick的缺省设置为60。因为实时操作系统中,任务的调转载 2013-04-28 13:54:10 · 1120 阅读 · 0 评论 -
VxWorks动态加载.out文件
//Device.cpp#include "other.h"#ifdef __cplusplusextern "C" {#endif int initDevice(char *arg);#ifdef __cplusplus}#endifint initDevice(char *arg){ printf("%s\n", arg);}生成转载 2013-04-28 14:30:05 · 6436 阅读 · 0 评论 -
VxWorks嵌入式操作系统的TrueFFS文件系统驱动开发
嵌入式系统对执行速度和系统可靠性的要求,决定了嵌入式系统需要一种安全、快速的存储设备,这种设备备同时还需要体积小、容量大、掉电数据不丢失等特点。而Flash存储器恰恰能够满足上述要求。这也使得Flash存储器成为嵌入式系统中的主要存储设备。 现在,Flash技术已经成熟,并已成为工业标准 但问题是如何能够更加有效的管理Flash设备.提高Flash的使用效率.加快操作速度和管理Flash转载 2013-05-03 09:14:50 · 2456 阅读 · 0 评论 -
DOC学习之TrueFFS
TrueFFS原理引用TrueFFS原理及其在CF卡上的实现的部分内容“1、Wear-Leveling闪速存储器不能无限次重复使用。它的每个扇区的擦除次数虽然很大,但却有限;因此,随着使用次数的加长,它最终会变成只读状态,所以应该尽最大可能延长它的寿命。行之有效的方法就是平衡使用所有的存储单元,而不让某一单元过度使用。这种技术被称之为损耗均衡。TrueFFS使用一种基于一张动态维护表的转载 2013-05-03 09:17:03 · 898 阅读 · 0 评论 -
TrueFFS原理
TrueFFS原理引用TrueFFS原理及其在CF卡上的实现的部分内容“1、Wear-Leveling闪速存储器不能无限次重复使用。它的每个扇区的擦除次数虽然很大,但却有限;因此,随着使用次数的加长,它最终会变成只读状态,所以应该尽最大可能延长它的寿命。行之有效的方法就是平衡使用所有的存储单元,而不让某一单元过度使用。这种技术被称之为损耗均衡。TrueFFS使用一种基于一张动态维护表的转载 2013-05-14 14:19:35 · 2035 阅读 · 0 评论 -
vxworks点滴记录
MPC852---大端模式 对于vxWork5.5来说: vxWorks操作系统是一个进程,其间的所有任务是该进程内的线程,因为他们有统一的地址空间。没有main函数。。对于vxWorks6来说: 你可选支持多个进程,每个进程由独立的地址空间,有堆。。。有一个内核进程在运行,也有用户进程。任务是进程里面的线程。。。。任务(线程)是调度的基本元素而不是进程。转载 2013-03-27 17:43:51 · 2005 阅读 · 0 评论 -
VxWorks中Timer机制
[摘要] Timer是实时操作系统的一个重要组成部分。本文结合近阶段的学习和实验情况,对VxWorks中的时间函数和定时器作了一些探讨。主要介绍了Timer的机制,相关的函数,并给出了一些具体的例子。 一. TickTick是指每秒中定时器中断的次数。POSIX标准中,tick等于50,即每20ms定时器中断一次。VxWorks中,tick的缺省设置为60。因为实时操作系统中,任务的调转载 2013-03-28 17:54:37 · 13414 阅读 · 0 评论 -
VxWorks平台下计算cpu的利用率
1、VxWorks的spyLib库提供的spy工具的实现原理。 Spy利用辅助定时器来产生中断,并且为每个任务维护一个计数器。然后记下被中断的任务,并且将该任务的计数器加一。经过一段时间后,每个任务的计数器反映了该任务占用CPU利用率的情况。很明显,这是利用抽样技术。并且得到的CPU利用率的准确程度取决于任务的持续性和周期性。 通过查找spyLib.h的文件,我们发现除了spy()转载 2012-12-14 15:57:39 · 3948 阅读 · 0 评论 -
获得系统中某个进程的cpu使用率
列举所有进程的CPU占用率) typedef struct _THREAD_INFO { LARGE_INTEGER CreateTime; DWORD dwUnknown1; DWORD dwStartAddress; DWORD StartEIP; DWORD dwOwnerPID;转载 2012-12-17 11:51:20 · 828 阅读 · 0 评论 -
VxWorks常用的命令
1.与任务相关的命令sp function,[arg1],...,[arg9]-启动任务,最多接受9个参数,默认的优先级100、堆栈20000字节period n,function,[arg1],...,[arg8]-创建一个周期调用function的任务,周期为n秒,最多接受8个参数repeat m,function,[arg1],...,[arg8]-创建一个反转载 2012-12-17 10:26:06 · 830 阅读 · 0 评论 -
Vxworks系统学习之一----任务
1.任务队列vxworks维护4个队列:tick队列ready队列active队列pend队列一,tick队列当执行taskDelay时,任务会被延长一段时间执行,此时,任务就会被加入到tick队列中,任务处于Delay状态,无权竞争CPU;二,ready队列有资格竞争CPU的队列,按照任务的优先级进行排队,队列头部是优先级最高的任务;三,active队列转载 2012-12-17 10:32:38 · 1252 阅读 · 0 评论 -
WDB
1. 符号表同步貌似只能是target shell下载后,能够在host shell下更新,当host shell下载的话,target shell是无法更新的。2. host shell下执行某一个函数的时候,WDB会自动生成一个新的任务来运行,这个任务的IO将被重定向到host shell上。这样,你在host shell下敲某一个函数的时候,printf的内容就直接打到host shel转载 2012-12-17 10:43:06 · 895 阅读 · 0 评论 -
VxWorks基本OS介绍
这里我就偷点懒,直接复制粘贴文档了。可能会有一些图片无法显示 ,可以直接管我索要文档。每一个被切换的程序实体就是“任务”。每一个任务都有其自己的上下文——所谓上下文就是指任务在每一次被核心调度时所需要的CPU环境、系统资源。在上下文的切换过程中,每一个任务的上下文被存在该任务的任务控制块中(TCB)。◆ 执行的线程,也就是任务程序计数器;◆ CPU寄存器的内容和浮点寄存器中的内容;转载 2012-12-17 10:57:05 · 2250 阅读 · 0 评论 -
VxWorks概念
VxWorks操作系统的集成环境叫Tornado。Tornado集成环境提供了高效明晰的图形化的实时应用开发平台,它包括一套完整的面向嵌入式系统的开发和调测工具。Tornado环境采用主机-目标机交*开发模型,应用程序在主机的Windows环境下编译链接生成可执行文件,下载到目标机,通过主机上的目标服务器(Target Server)与目标机上的目标代理(Target Agent)的通信完转载 2012-12-17 10:59:17 · 737 阅读 · 0 评论 -
在虚拟机上运行vxWorks
Vxworks是一个嵌入式系统,主要运行在arm、ppc、mips等嵌入式处理器上,它同样可以运行在X86处理器上。风河公司开发的tornado开发环境就包括了pentium版本,并且发布了相应的bsp。因此我们可在vmware虚拟机上运行vxworks,利用虚拟机的功能,我们不需要额外的计算机硬件就可以开始我们的实验。 系统引导计算机系统上电后,首转载 2012-12-17 10:42:40 · 4522 阅读 · 2 评论 -
taskLock使用注意
This routine disables task context switching. The task that calls this routine will be the only task that is allowed to execute, unless the task explicitly gives up the CPU by making itself no longer转载 2012-12-17 11:30:58 · 3224 阅读 · 0 评论 -
互斥信号量和二进制信号量
互斥信号量和二进制信号量的区别 互斥型信号量必须是同一个任务申请,同一个任务释放,其他任务释放无效。同一个任务可以递归申请。 二进制信号量,一个任务申请成功后,可以由另一个任务释放。二进制信号量实现任务互斥: 打印机资源只有一个,abc三个任务共享,当a取得使用权后,为了防止其他任务错误地释放了信号量(),必须将打印机房的门关起来(进入临界段),用转载 2012-12-17 11:49:27 · 638 阅读 · 0 评论 -
vxworks 调式
1,boot操作相关串口命令行重启回车进入boot:查看boot版本:v更新: c @升级设备: w运行: g 2, 代码:2.1添加命令行: DEFUN, install_element 2.2 VxWorks使用 i:查看任务; memShow:查看内存情况; tt:查看堆栈信息; 3,转载 2012-12-17 15:31:16 · 2915 阅读 · 0 评论 -
VXWORKS 几种定时机制
编程过程中,出于需要,大家或多或少要用到定时/延时。VxWorks下提供了几种定时/延时机制,根据收集的一些资料和VxWorks相关文档,在学习和上机实验的基础上,对它们的使用以及我所遇到的问题做一个总结,希望对大家能有所帮助。不正确之处,恳请斧正。A 1 taskDelay-k~ taskdelay()提供了一个简单的任务睡眠机制,也常用于需要定时/延时机制的应用中。它的格式是STATUS ta转载 2013-03-28 17:50:54 · 2367 阅读 · 0 评论 -
在CF卡上实现TrueFFS
CF卡是一种基于Flash技术的容量大、携带方便的存储介质,已在嵌入式系统等领域得到广泛的应用;但是,有限的擦写次数极大地限制了CF卡的使用寿命。TrueFFS通过一系列算法,能够延长CF卡的使用寿命,提高CF卡的使用效率。文章介绍了TrueFFS的原理,在CF卡上实现TrueFFS的方法,并对TrueFFS的性能进行了分析。 关键词:TrueFFS损耗均衡 闪速存储器 CF卡闪速存转载 2013-05-14 14:20:12 · 982 阅读 · 0 评论