宋宝华:谈一谈Linux写时拷贝(COW)的安全漏洞(1) 宋宝华 2 years 10 months ago COW技术,爆出了巨大的漏洞,让父子进程间可以向对方泄露写过的新数据,成为了Linux内核的惊天大瓜。 21cnbao
CPU漏洞详解 宋宝华 3 years 1 month ago 1. 导言性能测试对于 Linux 发行版来说至关重要,Alibaba Cloud Linux 2 也是如此。(Alibaba Cloud Linux 2 是阿里巴巴操作系统团队推出的一款... 21cnbao
什么时候需要cpu_relax()锁 宋宝华 3 years 2 months ago 一个最典型的要使用pu_relax()锁的场景是忙等待(也就是死循环等一个事情的发生),在内核里面有大量的代码,比如等寄存器状态:比如做延迟:简单来说,你如果在内核里面写了忙等待的代码,都... 21cnbao
宋宝华:为了不忘却的纪念,评Linux 5.13内核 宋宝华 3 years 2 months ago Linux 5.14于14小时之前发布了,而我5.13的总结还没有写出,我早觉得有写一点东西的必要了,这虽然于搬砖的码农毫不相干,但在追求进步的工程师那里,却大抵只能如此而已。为了不忘却的... 21cnbao
深入理解Linux内核之进程睡眠(下) 宋宝华 3 years 3 months ago 4.用户态睡眠以sleep为例来说明任务在用户态是如何睡眠的。首先我们通过strace工具来看下其调用的系统调用:$stracesleep1 ... close(3)... 21cnbao
深入理解Linux内核之进程睡眠(上) 宋宝华 3 years 3 months ago 1开场白环境:处理器架构:arm64内核源码:linux-5.10.50ubuntu版本:20.04.1代码阅读工具:vim+ctags+cscope无论是任务处于用户态还是内核态,经常会... 21cnbao
谁为软件质量负责(背锅)? 宋宝华 3 years 3 months ago 这是一个残酷的世界,无论我们多么努力,结果可能还是不如意。这一点,软件人深有体会,不管我们多么认真地编码,多么仔细地测试,仍然无法抵挡Bug顽强地冒出来。如果Bug被发布出去了,谁将为此背... 21cnbao
近距离看GPU计算(3) 宋宝华 3 years 3 months ago 在先前文章《近距离看GPU计算(2)》中,我们谈到现代GPU发展出SIMT(Single Instruction Multiple Thread)的执行结构,硬件线程池的线程们有相对独立的... 21cnbao
宋宝华:slab在内核内存管理和用户态Memcached的双重存在 宋宝华 3 years 3 months ago 很多基础的概念,将跨越软件的层次而存在。比如slab,对于内核人员,我们都知道slab是buddy之上的一层。因为buddy作为Linux内核最底层的内存管理器,它分配1页,2页,4页,2... 21cnbao
给老徐的书《软件自动化测试实战解析-基于Python3》写的序 宋宝华 3 years 3 months ago 明代学者林希元有云:"自古圣贤之言学也,咸以躬行实践为先,识见言论次之",强调了实践是第一位的,而著书立说次之。唯有经过实践总结而成的书,方能对读者形成更强的指导意义。本书... 21cnbao
老徐自述:《软件自动化测试实战解析_基于Python3编程语言》 宋宝华 3 years 3 months ago 去年的时候,当我和身边一些朋友透露写书的想法时,有3位朋友以为我要写游记,另外至少有3位更不靠谱的朋友认为我要写段子。虽然我写过游记,也经常发段子(只为博身边的朋友们贱笑),还时不时分享辅... 21cnbao
再谈GPU的内存带宽 宋宝华 3 years 3 months ago 在先前的文章中《近距离看GPU计算(2)》,我们谈到GPU相比CPU有更大的内存带宽,此言不虚,这也是众核GPU有源源不断数据弹药供给,能够发挥强大算力的主要原因。如下表所示(GDDR和H... 21cnbao
Linux内核网络udp数据包发送(二)——UDP协议层分析 宋宝华 3 years 3 months ago 1. 前言本文分享了Linux内核网络数据包发送在UDP协议层的处理,主要分析了udp_sendmsg和udp_send_skb函数,并分享了UDP层的数据统计和监控以及socket发送队... 21cnbao
Linux内核网络UDP数据包发送(四)——Linux netdevice 子系统 宋宝华 3 years 3 months ago Linux内核网络UDP数据包发送系列:Linux内核网络UDP数据包发送(一)Linux内核网络UDP数据包发送(二)——UDP协议层分析Linux内核网络UDP数据包发送(三)——IP... 21cnbao
Linux内核网络UDP数据包发送(三)——IP协议层分析 宋宝华 3 years 3 months ago 1. 前言Linux内核网络 UDP 协议层通过调用ip_send_skb将 skb 交给 IP 协议层,本文通过分析内核 IP 协议层的关键函数来分享内核数据包发送在 IP 协议层的... 21cnbao
Linux内核网络udp数据包发送(一) 宋宝华 3 years 3 months ago 本系列文章1-4,来源于陈莉君老师公众号“Linux内核之旅”1. 前言本文首先从宏观上概述了数据包发送的流程,接着分析了协议层注册进内核以及被socket的过程,最后介绍了通过 sock... 21cnbao
从前的日子很慢 宋宝华 3 years 3 months ago 从前的日子很慢车,马,邮件都慢一生只够爱一个人从前的日子很慢鲁磨路的房子,八百一平所有人都感叹,好贵从前的日子很慢西三门外的录像厅,整夜放着VCD传来阵阵,“老板换碟”从前的日子很慢在宿舍... 21cnbao
FUTEX_SWAP补丁分析-SwitchTo 如何大幅度提升切换性能? 宋宝华 3 years 4 months ago 作者简介胡哲宁,西安邮电大学计算机科学与技术专业大二学生。Google SwitchTo由于协程本身对操作系统的不可见性,协程中出现的 BUG 往往不能通过一些已有的工具去排查。在谷歌内部... 21cnbao
近距离看GPU计算(2) 宋宝华 3 years 4 months ago 在《近距离看GPU计算》系列第一篇里我们介绍了GPU的一些基础知识及其如何从图形加速设备演化到通用计算平台。本文我们会具体从处理单元设计和存储层次结构两个方面探讨GPU不同于CPU的特点,... 21cnbao