假设我们有一个 64 位 ARM 双核 CPU(系统双核)
我想在一个内核上运行一个裸 RTOS,并将其他内核分配给 Linux。通过这种方式,我运行了 BLDC 电机控制(使用片上 PWM 输出和 ADC 输入)
到目前为止,我会做到这一点:
- 在 u-boot 和内核期间,将一个内核专用于 RTOS,其他内核用于 Linux
- 并保留一个内存分区作为 Linux 用户空间设备,禁用缓存。
- Linux 和 RTOS 通过共享内存交换信息
- RTOS 控制 PWM 和 GPIO,读取 ADC,并可能运行 Ethercat 连接。
我的问题是:
- 我是否需要将内存 IO 限制为仅一个核心?
- 有没有人做过类似的事情?谁能指出一些方向?谢谢