更多精华文章请扫描下方二维码关注Linux阅码场 简介 火焰图(Flame Graph)是由Linux性能优化大师Brendan Gregg发明的,本文用最简单的实例讲解什么是火焰图,怎么画出来火焰图,火焰图的优点是什么。...
之前小弟一直在宣传推广火焰图,结果是很多童鞋凡事都用火焰图。说实话,火焰图特别适合分析运行时热点(无论是on-cpu、off-cpu、还是内存等,火焰图的想象力可以无穷放大),但是你要分...
僵尸不可能被杀死,因为它已经死了,不存在再死一次的问题。死的对立面是活,死者已死。只有活的进程才可能被杀死。什么是僵尸首先要明确一点,僵尸进程的含义是:子进程已经死了,但是父进程还没有wait它的一个中间...
宋宝华的宋宝华基于最新的Linux4.0内核(电子书版+源码)
宋宝华是一名著名的Linux内核开发者,他与众多开源社区成员一起为Linux内核的开发和推广做出了卓越的贡献。其中,他编写的Linux驱动相关书籍广受好评,其中不乏一些经典的著作,比如《Linux设备驱动开发详解》。 ...
第一次课 (宋宝华) 资源分配单位 task_struct:描述进程的数据结构 应该有资源,进程描述 子死父清理 内存泄漏应该担心不是进程死了,内存没有释放;而是进程活着,运行越久,耗费内存越多 fork main(){ fork...
本文目录●●0. 为什么关心Page Migration1. CoW引起的页迁移1.1 fork1.2 KSM2. 内存规整引起的页迁移 2.1 CMA2.2 alloc_p...
在《宋宝华:火焰图:全局视野的Linux性能剖析》一文中,我们主要看了on-cpu火焰图,理解了系统的CPU的走向的分析。但是,很多时候,单纯地看on-cpu的情况(什么代码在耗费CPU),并不能解决性能问题,因为有时候...
第二课 ... 写时复制:copy-on-write fork一个子进程,并不是一个fork的全部资源,而是采用了写时复制的技术。 vfork clone pthread_create 共享资源,可以调度 top 查看进程cpu利用率,进程视角 ...
宋宝华,他有10几年的Linux开发经验。他长期在大型企业担任一线工程师和系统架构师,编写大量的Linux代码,并负责在gerrit上review其他同事的代码。Barry Song是Linux的活跃开发者,是某些内核版本的最活跃开发者之...
不能这么简单地理解,fd本身是一个进程级别的概念,每个进程有自己的fd的列表,比如进程B收到进程A的fd的时候,进程B自身fd空间里面自己的前面200个fd都已经被占用了,那么进程B接受到的fd就可能是201。...
其实我也不想要积分的。本来是个自由分享的论坛,可到处都要积分。被逼梁山,还请谅解
https://blog.csdn.net/sinat_26600745/article/details/47345257
天问公平在哪里?几个人一起抢spinlock,到底谁先抢到呢?这是一个问题。几个人一起去银行柜台,到底谁先被服务到呢?这是一个问题。闹地不好就要出问题。这个问题就是公平的...
Linux_I2C核心、总线与设备驱动(宋宝华 嵌入式开发
USB开发大全 (USB设备驱动开发深度解析-宋宝华.pdf usb 中文协议 USB结构体系.pdf 嵌入式Linux的USB驱动程序开发.pdf linux设备驱动开发详解-usb篇.pdf 快速USB学习.doc
《宋宝华linux设备驱动开发详解 4.0pdf》是一本关于Linux设备驱动开发的知识手册。书中由宋宝华撰写,是一本较为全面系统的资料,对于想要学习或进一步了解Linux设备驱动开发的人来说,是一本很好的参考书籍。 在...
《Linux设备驱动开发详解》是一本介绍Linux设备驱动开发理论、框架与实例的书,《Linux设备驱动开发详解》以Linux 2.6版本内核为蓝本,详细介绍自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射...
宋宝华是一位著名的Linux设备驱动开发专家,他撰写了多本关于Linux设备驱动开发的书籍,其中包括《Essential Linux Device Drivers》和《Linux设备驱动开发详解:基于最新的Linux 4.0内核》。这些书籍对于想要深入...
1、linux内存映射关系 内存映射中最重要的是页表,页表除了找到虚地址对应的物理地址外,在对应这一行中还存有两个标志位,一个是RWX标志位,表明该位置是可读还是可写,另一个是u/k标志位,区分用户空间和内核...
2012年的文章,重新在微信公众号发表。第一章:硬实时Linux(RT-Preempt Patch)在PC上的编译、使用和测试 第二章:硬实时Linux(RT-Preempt Patch)的中断线程化硬实时Linux(RT-Preempt Patch)在PC上的编译、使用和...
本文解释linux内存中swappiness的作用,以及linux内存中swappiness=0究竟意味着什么。内存回收我们都知道,Linux一个进程使用的内存分为2种:file-backed pages(有文件背景的页面,比如代码段、比如read/write方法...
1、POSIX标准多线程 发送给进程下一组线程的信号将被共享,被其中任意一个线程处理。同一进程创建的线程同生死,如果收到一个kill信号,这一组task_struce都会退出。 2、NPTL模型 内核采用线程组的概念,task...
《Linux设备驱动开发详解》是由宋宝华编写的一本关于Linux设备驱动开发的书籍。该书详细介绍了Linux设备驱动的相关概念、基本原理和开发过程。 这本书的主要内容包括:介绍了Linux设备驱动的基本概念和工作原理;...
有一次给一群码农演讲,我喷口水喷了快一个小时,说spinlock等的正确使用以及死锁的原因。下面有个人突然问,“老师,请问什么叫死锁?”。我心里想,把这个人拉出去枪毙一万...
宋宝华著有多本Linux领域的经典著作,并在国内外学术会议和期刊上发表了大量关于Linux设备驱动和嵌入式系统方面的论文。 通过深入研究《Linux设备驱动程序第三版》这本书,读者可以收获丰富的Linux设备驱动开发知识...