# RTOS 实时操作系统 ## vxWorks ### run 通过 qemu 启用 vxworks 6.9,并展开测试 一般实际的 vxworks 系统跑在 powerpc、mips 上,这边可以通过 qemu 来仿真 `sudo apt install qemu-system-ppc` 下一步需要获取 vxworks 的 bootable 文件,通常是 `.bin` 文件或单个名为 vxWorks 的文件,这通常需要 wind river 的授权 有两种方式 - (不支持内核裁剪,用于个人交流 / 学习、教育目的,使用 NCLA 非商业许可证)通过官方的 lab 获取 sdk - (更高级,支持内核裁剪)通过正式授权的 workbench 构建 vxworks 内核 #### 使用官方 sdk 路径:https://www.labs.windriver.com/vxworks-sdk/ -> https://forums.windriver.com/t/vxworks-software-development-kit-sdk/43 -> (更早版本的 vxworks)https://labs.windriver.com/downloads/wrsdk_prev.html 一些简单的名词解释: - BSP(Board Support Package),板级支持包,包含启动、外设驱动与平台配置,让操作系统在特定硬件上可启动、可用的 "板级适配层" 集合,可以看作是一个接口,它把内核与具体板卡/SoC 的启动、内存、中断、时钟、外设等对接起来 - IA(Intel Architecture) - IA Generic / ITL Generic,面向通用 Intel PC 平台的 BSP,就理解为在 x86_64 PC 平台上常见的一种 BSP 即可,例如 itl_generic,这里的 ITL 大概就是 Intel 的缩写,在 vxworks 相关内容里见得比较多 - SabreLite,NXP / Freescale i.MX6 SabreLite 开发板的 BSP 名称,通常是 ARM 架构 可惜的是这边最早只能下到 vxWorks 7.0 的版本,VxWorks 6.x 时代采用客户门户(订阅/维护合同)分发,介质和补丁仅对已签约客户开放,而且没有官方支持的 qemu sdk 一键包 下载 `wrsdk-vxworks7-qemu-1.15.1.tar.bz2` 后,相应的文件目录结构应该长这样 ```bash # 使用 7zip 来解压 bzip2 文件 $ 7z x wrsdk-vxworks7-qemu-1.15.1.tar.bz2 $ tar xvf wrsdk-vxworks7-qemu-1.15.1.tar $ tree -L2 . ├── wrsdk-vxworks7-qemu │ ├── commit.txt │ ├── compilers │ ├── docs │ ├── examples │ ├── NCLA.txt │ ├── README.md │ ├── sdkenv.sh │ ├── sdk.json │ ├── sdk.yml │ ├── tools │ └── vxsdk ├── wrsdk-vxworks7-qemu-1.15.1.tar └── wrsdk-vxworks7-qemu-1.15.1.tar.bz2 ``` 可以简单地通过以下步骤启动一个 vxworks 系统,出现图标即为成功 ```bash # 使用 qemu 启动 vxworks 7 $ qemu-system-x86_64 -m 1024 -cpu qemu64 -nographic -serial mon:stdio -net nic,model=e1000 -net user -kernel wrsdk-vxworks7-qemu/vxsdk/bsps/itl_generic_3_0_0_4/vxWorks ... _________ _________ \........\ /......../ \........\ /......../ \........\ /......../ \........\ /......../ \........\ \......./ \........\ \...../ VxWorks SMP 64-bit \........\ \.../ \........\ \./ Release version: 25.03 \........\ - Build date: Apr 23 2025 10:57:59 \........\ \......./ Copyright Wind River Systems, Inc. \...../ - 1984-2025 \.../ /.\ \./ /...\ - ------- Board: x86_64 Processor (ACPI_BOOT_OP) SMP/SMT CPU Count: 1 OS Memory Size: ~958MB ED&R Policy Mode: Deployed Debug Agent: Started (always) Stop Mode Agent: Not started ... -> version VxWorks SMP 64-bit (for x86_64 Processor (ACPI_BOOT_OP) SMP/SMT) Release version: 25.03 Build date: Apr 23 2025 10:57:59 Boot line: gei(0,0)host:vxWorks h=192.168.200.254 e=192.168.200.2 u=target pw=vxTarget value = 87 = 0x57 = 'W' = buffer + 0x17 -> ``` #### 自制 bootable 这里假设你已经获取到了 vxworks 6.x 的 workbench,需要从 workbench 中构建 vxworks 启动所需文件 ```bash $ qemu-img create -f qcow2 vxworks.qcow2 1G Formatting 'vxworks.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1073741824 lazy_refcounts=off refcount_bits=16 ``` ## sylix-os 隐形龙头翼辉及其产品 SylixOS 1. 介绍 2. 文章;https://docs.acoinfo.com/ 3. 环境搭建 4. 开源社区 5. 应用 ## FreeRTOS ## QNX ## RT-Thread Loading... # RTOS 实时操作系统 ## vxWorks ### run 通过 qemu 启用 vxworks 6.9,并展开测试 一般实际的 vxworks 系统跑在 powerpc、mips 上,这边可以通过 qemu 来仿真 `sudo apt install qemu-system-ppc` 下一步需要获取 vxworks 的 bootable 文件,通常是 `.bin` 文件或单个名为 vxWorks 的文件,这通常需要 wind river 的授权 有两种方式 - (不支持内核裁剪,用于个人交流 / 学习、教育目的,使用 NCLA 非商业许可证)通过官方的 lab 获取 sdk - (更高级,支持内核裁剪)通过正式授权的 workbench 构建 vxworks 内核 #### 使用官方 sdk 路径:https://www.labs.windriver.com/vxworks-sdk/ -> https://forums.windriver.com/t/vxworks-software-development-kit-sdk/43 -> (更早版本的 vxworks)https://labs.windriver.com/downloads/wrsdk_prev.html 一些简单的名词解释: - BSP(Board Support Package),板级支持包,包含启动、外设驱动与平台配置,让操作系统在特定硬件上可启动、可用的 "板级适配层" 集合,可以看作是一个接口,它把内核与具体板卡/SoC 的启动、内存、中断、时钟、外设等对接起来 - IA(Intel Architecture) - IA Generic / ITL Generic,面向通用 Intel PC 平台的 BSP,就理解为在 x86_64 PC 平台上常见的一种 BSP 即可,例如 itl_generic,这里的 ITL 大概就是 Intel 的缩写,在 vxworks 相关内容里见得比较多 - SabreLite,NXP / Freescale i.MX6 SabreLite 开发板的 BSP 名称,通常是 ARM 架构 可惜的是这边最早只能下到 vxWorks 7.0 的版本,VxWorks 6.x 时代采用客户门户(订阅/维护合同)分发,介质和补丁仅对已签约客户开放,而且没有官方支持的 qemu sdk 一键包 下载 `wrsdk-vxworks7-qemu-1.15.1.tar.bz2` 后,相应的文件目录结构应该长这样 ```bash # 使用 7zip 来解压 bzip2 文件 $ 7z x wrsdk-vxworks7-qemu-1.15.1.tar.bz2 $ tar xvf wrsdk-vxworks7-qemu-1.15.1.tar $ tree -L2 . ├── wrsdk-vxworks7-qemu │ ├── commit.txt │ ├── compilers │ ├── docs │ ├── examples │ ├── NCLA.txt │ ├── README.md │ ├── sdkenv.sh │ ├── sdk.json │ ├── sdk.yml │ ├── tools │ └── vxsdk ├── wrsdk-vxworks7-qemu-1.15.1.tar └── wrsdk-vxworks7-qemu-1.15.1.tar.bz2 ``` 可以简单地通过以下步骤启动一个 vxworks 系统,出现图标即为成功 ```bash # 使用 qemu 启动 vxworks 7 $ qemu-system-x86_64 -m 1024 -cpu qemu64 -nographic -serial mon:stdio -net nic,model=e1000 -net user -kernel wrsdk-vxworks7-qemu/vxsdk/bsps/itl_generic_3_0_0_4/vxWorks ... _________ _________ \........\ /......../ \........\ /......../ \........\ /......../ \........\ /......../ \........\ \......./ \........\ \...../ VxWorks SMP 64-bit \........\ \.../ \........\ \./ Release version: 25.03 \........\ - Build date: Apr 23 2025 10:57:59 \........\ \......./ Copyright Wind River Systems, Inc. \...../ - 1984-2025 \.../ /.\ \./ /...\ - ------- Board: x86_64 Processor (ACPI_BOOT_OP) SMP/SMT CPU Count: 1 OS Memory Size: ~958MB ED&R Policy Mode: Deployed Debug Agent: Started (always) Stop Mode Agent: Not started ... -> version VxWorks SMP 64-bit (for x86_64 Processor (ACPI_BOOT_OP) SMP/SMT) Release version: 25.03 Build date: Apr 23 2025 10:57:59 Boot line: gei(0,0)host:vxWorks h=192.168.200.254 e=192.168.200.2 u=target pw=vxTarget value = 87 = 0x57 = 'W' = buffer + 0x17 -> ``` #### 自制 bootable 这里假设你已经获取到了 vxworks 6.x 的 workbench,需要从 workbench 中构建 vxworks 启动所需文件 ```bash $ qemu-img create -f qcow2 vxworks.qcow2 1G Formatting 'vxworks.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1073741824 lazy_refcounts=off refcount_bits=16 ``` ## sylix-os 隐形龙头翼辉及其产品 SylixOS 1. 介绍 2. 文章;https://docs.acoinfo.com/ 3. 环境搭建 4. 开源社区 5. 应用 ## FreeRTOS ## QNX ## RT-Thread © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏