可重入、不可重入

https://sites.google.com/site/jishutaolun/programming/reaccessablefunction 主要用于多任务环境中: 一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误; 也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以
阅读本文

动态库(.so)链接静态库(.a)的情况总结

1、link时加上 -static 选项;当加上 -static选项后,gcc会把所有用到的库都做静态连接。2、link时直接指定想要静态连接的.a文件的绝对路径。优点是除非.a文件不存在,否则肯定有效;缺点也是很明显,拿到其他机器上编译时,.a文件也必须在相同的路径下存放。3、在要静态连接的库前指定-Bstatic ,在要动态连接的库前指定-Bdynamic选项。连接器在看到-Bstatic时会
阅读本文

ARM7还是ARM9?uCOS还是Linux?

一. 谈谈ARM7与ARM9的区别: 由于职业的关系,经常会回答一些ARM初学者的问题,虽然问题千奇百怪,但以下两个问题绝对很有代表性。 ARM7和ARM9都有些什么区别? 我准备学ARM,但不知是选ARM7还是ARM9好?  也许这些问题在大虾们的眼里已不是问题,但对于初学者确实很具必要弄清楚。先说下:ARM7和ARM9的区别。 1. 时钟频率的提高 虽然ARM7和ARM9内核架构相同,但AR
阅读本文

VxWorks多任务功能

VxWorks的任务有优先级的概念,其任务调度也是基于优先级考虑的,是抢占式的,VxWorks的任务有256个等级,0—255,数目越小表示优先级越高。高优先级的任务可以打断低优先级的任务而抢先执行,只有在高优先级的任务执行完后,低优先级的任务才可以执行。其调度算法有两种:完全抢占式的和循环分配式的。完全抢占式的是除了高优先级任务可以打断低优先级任务外,在相同优先级的任务之间,不可以相互打断,并且
阅读本文

vxWorks学习笔记

1.VxWorks开发方式:交叉开发,即将开发分为主机(host)和目标机(target)两部分。类似于dos下C语言程序的开发。合并开发的优点:简单缺点:资源消耗量大,CPU支持,非标准体系的支持host (Tornado) target(vxWork) 小程序模块vxWorks实际采用开发模式vxWorks:面向对象可以剪裁的实际运行操作系统2.vxWorks启动方式Rom方式 (vxWork
阅读本文

VxWorks实验八 信号

实验八信号1 实验目的1.学习使用信号2 实验内容在实验一建立的 project 中,编写一段信号处理程序,将其与SIGINT 相关连,使用kill()发送SIGINT 信号并调用信号处理程序。观察运行结果。3 实验设备及工具1.硬件:a) PC 机2.软件:a) PC 机操作系统Windows2000 或windowsXPb) Tornado2.24 实验原理信号可以用来通知任务处理特定的事件。
阅读本文

VxWorks中logMsg与printf的区别

printf( ) - write a formatted string to the standard output stream (ANSI).logMsg( ) does not actually perform the output directly to the logging streams, but instead queues the message to the logging
阅读本文

试验Boost在Vxworks上的应用日记 一

许多人认为Boost库非常庞大,不适合在嵌入式开发中使用,因此一讲到嵌入式,Boost连想都不想直接pass,而且多是有经验的老程序员,但我觉得咱们中国人脑子里面的框框太多了,没有什么事不可以的,评价好坏也没有特定标准,Boost库经过长期发展,稳定、实用、好用,为什么不能做一下尝试,如果觉得Boost庞大,那STL也不小啊,又为什么用C++?既然用了C++这些代价其实都已经计算在内了
阅读本文

VxWorks下USB驱动总结----(1)

1、USB设备物理特征:4条电缆,电源线、地线、数据线、脉冲线;速      度:低速1.5Mbps,全速12Mbps,高速480Mbps;规范版本:1998年USB1.1,2000年USB2.0;连    接:PCI总线<->USB控制器(OHCI/UHCI/EHCI)<->USB设备;单个USB控制器最大连接个数:127;距离限制:USB单条线缆长度不能超过xml:namespace pref
阅读本文

VxWorks系统下的RTL8139驱动程序改进

CPU采用Motorola公司的PowerPC系列处理器之一的MPC8241,该芯片除嵌入32位PowerPC处理器内核外,还集成了MPC107桥,提供PCI接口与RTL8139连接,桥上有内存控制器,挂16MB SDRAM和4 MBFlash。CPU时钟是166MHz,SDRAM时钟是66MHz,PCI时钟是33MHz,RTL8139工作在10Mbit/s,半双工方式,通过集线器(HUB)连
阅读本文

VxWorks设备驱动开发详解

华清远见系列图书VxWorks设备驱动开发详解曹桂平 等编著  ISBN 978-7-121-12828-82011年3月出版定价:49.00元16开420 页内 容 提 要前    言本书内容本书分为3篇共11章。第1篇为VxWorks操作系统快速入门篇,共包括3章内容。第1章简单介绍了嵌入式系统,并对VxWorks操作系统的特性进行了简单说明。第3章对VxWorks内核映像类型以及启动方式进行
阅读本文

VxWorks程序一下载就停住了

今天早上遇到个小问题,VxWorks程序一下载就停在0%处不动了,但是没有死机。这是怎么回事?检查了一下Target Server,也成功了,但是显示了一个警告信息,说Memory Cach满了,需要使用-m选项设置Memory Cach的大小。在Configure Target Servers对话框中增加了一下Memory Cache Size的大小,就又可以下载了。
阅读本文

嵌入式操作系统VxWorks中网络协议存储池原理及实现

嵌入式操作系统VxWorks中网络协议存储池原理及实现周卫东 蔺妍 刘利强(哈尔滨工程大学自动化学院,黑龙江 哈尔滨,150001) 摘  要关键词  VxWorks; mBlk; clBlk; 网络协议存储池 VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS)。它以良好的持续发展能力、高性能的内核以及卓越的实时性被广泛的应用在通信、军事、航
阅读本文

vxWorks/BootROM Imageq启动顺序详解 分类: vxWorks 2014-03-13 08:57 479人阅读 评论(0) 收藏

vxWorks/BootROM Imageq启动顺序详解 VxWorks image    分为在ROM中运行和在RAM中运行两种,两者启动顺序的区别在于sysInit()函数的调用,该函数在RAM运行的VxWorks中初始化RAM。 1.ROM中运行的VxWorks :    VxWorks在ROM中运行,即写入ROM中的VxWorks是非压缩的,不需要解压,系统直接跳到ROM的首地址运行VxW
阅读本文

VxWorks实验六 基于优先级的抢占式调度及实验的源程序和实验步骤

基于优先级的抢占式调度及实验的源程序和实验步骤1 实验目的    1.学习并验证基于优先级的抢占式调度2 实验内容    在实验一建立的 project 中,创建3 个任务,对这三个任务使用基于优先级的抢占式调度。观察运行结果。3 实验设备及工具   1.硬件:      a) PC 机   2.软件:      a) PC 机操作系统Windows2000 或windowsXP      b)
阅读本文

VxWorks内核

, 基本操作系统现代时实操作系统主要的补充了多任务处理和任务间通讯两个概念。多任务环境意味着允许在一个时实应用程序中构架一组独立的任务。每一个都有自 己独立的执行路线和自己的系统资源。任务间通讯的机制(facility)则允许任务间的同步和通讯,以调整系统的行为。VxWorks中,任务间通讯的 机制包括从快速信号量到消息队列,管道,网络传输套接口。    另一个时实系统的关键机制是硬件中断处理。因
阅读本文

VxWorks环境下双冗余以太网卡技术在底层驱动中的实现

引 言   随着以太网的稳定性、抗干扰性和带宽问题的逐步改善,以太网正在大规模进入工业控制领域。用于工业过程控制、通信、航天器和导航系统中的网络对可靠性及其响应故障的快速性要求极高。当前,冗余设计作为一种提高设备可靠性的有效方法,已经得到了广泛的应用。对于网络系统中的单个节点,常常需要对网卡进行双冗余备份,即每个节点都采用2块网卡(或2个网口),中间用集线器或交换机互连,当正常通信的网卡或
阅读本文

Platform Notes - VxWorks

Home · All Classes · All Functions · Overviews[Platform Notes] Platform Notes - VxWorksNote: VxWorks is a community supported platform. See the Supported Platforms page for more information.Thi
阅读本文

vxworks下libpcap的移植

linux下的libpcap应用能够成熟的使用在第三方的应用中,但基于vxworks开发的项目中需要使用libpcap的部分功能则无相应的实现。研究了下libpcap向vxworks的移植,并且小有所成,也算是填平两年前的一个技术坑。目前已经完成的移植功能模块包括:1 pcap_compile() 编译用户定义的过滤规则并且生成中间字节码。2 pcap_filter() 对单个pcap数据包进行规
阅读本文