博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
转载: SMP的一些注意事项
阅读量:6050 次
发布时间:2019-06-20

本文共 997 字,大约阅读时间需要 3 分钟。

所谓的smp,其实就是在soc中出现多个cpu。比如,如果我们说手机是4核cpu,一般指的是soc有4个arm核心。因为自己曾经裸写过smp的相关代码,运行效果还不错,所以特地做一些纪录,以备以后使用。

1、smp中一般有主核和从核之分,主核只有一个,从核可以有很多个。

2、一般主核是不能关闭的,但是从核是可以关闭,也可以重新唤醒的。

3、主核完成大部分系统启动任务,等到系统差不多好的时候,开始唤醒从核。

4、主核和从核的起始执行位置是相同的,都在某个汇编文件中,但是必须根据cpuid马上分开。

5、主核和从核的c函数入口点是不一样的。

6、中断一般是均匀分布在主核和从核上面的。

7、主核和从核的数据抢占必须依靠自旋锁来解决。

8、如果只是两个核,那么可以用队列的方法完成数据同步。

9、smp可能会出现内存屏障,即一个核的乱序执行对另外一个核的cache同步造成了影响。

10、紧急的事情,主核和从核之间只能利用核间中断来解决。

11、不同核运行的堆栈空间必须提前准备好。

12、bss数据只需要主核clear一遍,不需要每一个核clear一遍,反而有风险。

13、主核和从核之间可以有均衡负载,也可以没有,不是非要和linux一样。

14、主核和从核之间可以各自运行一个系统,也可以只运行一个系统。

15、多核调试可以在qemu虚拟机上面完成。

16、主核和从核之间的alu、tlb、cache是分开来的,但是float、mac有可能是共享的。

17、主核和从核的一级cache一般是分开来的,二级cache、三级cache一般是共享的。

18、主核和从核的cache同步一般是硬件自动完成,实现方法多采用mesi协议,有内存屏障的风险。

19、主核和从核之间的tlb同步、cache同步一定要及时,常常需要designer自己手工完成。

20、只有纯运算的时候可以最大程度发挥smp的优势,cpu占有率才会达到百分之几百的效果。

---------------------
作者:费晓行
来源:CSDN
原文:https://blog.csdn.net/feixiaoxing/article/details/84980734
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/songwu/p/10875685.html

你可能感兴趣的文章
gulp压缩合并js与css
查看>>
块级、内联、内联块级
查看>>
Predicate
查看>>
[面试题记录01]实现一个function sum达到一下目的
查看>>
这个季节的忧伤,点到为止
查看>>
mysql通过配置文件进行优化
查看>>
省级网站群建设关注点
查看>>
工作第四天之采集资源
查看>>
innobackupex 在增量的基础上增量备份
查看>>
Windows Server 2012 R2 DirectAccess功能测试(2)App1服务器安装及配置
查看>>
基于清单的启动器的实现
查看>>
外网用户通过citrix打印慢的解决方法
查看>>
STL容器的使用
查看>>
关于std::map
查看>>
JXL导出Excel文件兼容性问题
查看>>
VBoot1.0发布,Vue & SpringBoot 综合开发入门
查看>>
centos7 安装wps 后 演示无法启动
查看>>
git简单命令
查看>>
LAMP编译部署
查看>>
XenDesktop7.6安装部署入门教程
查看>>