一、简介

VxWorks是由风河系统公司制作的实时操作系统(RTOS),主打高可靠性与强实时性,广泛应用于对响应速度和稳定性有严苛要求的领域。

二、环境准备

  1. PC机(Intel或AMD处理器,Windows11,需联网)
  2. VMware Workstation 16 Pro
  3. ubuntu-24.04.2-desktop-amd64
  4. wrsdk-vxworks7-qemu-1.10.tar.bz2

注意:假如PC机本来就是ubuntu系统,则直接从步骤五开始。

三、安装VMware

略。

四、安装Ubuntu

在VMware中安装Ubuntu虚拟机。

五、安装QEMU

在Ubuntu中执行下列命令:

sudo apt update

sudo apt-get update

sudo apt-get install qemu-system

qemu-system-x86_64 --version

如果展示类似下图的信息(可能版本不是8.2.2),代表安装成功。

六、下载VxWorks SDK

在下面网站下载SDK:

https://forums.windriver.com/t/vxworks-software-development-kit-sdk/43

将下载后的文件放到Ubuntu的当前登录用户的主目录下(/home/用户名):

在该文件夹中右键->在终端打开

在终端中执行命令(解压):

tar xjvf wrsdk-vxworks7-qemu-1.10.tar.bz2

如果提示:bzip2:无法 exec: 没有那个文件或目录,则先执行命令:sudo apt-get install bzip2

在该路径下出现解压后的文件夹:wrsdk-vxworks7-qemu

七、在QEMU中启动VxWorks

进入wrsdk-vxworks7-qemu文件夹后(关键),右键->在终端打开,执行命令:

qemu-system-x86_64 -m 512M -kernel vxsdk/bsps/itl_generic_3_0_0_1/vxWorks -net nic -net user,hostfwd=tcp::1534-:1534,hostfwd=tcp::2345-:2345 -display none -serial stdio -monitor none -append "bootline:fs(0,0)host:vxWorks h=10.0.2.2 e=10.0.2.15 u=target pw=vxtarget o=gei0"

如果显示下面信息,代表VxWorks启动成功。

八、编写测试代码并编译

在主目录下(/home/用户名)新建一个文件夹test1,在其中新建一个hello1.c,输入代码:

#include 
int main(void)
{
    printf("hello, world!\n");
    return 0;
}

在终端中执行命令:(安装所需的库)

sudo apt install cmake

sudo apt install g++

wrsdk-vxworks7-qemu文件夹中(关键),右键->在终端打开,执行命令:

source sdkenv.sh

在该终端中(关键),通过cd命令切换到test1文件夹(关键),再执行命令:

wr-cc -rtp hello1.c -static -o hello1.vxe

test1中将生成hello1.vxe

九、安装pyftpdlib,并创建ftp服务器

在任意终端中执行命令:

sudo apt install python3-pyftpdlib

sudo python3 -m pyftpdlib -p 21 -u target -P vxtarget -i 127.0.0.1 -d $HOME

十、VxWorks中运行hello1.vxe

在VxWorks中,执行cmd,从内核空间交互进入用户空间交互

-> cmd

[vxWorks *]#

注意:此时vxworks默认路径为ubuntu主目录(/home/用户名)

在VxWorks中执行命令:ls

可以看到主目录的内容。

执行命令:

cd test1

hello1.vxe

可以看到hello,world!

欢迎再次来到VxWorks世界(的门口)!