对硬盘的操作

使用SATA硬盘,分区,引导区(VxC:)必须格式化为FAT(FAT16)格式,所以该分区大小有限制,不能超过4G(4G大小带测试),设置C:为“活动的”;

主机上安装DOS工具,采用MAXDOS8.5 版本,进入DOS环境下,格式化硬盘的引导区(SATA硬盘的分区VxC: format C: /s/q),进入Windows,将准备好的DOS系统文件拷贝至Vx的引导分区(VxC:)

添加网卡

更新网卡驱动,按照BSP中的说明更新网卡文件并make。

INSTALL_DIR\WindRiver\vxworks-6.6\target\src\hwif\end\make CPU=PENTIUM4 TOOL=diab

创建工程

创建boot loader/BSP project 工程,如下图1。 Format 选项必须是 Bin。Config.h文件可以不用修改。

编译工程,将生成的bootrom.bin 改名为 bootrom.sys,拷贝到 VxC:盘下。

创建 image 工程,编译,生成Vxworks 文件。拷贝到 VxC:盘下。

将SATA盘连接目标机,启动。加载bootrom 成功,开始初始化硬件,提示硬盘错误,可能和硬盘个数有关。随后加载vxworks 映像成功,进入vxworks操作系统。敲击键盘,有反应。

图1创建boot loader/BSP project 工程

修改 config.h 文件中 硬盘的个数设置。编译bootrom

#defineATA0_NUM_DRIVES   (1)    /*ATA 0 number drives present */

#defineATA1_NUM_DRIVES   (0)          /* ATA 1 number drives present */

图2

修改 image工程,如下,编译成功。运行后显示界面正常。

voidusrAppInit (void)

{

#ifdef USER_APPL_INIT

USER_APPL_INIT;      /* for backwards compatibility */

#endif

printf("hello\n");

printf("hello\n");

printf("hello\n");

/* add application specific code here */

}

添加下图中的组件后,编译错误。去掉该组件后,编译正常。

图3

添加 对磁盘操作的代码,注意变量的声明必须放在最前面(C语言的语法规定)。

编译执行后,提示磁盘操作错误,磁盘上没有创建文件。

在内核中添加 DOS文件系统,如下图4,5,6。

增加 File System And Disk Utilities 内核。编译测试。

测试速度没有提高。

增加 Dos FS Cache Handler 组件,如下图7。

DOSFS_DEFAULT_FAT_CACHE_SUZE   0X10000

DOSFS_DEFAULT_DATA_CACHE_SUZE  0X20000

DOSFS_DEFAULT_DIR_CACHE_SUZE   0X2000

添加 kernelcomponents(default) 组件,选择全部,

添加HRFS 组件

系统组件:

networkcomponents/network protocols/newwork application/telnet server

hardware/peripherals/serial/pc console

developmenttool components/target shell components/target shell

Devs查看设备

AtaShow

16:

->cp( "/sd0/FILE1.DAT","/sd0/dir2/f001.dat")

17.lockd:;vxsys d:

ifconfig("rtg0172.29.38.93 netmask 255.255.255.0 up")

ifconfig("rtg0up")

/*Updated by AMPRO */

/* Boot form a Network*/

#define   INCLUDE_BOOT_NETWORK

#define   INCLUDE_BOOT_FTP_LOADER

#undef INCLUDE_BOOT_TFTP_LOADER

#undef INCLUDE_BOOT_RSH_LOADER


#define
ATA0_CONFIG      (ATA_GEO_CURRENT | ATA_DMA_AUTO | \

ATA_BITS_32     | ATA_PIO_MULTI)

速度有提高,bit加宽,mod = dmault2

ld1,0,"d:/load/demo422.out"   加载out文件

ld<demo422.out要先确定 ld的默认目录用

ls 查看当前目录 list the contents of a directory(WindSh)

pwd display the current default directory(WindSh)

cd"d:/load"  改变当前目录

添加usb识别。

另,在vxworks6.x的版本中存在一个BUG,当用copy命令拷贝文件到tffs或者U盘中,6.x版本上拷贝速度明显远远慢于5.5。追踪代码发现copy使用的中间函数copyStreams。这个函数的作用是从第一个文件中读出一个数据块到缓冲区,然后写入第二个文件。vxWorks5.5下,这个数据块的大小是64K,对于1M的文件只需要调用16次文件系统的写函数;而vxWorks6.x下,这个数据块的大小是1K,拷贝1M的文件需要调用1024次写函数。每次调用写函数都需要同步FAT表和文件描述。对于flash一般一个扇区在64KB或者128KB大小,将copyStreams中的COPY_BLOCK_SIZE改为此大小可以明显改善copy的速度。

COPY_BLOCK_SIZE的设置在C:\WindRiver-GPPVE-3.6-IA-Eval\vxworks-6.6\target\src\usr\usrFsLib.c文件中(该文件为只读,首先备份并去除只读属性),修改此文件中COPY_BLOCK_SIZE的大小为64KB或者128KB,然后打开vxworks Development shell,进入该目录,执行make CPU=PENTIUM4 TOOL=diab命令。执行完毕后,重新编译所有工程。

D525VXWORKS6.6 测试:

1.  BOIS设置sata only

2.  采用3011的bsp

3.  网卡驱动采用6763 bsp下的,要重新编译,把.o文件放到bsp\lib里面

4. d525 vxworks6.6 bsp测试

D525VXWORKS6.8 测试:

1.  BOIS设置sata only

2.  采用6763的bsp

3.  Ata_num 1

4.  网卡驱动采用6763 bsp下的,要重新编译

5.  d525 vxworks6.8

6.  硬盘识别,文件操作会出错。

"gei(0,0) host:vxWorks h=192.168.1.250 e=192.168.1.222:ffffff00 u=target pw=target o=gei"
"ata=0,0(0,0) host:/ata00:4/vxWorks h=192.168.1.250 e=192.168.1.222:ffffff00 u=target pw=target o=gei"

vxWorks6.6 N270 D525 cpu的bsp配置总结的更多相关文章

  1. ubuntu14.04下CPU的caffe配置,不成功的朋友请与我(lee)联系,后面附带邮箱

    因广大朋友需求cpu的caffe配置.所以我(lee)在这份博客中对cpu配置caffe做出对应操作说明.希望能够解决大家对cpu配置caffe的困惑.少走弯路. 假设有安装不成功的朋友能够和我联系, ...

  2. Caffe cpu版本 Linux配置命令及搭建

    Caffee 安装过程 1.安装依赖包 $ sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-de ...

  3. 查看linux系统CPU及内存配置

    总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 查看物理CPU个数 cat /proc/cpuinfo| grep & ...

  4. (五)agentd端cpu的触发器配置

    配置===>模板===>选择对应的模板===> 这里我验证触发器是否有效,定义的触发器的值超过0.01就出发报警,这里我做的是最新的T值超过0.01就触发触发器 验证,说明触发器触发 ...

  5. win10 编译好的CPU版本caffe 配置自己的图像分类C++DEMO

    VC++目录 包含目录 F:\caffewindows\scripts\build\include F:\caffewindows\scripts\build F:\vs2015\VC\include ...

  6. 通过配置CPU参数 worker_cpu_affinity 提升nginx性能

    简介 Nginx默认没有开启利用多核cpu,我们可以通过增加worker_cpu_affinity配置参数来充分利用多核cpu的性能.cpu是任务处理,计算最关键的资源,cpu核越多,性能就越好. 规 ...

  7. caffe+vs2013+window10+GPU(CPU)配置

    参考:http://www.echojb.com/cuda/2017/03/15/350138.html https://www.zhihu.com/question/56111727 第一步:首先确 ...

  8. 全面了解 Linux 服务器 - 1. 查看 Linux 服务器的 CPU 详细情况

    1. 查看 Linux 服务器的 CPU 详细情况 判断依据: 具有相同的 core id 的 CPU 是同意个 core 超线程. 具有相同的 physical id 的 CPU 是同一个 CPU ...

  9. SQLSERVER到底能识别多少个逻辑CPU?

    SQLSERVER到底能识别多少个逻辑CPU? SQLSERVER到底能识别多少个逻辑CPU? 前言 在前几天在论坛有人遇到SQLSERVER识别逻辑CPU的问题 帖子地址: http://socia ...

随机推荐

  1. bzoj 4830: [Hnoi2017]抛硬币 [范德蒙德卷积 扩展lucas]

    4830: [Hnoi2017]抛硬币 题意:A投a次硬币,B投b次硬币,a比b正面朝上次数多的方案数,模\(10^k\). \(b \le a \le b+10000 \le 10^{15}, k ...

  2. BZOJ 1202: [HNOI2005]狡猾的商人 [带权并查集]

    题意: 给出m个区间和,询问是否有区间和和之前给出的矛盾 NOIp之前做过hdu3038..... 带权并查集维护到根的权值和,向左合并 #include <iostream> #incl ...

  3. Java获得系统的外网IP

    关于如何获得系统外网IP?在网上找了好久,大多数解决方案都没法直接用,所以今天和大家分享一段获得外网IP的代码! import java.net.Inet4Address; import java.n ...

  4. Go基础之--接口

    定义 在Go语言中,一个类只要实现了接口要求的所有函数,我们就说这个类实现了该接口 interface类型可以定义一组方法,用来表示一个对象的行为特征,interface不能包含任何变量,接口是引用类 ...

  5. 2019/1/10 redis学习笔记(二)

    本文不涉及集群搭建操作 关于在lua脚本中操作redis的应用场景 大家都知道redis对于单个集合的操作是原子性的;但是有可能有一种场景是这样.比如说抢红包,现在有十个人抢五份红包,抽象到我们jav ...

  6. 原生js贪吃蛇

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  7. [Python Study Notes]CS架构远程访问获取信息--Client端

    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...

  8. 配置可以通过http协议访问的svn服务器

    通过HTTP协议访问版本库是Subversion的亮点之一,这种方式具备许多svnserve服务器所没有的特性,使用上更加灵活. 关于mode_day_svn模块: 由于Subversion需要版本化 ...

  9. 提高SQL查询效率

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  10. C/C++调试分析工具

    一.静态分析工具 cppcheck cppcheck主要用于对C/C++源代码进行分析检查的一个开源工具,可以用来检测未使用的变量.越界访问.内存泄漏等问题. 使用方法 cppcheck --enab ...