![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内核
文章平均质量分 55
又肥又壮的韭菜
这个作者很懒,什么都没留下…
展开
-
多核cpu对于共享数据的操作
CPU内部,多个核心之间有一条环形总线,当有某一个核心需要锁住cache的时候,这个总线会通知所有的核心,所以只要有某个核心使用了cmpxchg,那么其它的核肯定都会停下来,不会出现并发的情况。重要的是这个缓存一致性协议是如何工作的,查阅了资料发现确实在缓存一致性协议这里一笔带过了(“缓存一致性协议使得不存在两个cpu同时写内存”)大致意思为多cpu的架构下每个cpu都有一组cache,其中我们读写cache会依照他们的状态进行不同的操作,之后会切换cache的状态,同时这样的读写操作是原子的.原创 2021-01-25 08:57:49 · 2389 阅读 · 0 评论 -
关于mmap的解析
看这篇文章之前需要知道一个概念虚拟内存系统通过将虚拟内存分割为称作虚拟页(Virtual Page,VP)大小固定的块,一般情况下,每个虚拟页的大小默认是4096字节。同样的,物理内存也被分割为物理页(Physical Page,PP),也为4096字节。一、mmap基本原理和分类在LINUX中我们可以使用mmap用来在进程虚拟内存地址空间中分配地址空间,创建和物理内存的映射关系。映射关系映射关系可以分为两种1、文件映射磁盘文件映射进程的虚拟地址空间,使用文件内容初始化物理内存。原创 2020-09-23 21:46:40 · 373 阅读 · 0 评论