自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux阅码场

专业的Linux技术社区和Linux操作系统学习平台,内容涉及Linux内核,Linux内存管理,Linux进程管理,Linux文件系统和IO,Linux性能调优,Linux设备驱动以及Linux虚拟化和云计算等各方各面.

  • 博客(34)
  • 收藏
  • 关注

转载 宇宙最强,meltdown论文中英文对照版(二)

本文由郭健郭大侠翻译,将分为三次连载完成,这是第二部分。郭大侠是蜗窝科技(http://www.wowotech.net/)的创始人,倡导"慢下来,享受技术"的健康理念,侠之大者,为国为民。前文:宇宙最强,meltdown论文中英文对照版(一)五、熔断(Meltdown)In this section, present Meltdown, a powerful attack allowing to

2018-01-31 00:00:00 1046

转载 宇宙最强,meltdown论文中英文对照版(一)

本文由郭健郭大侠翻译,将分为三次连载完成。郭大侠是蜗窝科技(http://www.wowotech.net/)的创始人,倡导"慢下来,享受技术"的健康理念,侠之大者,为国为民。摘要(Abstract)The security of computer systems fundamentally relies on memory isolation,e.g., kernel address range

2018-01-30 00:00:00 3285

转载 为什么手工drop_caches之后cache值并未减少?

在Linux系统上查看内存使用状况最常用的命令是"free",其中buffers和cache通常被认为是可以回收的:$ free             total       used       free     shared    buffers     cachedMem:      32764716    1067548   31697168     158332         12

2018-01-29 00:00:00 1639

原创 Linux free命令前后变化和available内存

老版的free命令长成这个样子:较新版本的Ubuntun、CentOS等中的free命令是这个样子的:主要的变化是buff/cache被合并为一列,并且增加了available这一列。available这一列的具体含义可以参见内核的这个commit:https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?

2018-01-28 00:00:00 30029 1

原创 谢宝友: 深入理解RCU之五:玩具式实现

本文简介本文介绍“玩具式”RCU实现。这些实现并不注重性能、实用性,也不能使用于生产环境中,而仅仅是为了清晰的传递RCU的概念。即便如此,要理解这些玩具式的实现,也需要对硬件、RCU概念有深入的理解。 作者简介谢宝友,在编程一线工作已经有20年时间,其中接近10年时间工作于Linux操作系统。同时,他也是《深入理解并行编程》一书的译者。该书作者Paul E.McKeney是IBM Linux中心领

2018-01-26 00:00:00 2549

原创 宋宝华:swappiness=0究竟意味着什么?

本文解释swappiness的作用,以及swappiness=0究竟意味着什么。内存回收我们都知道,Linux一个进程使用的内存分为2种:file-backed pages(有文件背景的页面,比如代码段、比如read/write方法读写的文件、比如mmap读写的文件;他们有对应的硬盘文件,因此如果要交换,可以直接和硬盘对应的文件进行交换),此部分页面进page cacheanonymous pag

2018-01-25 00:00:00 2304

原创 宋宝华:关于Ftrace的一个完整案例

本文目录 Ftrace简介Ftrace案例Ftrace结果怎么读?vim进行Ftrace折叠Ftrace简介Ftrace是Linux进行代码级实践分析最有效的工具之一,比如我们进行一个系统调用,出来的时间过长,我们想知道时间花哪里去了,利用Ftrace就可以追踪到一级级的时间分布。Ftrace案例写一个proc模块,包含一个proc的读和写的入口。test_proc_show()故意调用了一个ki

2018-01-24 00:00:00 2920 1

转载 英特尔暂停发放CPU补丁, Linux之父怒批“Spectre补丁是彻底的垃圾”

英特尔周一表示用户应当停止在受影响的设备上,部署上个月由安全人员发现的芯片安全Meltdown和Spectre漏洞补丁,因为目前发现了超出预期的重启问题以及其他“不可预测”的系统行为。由于英特尔还没有为CPU安全漏洞提供适当的修复,Linux Kernel 4.15版本的推出不得不推迟。——这可能是让 Linus Torvalds 再次进入“骂人模式”的原因。英特尔暂停发放CPU补丁芯片巨头建议原

2018-01-23 00:00:00 681

原创 宋宝华: 关于DMA ZONE和dma alloc coherent若干误解的彻底澄清

作者简介宋宝华,他有10几年的Linux开发经验。他长期在大型企业担任一线工程师和系统架构师,编写大量的Linux代码,并负责在gerrit上review其他同事的代码。Barry Song是Linux的活跃开发者,是某些内核版本的最活跃开发者之一(如https://lwn.net/Articles/395961/ 、https://lwn.net/Articles/429912/),也曾是一AR

2018-01-22 00:00:00 5994 3

原创 Linux任督二脉之内存管理(四) PPT

五节课的第四节课 内存与I/O的交换*page cache*free命令的详细解释*read、write和mmap*file-backed的页面和匿名页*swap以及zRAM*页面回收和LRU练习题*把hello,python运行两次,对比时间差;*free,cat /dev/sda > /dev/null, free,观察变化,分析原因;前序pptLinux任督二脉之内存管理(一) PPTLin

2018-01-21 00:00:00 886

原创 宋牧春: 多图详解Linux内存分配器slub

本文目录:1. 前言2. slub数据结构3. slub数据结构之间关系4. slub分配内存原理5. slub释放内存原理6. kmalloc作者简介:宋牧春,linux内核爱好者,2017年6月本科毕业于江苏大学。现就职于一家手机研发公司,任职BSP驱动工程师,主要负责TP驱动bringup和调试。1. 前言在Linux中,伙伴系统(buddy system)是以页为单位管理和分配内存。但是现

2018-01-20 00:00:00 5613 6

原创 Linux任督二脉之内存管理(三) PPT

五节课的第三节课-进程的内存消耗和泄漏*进程的VMA。*进程内存消耗的4个概念:vss、rss、pss和uss*page fault的几种可能性,major和minor*应用内存泄漏的界定方法*应用内存泄漏的检测方法:valgrind和addresssanitizer练习题*看一下进程的/proc//maps和smaps文件;*pmap一个进程;*把同一个程序运行2次,运行1次,观察pss;再运行

2018-01-20 00:00:00 1345

原创 Linux任督二脉之内存管理(二) PPT

五节课的第二节课-内存的动态申请和释放* slab、kmalloc/kfree、/proc/slabinfo和slabtop* 用户空间malloc/free与内核之间的关系* mallopt* vmalloc* 内存耗尽(OOM)、oom_score和oom_adj* Android进程生命周期与OOM练习题*看/proc/slabinfo,运行slabtop*运行mallopt.c程序:mal

2018-01-19 00:00:00 991

原创 Linux任督二脉之内存管理(一) PPT

五节课的第一节课-硬件原理和分页管理CPU寻址内存,虚拟地址、物理地址MMU以及RWX权限、kernel和user模式权限内存的zone: DMA、Normal和HIGHMEMLinux内存管理Buddy算法连续内存分配器(CMA)练习题尝试去更改一个const变量meltdown实例看/proc/buddyinfo习题位置https://github.com/21cnbao/memory-cou

2018-01-18 00:00:00 2666

转载 byeyear: gcc内嵌汇编详解

本文转发自:https://www.cnblogs.com/byeyear/p/4675049.html简单快捷,短小精悍,知识点各个击破。有时候我们希望在C/C++代码中使用嵌入式汇编,因为C中没有对应的函数或语法可用。比如我最近在ARM上写FIR程序时,需要对最后的结果进行饱和处理,但gcc没有提供ssat这样的函数,于是不得不在C代码中嵌入汇编指令。 1. 入门在C中嵌入汇编的最大问题是如何

2018-01-16 00:00:00 574

转载 深圳2018.01.26-27 《C高质量编程最佳实践》线下课程报名

一、课程背景:由于高等教育模式的使然,使得国内不少拥有一定工作年限的工程师所认知的C语言 和工程上的实用C依然有一定的差距。无论软件架构设计的不得当,还是代码书写的不严谨、不规范,最终都会导致产品暴露出各种bug,客户埋怨,工程师痛苦,代码的维护成本提高,公司蒙受经济损失。主要针对:在职的有一定工程经验的研发工程师二、课程目的:本课程主讲老师将会把自己多次参与国际大型合作项目的视角和经验分享给各位

2018-01-14 00:00:00 833 1

原创 郝健: github多人协作项目开发实操笔记

作者简介:郝健(Artist),目前就职于赛尔网络CERNET技术开发部,研发项目经理;以前在天融信Topsec软件平台部做防火墙核心系统开发。本文简介:这是网友Artist在看完王玉成老师的github视频直播后的笔记。他详细地记录了自己一步步在github上进行操作的过程。感兴趣的读者也可以按照他这个笔记一步步来做,这样github的功能也就学会七七八八了。1. git特点useful: ht

2018-01-14 00:00:00 867

原创 《Linux设备驱动开发详解:基于最新的Linux 4.0内核》一刷勘误

这是第一次印刷的勘误,大部分应该买的都是5刷了,这些错误基本已经绝迹。还是有部分童鞋买的书老书,在找勘误,所以再推送一次。我们欢迎读者给我们发送勘误意见,一经确认,我们将透过某种形式进行表扬和感谢。您的名字可能会出现在本书的二刷,三刷,四刷....的感谢名单中。感谢读者彭东林发现多处笔误、印刷错误:读者王榕对167页ldrex和strex的描述提出异议,认真分析后修正如下图:编辑自行翻译英文没有与

2018-01-14 00:00:00 5616 1

原创 (视频免费分享)王玉成:用github有效组织项目讲座

这是王玉成老师关于github直播的视频。玉成老师在这个视频里面主要讲了如何通过github进行多人合作项目开发。直播讲师:王玉成IoT GDE多年嵌入式开发经验,目前为国内的唯一的IoT GDE(Google Developer Experts),负责Android Things在国内的推广工作。视频内容1. git特点2. 用 git工具完成一个项目中间必须经过的几环节3. 实践1(演练) 使

2018-01-13 00:00:00 597

原创 Linux的任督二脉之内存管理线上微信群直播报名(2018.1.29-2.2)

这是宋宝华老师《Linux的任督二脉:进程调度和内存管理》的第二脉内存管理,第一脉《打通Linux脉络系列:进程、线程和调度》的CSDN录播位于:http://edu.csdn.net/course/detail/5995相关阅读: 宋宝华:Linux的任督二脉——进程调度和内存管理直播时间: 2018.1.29-2.2,共五晚9点-10点。直播形式:微信群 图、语音、答疑模式(不断截屏贴图+动画

2018-01-12 00:00:00 469

原创 用sysrq-trigger实现ARM Linux一键内核崩溃、一键关机、一键dump信息等

sysrq有多种功能,对于ARM Linux这种嵌入式没键盘的系统来说,也可以通过/proc/sysrq-trigger来进行操作。实验平台:QEMU模拟的ARM Linux内核版本: # uname -aLinux (none) 4.0.0-rc1+ #46 SMP Thu Nov 2 20:43:41 CST 2017 armv7l GNU/Linux一键内核崩溃# cd /proc/# ec

2018-01-12 00:00:00 3464

原创 廖威雄: 思维导图:利用__attribute__((section()))构建初始化函数表与Linux内核init的实现

本文详细讲解了利用__attribute__((section()))构建初始化函数表,以及Linux内核各级初始化的原理。作者简介:    廖威雄,2016年本科毕业于暨南大学,目前就职于珠海全志科技股份有限公司从事linux嵌入式系统(Tina Linux)的开发,主要负责文件系统和存储的开发和维护,兼顾linux测试系统的设计和持续集成的维护。    拆书帮珠海百岛分舵的组织长老,二级拆书家

2018-01-11 00:00:00 1279

原创 廖威雄: 利用__attribute__((section()))构建初始化函数表与Linux内核init的实现

本文详细讲解了利用__attribute__((section()))构建初始化函数表,以及Linux内核各级初始化的原理。作者简介:    廖威雄,2016年本科毕业于暨南大学,目前就职于珠海全志科技股份有限公司从事linux嵌入式系统(Tina Linux)的开发,主要负责文件系统和存储的开发和维护,兼顾linux测试系统的设计和持续集成的维护。    拆书帮珠海百岛分舵的组织长老,二级拆书家

2018-01-11 00:00:00 1215

转载 早鸟最后数小时:Linux的任督二脉之内存管理线上微信群直播报名(2018.1.29-2.2)

这是宋宝华老师《Linux的任督二脉:进程调度和内存管理》的第二脉,第一脉《打通Linux脉络系列:进程、线程和调度》的CSDN录播位于:http://edu.csdn.net/course/detail/5995本次内存管理直播,采用微信群形式。1.10是early bird报名价格的最后一天。相关阅读: 宋宝华:Linux的任督二脉——进程调度和内存管理直播时间: 2018.1.29-2.2,

2018-01-10 00:00:00 525

转载 早鸟最后一天:Linux的任督二脉之内存管理2018.1.29-2.2微信群直播报名

这是宋宝华老师《Linux的任督二脉:进程调度和内存管理》的第二脉,第一脉《打通Linux脉络系列:进程、线程和调度》的CSDN录播位于: http://edu.csdn.net/course/detail/5995本次内存管理直播,采用微信群形式。1.10是early bird报名价格的最后一天。直播时间: 2018.1.29-2.2,共五晚9点-10点。直播形式:微信群 图、语音、答疑模式(不

2018-01-09 00:00:00 1027 1

原创 宋宝华: 用代码切身实践体会meltdown漏洞

本文是我在Ubuntu 14.04上面进行的meltdown漏洞的亲测。meltdown漏洞,使得我们可以在用户空间读到内核空间的数据,做越权访问。我感觉每天YY看技术文章,而不去亲自试验,总是无法切身体会,因此我们来把它实例化,直接写代码看效果!本文暂时不涉及技术细节,只贴相关的代码。详细的原理,希望后面有机会再叙述。文章中涉及到的所有代码,我都放在了我的github上面:https://git

2018-01-08 00:00:00 4310 2

转载 关于最近的CPU漏洞:Reading privileged memory with a side-channel

转发自: https://googleprojectzero.blogspot.sg/2018/01/reading-privileged-memory-with-side.htmlWe have discovered that CPU data cache timing can be abused to efficiently leak information out of mis-specul

2018-01-07 00:00:00 782

转载 Gustavo Duarte: 内核怎么管理内存(how-the-kernel-manages-your-memory)

本文转发自:http://duartes.org/gustavo/blog/post/how-the-kernel-manages-your-memory/比较有特色的是文中画的图,非常清晰易懂。这篇文章讲了进程的虚拟地址空间,VSS(虚拟地址空间)和RSS(驻留的内存)的区别。After examining the virtual address layout of a process, we

2018-01-06 00:00:00 424

转载 Linux的任督二脉之内存管理线上微信群直播报名(2018.1.29-2.2)

这是宋宝华老师《Linux的任督二脉:进程调度和内存管理》的第二脉,第一脉《打通Linux脉络系列:进程、线程和调度》的CSDN录播位于: http://edu.csdn.net/course/detail/5995本次内存管理直播,采用微信群形式。直播时间: 2018.1.29-2.2,共五晚9点-10点。直播形式:微信群 图、语音、答疑模式(不断截屏贴图+动画+语音,有问题的童鞋随时群里提问)

2018-01-06 00:00:00 379

转载 《用github有效组织项目》2017.1.11晚线上直播报名

直播讲师:王玉成IoT GDE多年嵌入式开发经验,目前为国内的唯一的IoT GDE(Google Developer Experts),负责Android Things在国内的推广工作。直播时间:2018.1.11晚9-10点直播费用:69.9¥ (LEP项目组成员免费)直播平台:QQ群音、视频直播,分享桌面。报名方法:扫码加微信,注明参加github直播,发69.9红包,入微信群。

2018-01-05 00:00:00 360

转载 利用gcc的__attribute__编译属性section子项构建初始化函数表

本文转发自:https://my.oschina.net/u/180497/blog/177206它解决宋宝华上次在《C语言的面向对象(面向较大型软件)》ppt分享和ppt注解中提到的多模块软件的初始化的问题gcc的__attribute__编译属性有很多子项,用于改变作用对象的特性。这里讨论section子项的作用。__attribute__的section子项使用方式为:__attribute

2018-01-04 00:00:00 1050

原创 LEP(Linux Easy Profiling)2017年度颁奖典礼在西邮隆重举行

LEP(Linux Easy Profiling)是一个由宋宝华、徐西宁、陈松、张国强、鲍勃等联合发起,陈莉君教授Linux 3+1联合开发的开源可视化性能分析工具。项目网址:www.linuxep.com,github代码地址:github.com/linuxep2017年1月2日,LEP颁奖典礼在西邮Linux 3+1实验室隆重举行。2017年度最优秀开发者孟冉童鞋凭借对火焰图的支持,获得年度

2018-01-03 00:00:00 1452

转载 Linux的任督二脉之内存管理线上微信群直播报名(2018.1.29-2.2)

这是宋宝华老师《Linux的任督二脉:进程调度和内存管理》的第二脉,第一脉《打通Linux脉络系列:进程、线程和调度》的CSDN录播位于: http://edu.csdn.net/huiyiCourse/series_detail/60?utm_source=wx2本次内存管理直播,采用微信群形式。直播时间: 2018.1.29-2.2,共五晚9点-10点。直播形式:微信群 图、语音、答疑模式(不

2018-01-02 00:00:00 1135 1

原创 朱辉(茶水): Linux Kernel iowait 时间的代码原理

作者简介朱辉,个人主页 http://teawater.github.io/,微信公众号茶水侃山(cschatcs)。做过几年模拟器,做过几年GDB,在小米电视做过几年Linux内核优化,主要围绕MM。现在在HyperHQ当软件工程师。Linuxer祝所有用户新年快乐,感谢您对Linuxer在2017长情的陪伴。继续欢迎您给Linuxer投稿,赢取人民邮电任意在售技术图书:Linuxer-"Lin

2018-01-01 00:00:00 1971

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除