![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
性能优化入门
文章平均质量分 69
KingOfMyHeart
会好起来的.
展开
-
CPU计算和磁盘IO重叠运行提升系统性能(磁盘,网络IO基本过程)
应用程序从磁盘中读取数据的过程:调用read()系列函数,产生系统调用,陷入内核态;CPU设置DMA,包括数据源地址,数据目的地址,数据长度;向磁盘设备控制器发送指令,要求磁盘控制器将目标数据搬运到内存中;磁盘控制器将数据存放到指定的自己的缓冲区,达到一定条件后,将控制器中的数据拷贝到内存中(此时是内核态的内存空间,该过程是DMA的过程,是两个高速存储介质之间的数据搬运);向DMA确认成功,DMA控制器产生一个中断给CPU,中断服务程序返回用户态,继续执行中断时的下一条指令;将内核空间内存中数原创 2022-04-04 20:32:11 · 900 阅读 · 0 评论 -
缓存以及缓存的三种数据淘汰机制
缓存提升数据访问性能,数据备份在内存中,一般支持2种操作:将数据存到缓存的操作 put(key,value)获取缓存中数据的操作 get(key)数据淘汰机制假设我们有一个缓存,容量为3,接下来我们根据不同的数据淘汰机制做分析:淘汰最先放入缓存的数据 FIFO(first in first out)依次将数据k1,k2,k3存入cache中,当我们继续put(k4,v4)时,缓存是满的,这个时候就需要将缓存中的数据进行淘汰,根据FIFIO机制,将最先入队的数据从缓存中移除掉,最后将k4原创 2021-07-01 22:20:33 · 466 阅读 · 0 评论 -
cache line
1.回顾我们计算机相关的人士,CPU从内存上取某个变量的值后一定是要存放在当前CPU的寄存器中,于此同时,还会发生另外一件事,当前的CPU还会将这个变量的缓存行读到该CPU的高速缓存上来.2.cache line:缓存行好了,这个基本过程了解了,再来说一下cache line这个概念:cache line:是CPU进行缓存时的最小单位,大小一般为32B~256B之间3.实例:对于我...原创 2019-07-31 18:39:20 · 811 阅读 · 0 评论 -
Linux常见上下文切换---理论篇
文章图片来源网络,侵权联系删除.一、CPU上下文:PC寄存器:存放着CPU正在执行的指令或者CPU将要执行的指令;其他寄存器,CPU身边速度极快的内存,保存着其他重要的信息。CPU上下文切换:由于任务(进程、线程或者中断)在CPU上执行时宏观看上去所有进程都在执行,实际上任务不可能独占CPU,是需要遵守CPU的调度算法,这个过程中任务是要不停的换进换出,而上下文指的就是这个某个任务执...原创 2019-08-24 16:16:12 · 797 阅读 · 0 评论 -
Linux内存管理基础---pt、je、tc三种不同malloc版本简介、内存优化思路、伙伴系统简介
一、x86 Linux 32位系统虚拟地址空间布局:这里的段基址从0开始,可以访问管理的内存是4G;如果是段基址是从2G开始的,那么内存可以达到6G.Linux进程使用内存的几种类型:初始化数据段、未初始化数据段;栈(局部变量、临时变量)esp、rsp;堆(动态申请)紧贴数据段;内存映射段。其中:初始化数据段、未初始化数据段、栈的内存使用由编译器和连接器控制;堆和内存映射...原创 2019-08-25 21:47:26 · 1756 阅读 · 1 评论 -
如何理解uptime--"平均负载Load Average"
一、正确理解uptime每个字段的意思:king@ubuntu:~$ uptime 16:11:04 up 22 min, 2 users, load average: 0.00, 0.02, 0.10king@ubuntu:~$ uptime 16:18:16 up 29 min, 2 users, load average: 0.00, 0.00, 0.05king@ubu...原创 2019-08-17 18:11:57 · 3082 阅读 · 0 评论 -
likely()和unlikely()
define likely(x) __builtin_expect(!!(x), 1)define unlikely(x) __builtin_expect(!!(x), 0)ikely(x)宏传入__builtin_expect(!!(x), 0)的第一个参数为!!x,这样写是因为__builtin_expect的第一个参数需要为long型,而我们如果想传入指针或字符串类型,则需要使用!!x...原创 2019-07-16 15:31:37 · 3063 阅读 · 0 评论