1. 简介
上一篇文章见了,renode
是什么,以及应用装置 renode
后,应用官网示例跑了一个最简略的零碎,并且有了串口输入。
此次,咱们应用 renode
来运行一款物联网操作系统OneOS-Lite
。
2.renode 官网
在此,咱们给出 renode 的官网网址:https://renode.io/,以及它的官网文档:https://renode.readthedocs.io/en/latest/
相干材料能够通过该网址进行查阅。如果须要该 renode 文档和中文翻译,欢送关注公众号 CMCC-OneOS,或者留言和我分割。
3.renode 根底操作
为了能更好的应用 renode,咱们在这里简略阐明一下 renode 的基本操作,来满足咱们的日常工作需要。
3.1 帮忙 help
相熟命令,最好的形式之一是巧用 help
命令。咱们能够间接在终端中间接输出 help
来查看它所反对的命令有哪些,也能够应用 help xxx
的形式来查看绝体某个命令的具体应用办法。
3.2 创立 Machine
在 monitor
中执行 mach create
,将会创立一个新的machine
,默认状况下,零碎会主动调配machine
的index
,从 0 开始计数,别离命名为 machine-0
、machine-1
等,并且会主动将 monitor
的上下文切换到新建的machine
。
如果须要指定 machine
的名字,能够执行命令mach create”xxx“
,如下图:
3.3 装载 Platform
当实现 Machine 的创立之后,该 Machine 只有一个外设,即系统总线(Renode 中简写为 sysbus)。此时该 Machine 并不具备 CPU 和内存,因而还无奈执行任何代码。
咱们能够通过 peripherals 命令列出所有的外设,能够看到,此时只有 sysbus:
这时,咱们须要加载平台形容文件:machine LoadPlatformDescription @platforms/boards/stm32f4_discovery.repl
。
此时,再次查看外设。能够发现,蕴含串口 uart 等更多的外设信息。而咱们虚构的硬件平台也曾经初步实现。
3.4 加载程序
在实现平台的创立以及配置后,就能够将要运行的软件上载到平台上。Renode
能够使得用户上载与在实在硬件上同样的软件可执行文件,无需批改或者从新编译。
加载 elf
文件到虚构的内存中,所用命令格局如下:sysbus LoadELF @my-project.elf
这里咱们应用的是 OneOS-Lite
下的 STM32F407VG-renode
我的项目,进入该我的项目中,编译生成 elf 文件。
3.5 运行程序
程序加载好当前,能够应用命令 start
让程序运行起来,咱们能够通过命令 showAnalyzer sysbus.uart1
关上串口,证实程序是跑起来了的!
4. 结语
通过 renode,咱们让 OneOS-Lite
这个超轻量的物联网操作系统跑在了虚构的硬件外面,这对咱们学习一款操作系统是十分无益的。
renode 的应用,能够让咱们更加理解硬件,OneOS-Lite
则揭开了操作系统的神秘面纱。前面,咱们还会推出更多的相干文章,欢送关注。
5. 关注 && 分割
gitee:https://gitee.com/cmcc-oneos/OneOS-Lite
docs:https://oneos-lite.com/
公众号:CMCC-OneOS