原创宋宝华Linux阅码场2018-01-25本文解释swappiness的作用,以及swappiness=0究竟意味着什么。内存回收我们都知道,Linux一个进程使用的内存分为2种:file-backedpages(有文件背景的页面,比如代码段、比如read/write方法读写的文件、比如mmap读写的文件;他们有对应的硬盘文件,因此如果要交换,可以直接和硬盘对应的文件进行交换),此部分页面进p
分类:
移动开发 时间:
2020-12-04 11:06:37
阅读次数:
11
原创宋宝华Linux阅码场2018-01-24本文目录Ftrace简介Ftrace案例Ftrace结果怎么读?vim进行Ftrace折叠Ftrace简介Ftrace是Linux进行代码级实践分析最有效的工具之一,比如我们进行一个系统调用,出来的时间过长,我们想知道时间花哪里去了,利用Ftrace就可以追踪到一级级的时间分布。Ftrace案例写一个proc模块,包含一个proc的读和写的入口。tes
分类:
其他好文 时间:
2020-12-04 11:03:14
阅读次数:
7
原创宋宝华Linux阅码场2018-01-22作者简介宋宝华,他有10几年的Linux开发经验。他长期在大型企业担任一线工程师和系统架构师,编写大量的Linux代码,并负责在gerrit上review其他同事的代码。BarrySong是Linux的活跃开发者,是某些内核版本的最活跃开发者之一(如https://lwn.net/Articles/395961/、https://lwn.net/Art
分类:
其他好文 时间:
2020-12-04 11:02:57
阅读次数:
6
原创宋宝华Linux阅码场2018-01-21五节课的第四节课内存与I/O的交换pagecachefree命令的详细解释read、write和mmapfile-backed的页面和匿名页swap以及zRAM页面回收和LRU练习题把hello,python运行两次,对比时间差;free,cat/dev/sda>/dev/null,free,观察变化,分析原因;前序pptLinux任督二脉之内存
分类:
系统相关 时间:
2020-12-04 11:02:18
阅读次数:
8
【写在前言】 最近关注了好几个好友专门讲算法的公主号,赶脚还不错,本着“分享”、“共进”的初心,在征得本人的同意之下,特此将原内容经原作者本人同意授权后,重新编辑、排版、整理到此处。 在此,特别感谢小夕学算法,袁厨的算法小屋等原创作者大牛。 好了,话不多说,我要开启学习,和大家共同进步了,嘻嘻~~~ ...
分类:
编程语言 时间:
2020-12-03 12:28:44
阅读次数:
15
原创dog250Linux阅码场2019-11-13eBPF技术风靡当下,eBPF字节码正以星火燎原之势被HOOK在Linux内核中越来越多的位置,在这些HOOK点上,我们可以像编写普通应用程序一样编写内核的HOOK程序,与以往为了实现一个功能动辄patch一整套逻辑框架代码(比如Netfilter)相比,eBPF的工作方式非常灵活。我们先来看一下目前eBPF的一些重要HOOK点:将来这个is_X
分类:
其他好文 时间:
2020-12-02 12:43:45
阅读次数:
13
原创骆小刚Linux阅码场1月19日作者简介骆小刚,现就职于深圳市普康电子有限公司,高级软件工程师。负责arm下u-boot、kernel开发,APP框架搭建,底层软件开发,算法开发,性能优化等。对开源软件有浓厚兴趣。本文主要用实例剖析systemd、daemon()、nohup启动服务的差异。环境:ubuntu1804x86_64,linux5.0,gcc8.3.01.systemd启动服务sy
分类:
系统相关 时间:
2020-12-02 12:34:40
阅读次数:
8
二叉堆是一种应用很广的数据结构,今天,我们就来简单讲讲二叉堆。什么是二叉堆?二叉堆是一种特殊的堆。具有如下的特性:具有完全二叉树的特性。堆中的任何一个父节点的值都大于等于它左右孩子节点的值,或者都小于等于它左右孩子节点的值。根据第二条特性,我们又可以把二叉堆分成两类:1、最大堆:父节点的值大于等于左右孩子节点的值。2、最小堆:父节点的值小于等于左右孩子节点的值。我们把二叉堆的根节点称之为堆顶。根据
分类:
编程语言 时间:
2020-12-02 12:34:24
阅读次数:
6
JMeter中_time函数的使用走心原创第14期有时在接口测试时,其参数需要为时间戳或者是日期格式的数据。针对此问题,可以使用JMeter自带的_time函数来解决以上问题操作步骤:1、通过函数助手,生成一个_time函数:2、如果参数为时间戳,那公式为:${__time(,)}:默认该公式精确到毫秒级别,13位数${__time(/1000,)}:该公式精确到秒级别,10位数3、如果参数需要为
分类:
其他好文 时间:
2020-12-02 12:33:52
阅读次数:
6
原创宋宝华Linux阅码场1月12日药不能停,直接进入正题,本文3分钟读完。文中涉及到的缩写如下:PID:进程(process)IDPPID:父进程(parentprocess)IDPGID:进程组(processgroup)IDSID:会话(session)ID文中a.out对应的代码如下:a.out代码main(){fork();while(1);}实验方法:开一个terminal,运行三个a
分类:
系统相关 时间:
2020-12-02 12:26:19
阅读次数:
10