提示
不知道什么是MMU请跳过此文章,不要浪费时间。
原因
随着单片机等微处理器的性能提升,就可以做很多的事情。例如路由器可以安装插件,但插件如果允许运行二进制等可执行机器码,那么一般的路由器的安全可以说得不到保障,插件可以随便读写没有MMU的所有内存。一来没有隐私,二来插件很容易使路由器崩掉,路由器基本上就是裸奔。但如果插件是使用其他解析执行语言,性能就不太理想。
方法
- 管控插件,专有语言编译器,检查非法内存访问等不安全问题。
- 管控安装,插件格式不能是二进制码、机器码,只能是中间语言或者源码(机器码检查内存非法访问复杂,几乎是不可控),安装的时候再转成机器码,这个过程可以管控非法内存访问。
总结
没有MMU换一个角度讲就是机器码层不可控,但此层之上是可控的。