自定义博客皮肤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设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)进展同步更新

本博实时更新《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)的最新进展。 目前已经完成稿件。 2015年8月9日,china-pub开始上线预售: http://product.china-pub.com/4733972 2015...

2014-06-30 20:22:54 49559 118

原创 Linux阅码场 - Linux内核月报(2020年06月)

关于Linux内核月报Linux阅码场Linux阅码场内核月报栏目,是汇总当月Linux内核社区最重要的一线开发动态,方便读者们更容易跟踪Linux内核的最前沿发展动向。限于篇幅,只会对...

2020-07-09 11:52:34 43 0

转载 ASAN和HWASAN原理解析

由于虚拟机的存在,Android应用开发者们通常不用考虑内存访问相关的错误。而一旦我们深入到Native世界中,原本面容和善的内存便开始凶恶起来。这时,由于程序员写法不规范、逻辑疏漏而导...

2020-07-02 18:14:13 122 0

转载 ACPI几个关键概念汇总整理(英文)

ACPI几个关键概念整理,未翻译为中文,供需。SLITACPI System Locality Distance Information Table (SLIT): The relati...

2020-07-01 20:13:25 87 0

原创 CUDA 6中的统一内存模型

译者简介白嘉庆,西邮陈莉君教授门下研一学生。曾在华为西安研究所任C++开发一职,目前兴趣是学习Linux内核网络安全相关内容。原文来自:https://devblogs.nvidia.c...

2020-06-30 13:55:57 117 0

原创 Gigantic巨页与CMA的完全结合

Facebook的Roman Gushcin发送的这个patch把Gigantic巨页(SIZE:1GB)与CMA进行了一个完美的结合:https://lkml.org/lkml/202...

2020-06-27 08:51:10 99 0

原创 宋宝华: Linux为什么一定要copy_from_user ?

网上很多人提问为什么一定要copy_from_user,也有人解答。比如百度一下:但是这里面很多的解答没有回答到点子上,不能真正回答这个问题。我决定写篇文章正式回答一下这个问题,消除读者...

2020-06-24 07:51:07 201 0

转载 职业成长微习惯(一):随手记录工作日志

按:半瓦工作11年,工资涨了4,5倍;有快速成长,也有懈怠和跳坑;不舒服中逐渐看到了未来更多的可能性。想写几篇文章分享我的四个微习惯:随手记录工作日志,英语(关注信息来源和非母语资料),...

2020-06-22 08:28:00 126 0

原创 Linux TraceEvent - 我见过的史上最长宏定义

TraceEvent是内核中一种探测的机制,据说在不使能的时候是没有损耗的。据说使用起来挺简单,但是要看懂着实需要花些力气。例子从例子中学习,一般都是比较好的方法。内核开发者也比较nic...

2020-06-22 08:28:00 236 0

转载 进程内存管理初探

随着cpu技术发展,现在大部分移动设备、PC、服务器都已经使用上64bit的CPU,但是关于Linux内核的虚拟内存管理,还停留在历史的用户态与内核态虚拟内存3:1的观念中,导致在解决一...

2020-06-18 08:30:10 107 0

原创 火焰图:全局视野的Linux性能剖析

什么是火焰图火焰图(Flame Graph)是由Linux性能优化大师Brendan Gregg发明的,和所有其他的trace和profiling方法不同的是,Flame Graph以一...

2020-06-13 09:00:00 109 0

原创 揭露内核黑科技 - 热补丁技术真容

内核热补丁是一种无需重启操作系统,动态为内核打补丁的技术。系统管理员基于该技术,可以在不重启系统的情况下,修复内核BUG或安全漏洞,可以在最大程度上减少系统宕机时间,增加系统的可用性。一...

2020-06-12 08:24:58 111 0

原创 Linux pstore 实现自动“抓捕”内核崩溃日志

作者简介廖威雄,就职于珠海全志科技股份有限公司,负责Linux IO全栈研发、性能优化、开源社区开发交流、Linux 内核开源社区pstore/blk,mtdpstore模块的作者、大客...

2020-06-10 08:25:00 169 0

原创 火焰图系列之使用火焰图隐藏功能提高绘制精度

作者简介武汉光电国家研究中心DSAL实验室在读博士生。主要研究方向:Linux memory and storage system, Concurrency optimization.h...

2020-06-08 08:08:49 134 0

原创 嵌入式工程师的自我迭代之路

作者按笔者本科和研究生都是芯片专业,从研究生开始接触嵌入式软件,从学习linux到学习arm架构,再到学习Linux发行版,一步一步从工程师,架构师到项目经理。身边既有不少朋友从偏硬件的...

2020-06-07 11:07:59 151 0

原创 宋宝华: kvmalloc ——倚天剑屠龙刀两大神器合体?

你应该曾经纠结过是用kmalloc(),还是vmalloc()?现在你不用那么纠结了,因为内核里面现在有个API叫kvmalloc(),可以认为是kmalloc()和vmalloc()的...

2020-06-06 17:41:48 564 0

原创 混乱的Linux内核实时线程优先级

背景Linux会把进程分为普通进程和实时进程,普通进程采用CFS之类调度算法,而实时进程则是采用SCHED_FIFO或SCHED_RR。无论优先级高低,实时进程都会优先于SCHED_NO...

2020-06-04 08:26:00 132 0

转载 7大亮点功能上线!物联网操作系统一站式开发工具RT-Thread Studio来袭

RT-Thread Studio V1.1.0在5月29号正式发布了。本次V1.1.0不提供升级包,需从官网下载V1.1.0完整版安装程序。【官网下载地址】https://www.r...

2020-06-03 17:45:00 94 0

转载 劫持Linux idle进程做点自己的计算任务

前面谈过如何隐藏一个进程,我说过,隐藏procfs接口那无异于掩耳盗铃,正确的做法应该是将task_struct从任何链表中摘除,仅仅保留于run queue。但CPU利用率会暴露你隐藏...

2020-06-03 17:45:00 85 0

原创 深入理解C11/C++11内存模型

现代计算机体系结构上,CPU执行指令的速度远远大于CPU访问内存的速度,于是引入Cache机制来加速内存访问速度。除了Cache以外,分支预测和指令预取也在很大程度上提升了CPU的执行速...

2020-06-01 08:32:57 269 0

转载 Linux内核态缺页会发生什么 - 玩转Exception fixup表

近日,我在写内核模块的时候犯了一个低级错误:直接access用户态的内存而没有使用copy_to_user/copy_from_user!在内核看来,用户态提供的虚拟地址是不可信的,所以...

2020-05-25 17:38:47 151 0

转载 Intel IOMMU Introduction

对于Intel的硬件辅助虚拟化方案而言核心的两大技术分别是VT-x和VT-d。其中VT-x中主要引入了non-root模式(VMCS)以及EPT页表等技术,主要关注于vCPU的虚拟化和内...

2020-05-22 08:15:00 143 0

转载 谈谈内存压缩那些事

1. 技术背景说到压缩这个词,我们并不陌生,应该都能想到是降低占用空间,使同样的空间可以存放更多的东西,类似于我们平时常用的文件压缩,内存压缩同样也是为了节省内存。尽管当前androi...

2020-05-19 08:15:00 240 0

转载 Arm服务器芯片编年史

目录1 前言2 第一波浪潮(2008-2013)2.1 启程20082.1.1 Calxeda 20112.2 Computex20122.3 Marv...

2020-05-16 08:38:08 235 0

转载 Dynamic DMA mapping Guide

一、前言这是一篇指导驱动工程师如何使用DMA API的文档,为了方便理解,文档中给出了伪代码的例程。另外一篇文档dma-api.txt给出了相关API的简明描述,有兴趣也可以看看那一篇,...

2020-05-14 08:31:21 107 0

转载 Linux防止stack缓冲区溢出的有效方法

检测和防治stack缓冲区溢出的方法可谓是汗牛充栋,如果讲起来,那便是一个系列,我也不知道该从何说起。比如说stack-protector选项,我之前就介绍过:https://blog....

2020-05-13 08:21:00 143 0

转载 这些IO模型你都知道吗 - 五种常见IO模型介绍

面试的时候也许你被问到过IO模型,可能你知道有五种,可是却不一定能准确指出他们之间的关系,下面我们介绍下这五种IO模型五种IO模型阻塞IO非阻塞IOIO复用(select和poll)信号...

2020-05-10 17:24:39 157 0

原创 Linux Rootkit如何避开内核检测的

Rootkit在登堂入室并得手后,还要记得把门锁上。如果我们想注入一个Rootkit到内核,同时不想被侦测到,那么我们需要做的是精妙的隐藏,并保持低调静悄悄,这个话题我已经谈过了,诸如进...

2020-05-09 11:31:51 155 0

原创 打通IO栈:一次编译服务器性能优化实战

作者简介廖威雄,就职于珠海全志科技股份有限公司,负责Linux IO全栈研发、性能优化、开源社区开发交流、Linux 内核开源社区pstore/blk,mtdpstore模块的作者(与m...

2020-05-08 07:58:34 373 0

原创 理解Linux内核抢占模型(最透彻一篇)

本文原文地址:https://devarea.com/understanding-linux-kernel-preemption/#.XrKLcfnx05k作者:Liran B.H译者:...

2020-05-06 18:44:26 323 0

转载 LINUX网络子系统中DMA机制的实现

...

2020-05-02 19:17:27 300 0

转载 Linux下0号进程的前世(init_task进程)今生(idle进程)

前言Linux下有3个特殊的进程,idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2)* idle进程由系统自动创建, 运行在内核态idl...

2020-05-01 14:35:18 229 0

原创 Linux动态为内核添加新的系统调用

先来个满满的回忆:https://blog.csdn.net/dog250/article/details/64461922011年写这篇文章的时候,我的女儿小小还没有出生。评价一下这篇...

2020-04-29 08:08:00 243 1

转载 基于dpdk的用户态协议栈f-stack实现分析

本文来源:http://chinaunix.net/uid-28541347-id-5785780.htmlf-stack是腾讯基于dpdk开发的一套用户态协议栈,目前已经开源,相关介绍...

2020-04-27 08:30:45 249 0

转载 Linux环境下段错误的产生原因及调试方法小结

最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多、花费时间最长的问题就是著名的“段错误”(Segmenta...

2020-04-25 09:25:32 177 0

转载 CFS任务的负载均衡(框架篇)

我们描述负载均衡的系列文章一共三篇,第一篇是框架部分,即本文,主要描述了负载均衡相关的原理、场景和框架。后面的两篇是对均衡代码的情景分析,通过对load balance、task pla...

2020-04-23 07:36:42 146 0

原创 能感知功耗的Linux调度器(EAS)

译者简介 白嘉庆,西邮陈莉君教授门下研一学生。曾在华为西安研究所任C++开发一职,目前兴趣是学习Linux内核网络安全相关内容。本文的翻译宋宝华老师指导审阅。序2014年Linux内核峰...

2020-04-21 07:00:15 306 0

转载 紫藤花开

紫藤挂云木,花蔓宜阳春。密叶隐歌鸟,香风留美人。又是一年紫藤花开多情的季节坐在藤架下,看那紫中带蓝,灿若云霞的花穗如精灵般,随风摇曳。不经意间,轻轻拨动了思念的弦,让那个记忆深处的女孩在...

2020-04-20 07:21:21 190 0

转载 Linux内核快速处理路径尽量多用kmem_cache而慎用kmalloc

题目是一个典型 《Effective C++》 的风格。事情是这样的,我大致说一下。我在开发一个Netfilter模块,在PREROUTING匹配一些数据包,显而易见,都能想到使用哈希表...

2020-04-19 08:58:53 130 0

转载 早鸟今晚8点结束:《Android进程生命周期全解析》在线课程

课程简介 也许你已学习Android应用开发多年,却从未意识到Android应用背后也存在着一整套进程的运作机制?你是否还下意识地认为,Activity的onCreate()函数就等于应...

2020-04-18 08:27:10 135 0

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