手册上说vxWorks兼容由Windows系统格式化的FAT32文件系统,但是为什么我的始终不能识别呢?
我使用的是Tornado2.2, 16G ATA 电子盘在vxWorks下文件系统的初始化和使用都已经没问题,并且已通过FTP传输测试。但是现在要求实现磁盘文件在Windows和vxWorks系统下的自由交换,所以需要vxWorks能识别由Windows格式化的磁盘,不知需要有什么特别设置?恳请高手指教!
但是现在要求实现磁盘文件在Windows和vxWorks系统下的自由交换,所以需要vxWorks能识别由Windows格式化的磁盘.
这句话没看太明白。。。怎么个自由交换法?
通常vxworks和windows之间交换数据,我都是用的target server file system
直接将windows的某个目录映射到vxworks上,vxworks就像是访问本地文件一样访问windows上的文件
操作如下:
Tornado操作界面-> Tools-> Target server-> Configure...
此处配置target server时,Target server property对应的下拉框中
Target server file system
勾上Enable file system,然后在root中选定windows要共享给vxworks的目录,设定权限为read/write
Vxworks shell下输入devs,列出来的设备中有个/tgtsvr,如果没有的话查看vxworks配置里是否包含的tsfs模块
输入cd /tgtsvr即进入到windows共享的那个目录下,读写创建文件等操作很方便,就像操作本地文件一样
vxworks下的dosFS和windows的是完全兼容的,完全可以直接用的。文件能有什么兼容不兼容的。
楼主问的是不是如何在vxworks上识别windows格式化的磁盘?如果是这个问题的话,就不是文件兼容的问题了,这样让人误解。
楼主问的是不是如何在vxworks上识别windows格式化的磁盘?如果是这个问题的话,就不是文件兼容的问题了,这样让人误解。
是的,我的问题就是这样!
感谢1楼,但那不是我的问题:)
1. 如果你的windows下格式化的是NTFS格式的,那么vxworks是无法认出来的。
2. 如果是FAT格式的,vxworks可以认出来
3. 如实是FAT32格式的,vxworks中包含dosfs2.0就可以了。鉴于你的16G的电子盘已经在vxworks下可以初始化和使用了,估计没有问题的了。
如果已经是格式化过的磁盘,而且又不想对其进行新的格式化,可以直接调用
-> usrAtaConfig 0,0,"/ata0" // 函数具体的使用看帮助
-> devs // 能看到一个/ata0设备就对了
谢谢frank_zhou,问题已经解决,原来硬件工程师在做逻辑时将高低字节颠倒,以致vxWorks下无法识别由Windows格式化的磁盘,我上午用磁盘查看工具查看引导扇区数据才发现。重新固化逻辑后就没问题了。