有几个概念不是很清楚:1. C6678可以跑linux,这里的linux指的是真实意义上主流linux还是uclinux?貌似MCSDK白皮书说的kernel是uclinux?
2. C6678貌似没有MMU(内存管理单元),如果他能跑主流linux,那他的虚拟地址等等是怎么实现的呢?
3. 是不是带ARM核的DSP才能跑主流linux(因为ARM处理器有MMU)?
Vincent Han:
您好:
对于您的帖子,具体回复见下:
1)C6678跑的是ucLinux而非传统意义上的Linux
2)由于C6678没有MMU单元,但是虚拟地址可用过DSP Core和MSMC上的MPAX进行映射,以实现虚拟地址到物理地址的转换
3)目前TI官方支持的主流Linux是跑在带TI Keystone和Keystone II带ARM的SoC上的ARM核的
另外,在TI DSP上跑的ucLinux也无法支持主流Linux传统意义上的SMP,如果您的需求一定要在DSP上面跑Linux,目前只有从开源社区上找到相应资源。
guohua wei:
回复 Vincent Han:
您好,感谢您的回复。1.对于多核DSP不能实现传统意义上的SMP是个什么概念,不能实现这个会造成什么样的损失呢。我看了SMP的概念,也不是很明白,您能具体说说吗? 2.对于EVM C6678开发板出厂默认在nand flash里固化了linux系统,那这里的linux是主流linux还是uclinux呢?