CN104503792A - 一种在VxWorks中实现设备管理功能的方法 - Google Patents
一种在VxWorks中实现设备管理功能的方法 Download PDFInfo
- Publication number
- CN104503792A CN104503792A CN201410801293.3A CN201410801293A CN104503792A CN 104503792 A CN104503792 A CN 104503792A CN 201410801293 A CN201410801293 A CN 201410801293A CN 104503792 A CN104503792 A CN 104503792A
- Authority
- CN
- China
- Prior art keywords
- vxworks
- management function
- initialization
- equipment
- equipment management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种在VxWorks中实现设备管理功能的方法,所述方法通过编写独立的设备驱动和相关配置文件,其中配置文件以外设的厂商号设备号命名,文件内容指明对应的设备驱动以及驱动程序的入口函数,在用户更换不同型号的外设后,初始化并挂载该驱动。采用本发明所提供的技术,可以保证在用户更换不同型号的外设后,只需要重新开机即可挂载该驱动,而不必修改BSP和系统镜像。
Description
技术领域
本发明涉及计算机操作系统技术领域,具体涉及一种在VxWorks中实现设备管理功能的方法。
技术背景
VxWorks 操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。
VxWorks与通用操作系统相比用户界面体验较差。比如挂接设备,Windows用户只需点击相关程序安装驱动即可,但在VxWorks下,加载驱动程序的方法一般有两种:静态加载和动态加载。其中,静态加载即将设备驱动与内核模块编译或链接为系统镜像,动态加载即将驱动程序与内核模块剥离,以.out的文件形式存在,系统启动完成后用户手动运行模块加载命令并作初始化,如下:
>ld</ata0/driver/xxdev.out
>xxDevInit
用户也可将上述内容编译进系统镜像,如下:
void usrAppInit (void)
{
……
open ("/ata0/driver/xxdev.out", O_RDONLY,0644);
loadModule (fdX, LOAD_ALL_SYMBOLS);
symFindByName(sysSymTbl," xxDevInit ",(char* )&taskEntry1,&pType);
(*taskEntry1)();
……
}
以上VxWorks加载驱动程序的方法存在较多弊端。手动挂接驱动对用户专业水平要求较高,且易出错,难维护,此方法多用于设备调试期间;使用后面的方法,如果用户需更换其他型号的外设模块,即要重新生成系统镜像。
发明内容
本发明要解决的技术问题是:一种在VxWorks下对多个PCI总线和USB总线设备进行管理的设计方案。用户只需编写独立的设备驱动和相关配置文件,其中配置文件以外设的厂商号设备号命名,文件内容指明对应的设备驱动以及驱动程序的入口函数。这样可以保证在用户更换不同型号的外设后,一般情况下只需要重新开机即可挂载该驱动,而不必修改BSP和系统镜像。
提出了一种在VxWorks下对多个PCI总线和USB总线设备进行管理的设计方案,方便用户在不修改系统镜像的前提下动态加载各设备驱动,并可通过连续不断的运行实现已加载驱动程序的跟踪,类似于Windows系统下的设备管理器功能。
本发明所采用的技术方案为:
一种在VxWorks中实现设备管理功能的方法,所述方法通过编写独立的设备驱动和相关配置文件,其中配置文件以外设的厂商号设备号命名,文件内容指明对应的设备驱动以及驱动程序的入口函数,在用户更换不同型号的外设后,初始化并挂载该驱动,而不必修改BSP和系统镜像。
所述方法的驱动挂载流程如下:
1)设备管理器初始化;
2)总线扫描;
3)根据厂商号设备号找到对应的配置文件;
4)配置文件解析;
5)加载驱动程序并初始化;
6)驱动挂载完成。
所述总线包括PCI总线和USB总线。
PCI总线设备中PCI网卡实现设备管理功能步骤如下:
1)编写PCI网卡独立驱动及其配置文件,并放在指定目录下;
2)运行设备管理软件,运行设备管理软件初始化接口;
运行该接口后,系统对设备管理器进行初始化,扫描PCI设备和USB设备并得到外设的厂商号设备号,之后根据设备驱动存放路径读取配置文件、加载设备驱动并运行驱动初始化接口,该网卡即可正常工作了。
本发明的有益效果为:采用本发明所提供的技术,可以保证在用户更换不同型号的外设后,只需要重新开机即可挂载该驱动,而不必修改BSP和系统镜像。
附图说明
图1为本发明设备驱动挂载流程图。
具体实施方式
下面参照附图所示,通过具体实施方式对本发明进一步说明:
一种在VxWorks中实现设备管理功能的方法,所述方法通过编写独立的设备驱动和相关配置文件,其中配置文件以外设的厂商号设备号命名,文件内容指明对应的设备驱动以及驱动程序的入口函数,在用户更换不同型号的外设后,初始化并挂载该驱动,而不必修改BSP和系统镜像。
如图1所示,所述方法的驱动挂载流程如下:
1)设备管理器初始化;
2)总线扫描;
3)根据厂商号设备号找到对应的配置文件;
4)配置文件解析;
5)加载驱动程序并初始化;
6)驱动挂载完成。
所述总线包括PCI总线和USB总线。
PCI总线设备中PCI网卡实现设备管理功能步骤如下:
1)编写PCI网卡独立驱动及其配置文件,并放在指定目录下,如“/ata0/driver”;
以82574网卡为例,驱动文件为Net574Driver.out,配置文件(80861079.inf)部分内容如下:
VENDORID = 0x8086
DEVICEID = 0x1079
OS = VXWORKS5.5.1
FILENAME = Net574Driver.out
INITFUNC = Net574DriverInit
2)运行设备管理软件,运行设备管理软件初始化接口:
ML_DMMW_Init(“/ata0”);
运行该接口后,系统对设备管理器进行初始化,扫描PCI设备和USB设备并得到外设的厂商号设备号,之后根据设备驱动存放路径(当前为“/ata0/driver”)读取配置文件、加载设备驱动并运行驱动初始化接口,该网卡即可正常工作了。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (4)
1.一种在VxWorks中实现设备管理功能的方法,其特征在于:所述方法通过编写独立的设备驱动和相关配置文件,其中配置文件以外设的厂商号设备号命名,文件内容指明对应的设备驱动以及驱动程序的入口函数,在用户更换不同型号的外设后,初始化并挂载该驱动。
2.根据权利要求1所述的一种在VxWorks中实现设备管理功能的方法,其特征在于,所述方法的驱动挂载流程如下:
1)设备管理器初始化;
2)总线扫描;
3)根据厂商号设备号找到对应的配置文件;
4)配置文件解析;
5)加载驱动程序并初始化;
6)驱动挂载完成。
3.根据权利要求2所述的一种在VxWorks中实现设备管理功能的方法,其特征在于:所述总线包括PCI总线和USB总线。
4.根据权利要求3所述的一种在VxWorks中实现设备管理功能的方法,其特征在于,PCI总线设备中PCI网卡实现设备管理功能步骤如下:
1)编写PCI网卡独立驱动及其配置文件,并放在指定目录下;
2)运行设备管理软件,运行设备管理软件初始化接口;
运行该接口后,系统对设备管理器进行初始化,扫描PCI设备和USB设备并得到外设的厂商号设备号,之后根据设备驱动存放路径读取配置文件、加载设备驱动并运行驱动初始化接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410801293.3A CN104503792A (zh) | 2014-12-22 | 2014-12-22 | 一种在VxWorks中实现设备管理功能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410801293.3A CN104503792A (zh) | 2014-12-22 | 2014-12-22 | 一种在VxWorks中实现设备管理功能的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104503792A true CN104503792A (zh) | 2015-04-08 |
Family
ID=52945193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410801293.3A Pending CN104503792A (zh) | 2014-12-22 | 2014-12-22 | 一种在VxWorks中实现设备管理功能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104503792A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107908430A (zh) * | 2017-11-01 | 2018-04-13 | 福建新大陆支付技术有限公司 | 一种配置pos文件系统的方法及pos机 |
CN108009103A (zh) * | 2017-11-28 | 2018-05-08 | 中国船舶重工集团公司第七六研究所 | 一种VxWorks系统的PCI设备排序方法 |
CN109582610A (zh) * | 2018-12-05 | 2019-04-05 | 上海航天电子通讯设备研究所 | 一种VxWorks系统环境下跨显控平台兼容控制的方法及其模块 |
CN110502283A (zh) * | 2019-08-19 | 2019-11-26 | 深圳大趋智能科技有限公司 | 一种产品外设兼容方法及系统 |
CN115291958A (zh) * | 2022-10-10 | 2022-11-04 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752952A (zh) * | 2004-09-22 | 2006-03-29 | 威芯科技股份有限公司 | 内建于硬件装置的驱动程序的安装方法 |
CN103246594A (zh) * | 2013-04-08 | 2013-08-14 | 汉柏科技有限公司 | 一种基于Linux内核的用户态网卡自动探测方法 |
CN103309830A (zh) * | 2013-07-08 | 2013-09-18 | 哈尔滨工业大学 | VxWorks操作系统下CPCI总线CAN通信模块的驱动器及驱动方法 |
-
2014
- 2014-12-22 CN CN201410801293.3A patent/CN104503792A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1752952A (zh) * | 2004-09-22 | 2006-03-29 | 威芯科技股份有限公司 | 内建于硬件装置的驱动程序的安装方法 |
CN103246594A (zh) * | 2013-04-08 | 2013-08-14 | 汉柏科技有限公司 | 一种基于Linux内核的用户态网卡自动探测方法 |
CN103309830A (zh) * | 2013-07-08 | 2013-09-18 | 哈尔滨工业大学 | VxWorks操作系统下CPCI总线CAN通信模块的驱动器及驱动方法 |
Non-Patent Citations (1)
Title |
---|
李飞 等: ""基于CH365的PCI总线运动控制卡的设计"", 《电子设计工程》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107908430A (zh) * | 2017-11-01 | 2018-04-13 | 福建新大陆支付技术有限公司 | 一种配置pos文件系统的方法及pos机 |
CN107908430B (zh) * | 2017-11-01 | 2022-08-30 | 福建新大陆支付技术有限公司 | 一种配置pos文件系统的方法及pos机 |
CN108009103A (zh) * | 2017-11-28 | 2018-05-08 | 中国船舶重工集团公司第七六研究所 | 一种VxWorks系统的PCI设备排序方法 |
CN109582610A (zh) * | 2018-12-05 | 2019-04-05 | 上海航天电子通讯设备研究所 | 一种VxWorks系统环境下跨显控平台兼容控制的方法及其模块 |
CN110502283A (zh) * | 2019-08-19 | 2019-11-26 | 深圳大趋智能科技有限公司 | 一种产品外设兼容方法及系统 |
CN115291958A (zh) * | 2022-10-10 | 2022-11-04 | 广州市保伦电子有限公司 | 一种主控与外围芯片的更换方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11789715B2 (en) | Systems and methods for transformation of reporting schema | |
US9471365B2 (en) | Techniques for performing virtual machine software upgrades using virtual disk swapping | |
US8881139B1 (en) | Legacy application rehosting system | |
CN104503792A (zh) | 一种在VxWorks中实现设备管理功能的方法 | |
EP1906302A1 (en) | Usage of virtualization software for shipment of software products | |
US7055026B2 (en) | Method and system for a portable adaptable operating environment identity | |
CN101416175A (zh) | 创建离线资源的模板 | |
US6901590B2 (en) | System and method for single transparent deployment flow | |
CN110888650B (zh) | 一种操作系统镜像的定制方法及系统 | |
CN104375867A (zh) | 一种定制Linux系统制作ISO镜像方法 | |
CN102937909A (zh) | 一种部署和更新Linux系统的方法 | |
Richardson | Getting started with BeagleBone: Linux-powered electronic projects with Python and JavaScript | |
CN103747095A (zh) | 一种虚拟桌面系统及方法 | |
US20070294703A1 (en) | System and Method for Migration of Information From a Legacy to a Replacement Information Handling System | |
CN103942088A (zh) | 一种获取虚拟机usb存储设备使用情况的方法 | |
CN111930398B (zh) | 应用程序更新方法、装置、系统、介质及设备 | |
CN111433747B (zh) | 用于加载操作系统的虚拟存储器 | |
US11080082B2 (en) | Cross-hypervisor virtual machine conversion | |
CN105389495A (zh) | 一种外部重置windows虚拟机密码的方法 | |
Moore | Visual Studio 2010 All-in-One For Dummies | |
CN113064698A (zh) | 提供产品环境的方法及相应的装置、系统、设备和介质 | |
CN109828752B (zh) | 项目代码自动生成方法、装置、计算机设备及存储介质 | |
CN112559006A (zh) | 企业客户端自动升级方法、系统、设备及存储介质 | |
CN104102555B (zh) | 开源数据备份和恢复方法 | |
CN111273956B (zh) | 一种程序模块加载方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150408 |