VxWorks入门09:系统修改

系列索引:VxWorks入门系列教程索引

上一篇:VxWorks入门08:qemu中运行

之前的文章是怎么搭建开发环境,怎么运行基本的环境,本文介绍对VxWorks系统的简单修改优化。

终端

在百度中搜索的VxWorks教程中,一般VxWorks在目标机上运行时,底部会有光标在闪,表示等待输入。

但是我们的没有,那是因为没有启用。

在上一篇的基础上,INCLUDE_PC_CONSOLE的内部(位置无所谓,方便统一管理),添加

1
#define INCLUDE_SHELL

表示启动VxWorks自带的shell。编译运行效果为:

shell

当然,我还提供了一些其他的配置项,供测试使用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#define INCLUDE_TELNET
#define INCLUDE_SHELL
#define INCLUDE_SYM_TABLE
#define INCLUDE_STANDALONE_SYM_TABLE
#define INCLUDE_LOADER
#define INCLUDE_UNLOADER
#define INCLUDE_ELF
#define INCLUDE_STARTUP_SCRIPT

#define INCLUDE_SHELL_CORE
#define INCLUDE_SHELL_INTERP_C
#define INCLUDE_SHELL_INTERP_CMD
#define INCLUDE_SHELL_BANNER
#define INCLUDE_SHELL_VI_MODE
#define INCLUDE_USE_NATIVE_SHELL

我们在终端中输入命令

1
devs

查看当前的所有设备,结果为:

devs
  • pcConsole表示控制台,即我们看到的蓝色背景的界面
  • fd0表示软盘,表示DOS6.22的设备
  • ata0a表示硬盘,即虚拟机中的2G的硬盘,是VxWorks存放的位置
  • value = 0 = 0x0 用于调试,表示正常

会发现编译结果中没有了VxWorks.sym文件,这个是VxWorks自带的符号库,没有启用,配置文件中有此配置项,可自行尝试。

系统命令

我的VxWorks运行之后是没有pwd/cd/ls这些命令的,如果执行会报错

1
2
-> ls
C interp: unknown symbol name 'ls'.

在config.h文件中添加

1
#define INCLUDE_DISK_UTIL

运行效果为:

disk utils

可以看到,在系统默认位置运行是不行的,需要切换到其他目录。

相关文件在VxWorks_Freshman的5.shell中。

下一篇:VxWorks入门10:调试与常用命令


VxWorks入门09:系统修改
https://feater.top/vxworks/vxworks-system-optimize
作者
JackeyLea
发布于
2021年11月30日
许可协议