关闭

Linux阅码场

所属频道 嵌入式 公众号精选
  • ftrace学习笔记

    目录1.前言2.ARM64栈帧结构3.编译阶段3.1未开启ftrace时的blk_update_request3.2开启ftrace时的blk_update_request4.链接阶段4.1未开启ftrace时的blk_update_request4.2开启ftrace时的blk...

    嵌入式
    2021-08-19
    ce
  • 给老徐的书《软件自动化测试实战解析-基于Python3》写的序

    明代学者林希元有云:"自古圣贤之言学也,咸以躬行实践为先,识见言论次之",强调了实践是第一位的,而著书立说次之。唯有经过实践总结而成的书,方能对读者形成更强的指导意义。本书的作者,是一位长期奋战在编码一线的"老码农",他把他的多年实践经验,转化为了这样一本书,这不是一本空洞无物的...

  • 一个 JVM 解释器 bug 在 AArch64 平台导致应用崩溃的问题分析

    编者按:笔者遇到一个非常典型的问题,应用在X86正常运行,在AArch64上JVM就会崩溃。这个典型的JVM内部问题。笔者通过分析最终定位到是由于JVM中模板解释器代码存在bug导致在弱内存模型的平台上Crash。在分析过程中,涉及到非常多的JVM内部知识,比如对象头、GC复制算...

    嵌入式
    2021-08-19
    rc
  • Linux内核Page Cache和Buffer Cache关系及演化历史

    [注:转载自今日头条号"闪念基因"]在我们进行数据持久化,对文件内容进行落盘处理时,我们时常会使用fsync操作,该操作会将文件关联的脏页(dirtypage)数据(实际文件内容及元数据信息)一同写回磁盘。这里提到的脏页(dirtypage)即为页缓存(pagecache)。块缓...

    嵌入式
    2021-08-19
  • memory compaction原理、实现与分析

    作者简介赵金生,linux内核爱好者,就职于杭州某大型安防公司,担任LinuxBSP软件工程师。对进程调度,内存管理有所了解。希望能通过对linux的学习,提升产品软件性能及稳定性。该文章为私人学习总结,不存在公司网络安全问题。      一memorycompaction简介随...

    嵌入式
    2021-08-19
  • [留言送书]豆瓣评分 9.3,陪伴无数程序员成长的神作,终于升级了!

    要说C语言,那可真是编程语言里的老大哥了。大学时,很多人学习编程的时候都是从C语言上手的。经典的C教材是谭浩强老师编写的《C程序设计》,简直堪称一代人的回忆。但是理论派的教材并不适合所有人,甚至有的人会觉得枯燥。直到这本书的出现,一切慢慢豁然开朗了起来。这本被读者称为“近十年来最...

    嵌入式
    2021-08-19
  • 彻底的软件测试是可行的吗?

    有些软件的功能非常简单,比如简单的数学运算,或者统计用户输入字符的数量;有些软件的功能非常复杂,比如操作系统,或者汽车的自动驾驶算法等等。对于复杂的软件,因为它们极高的复杂度,我们很容易理解它们为什么很难“完美”,所以,强如微软,也会发生比尔·盖茨演示Windows98时蓝屏的尴...

    嵌入式
    2021-08-19
  • 谁为软件质量负责(背锅)?

    这是一个残酷的世界,无论我们多么努力,结果可能还是不如意。这一点,软件人深有体会,不管我们多么认真地编码,多么仔细地测试,仍然无法抵挡Bug顽强地冒出来。如果Bug被发布出去了,谁将为此背锅负责?谁失职谁负责!    --开发说测试团队的职责就是测试,保证软件产品质量,如果产品的...

    嵌入式
    2021-08-19
  • 近距离看GPU计算(3)

    在先前文章《近距离看GPU计算(2)》中,我们谈到现代GPU发展出SIMT(SingleInstructionMultipleThread)的执行结构,硬件线程池的线程们有相对独立的运行上下文,以Warp为单位分发到一组处理单元按SIMD的模式运行。这些Warp内的线程共享同样的...

    嵌入式
    2021-08-19
    GPU
  • 深入理解Linux内核之进程睡眠(上)

    1开场白环境:处理器架构:arm64内核源码:linux-5.10.50ubuntu版本:20.04.1代码阅读工具:vimctagscscope无论是任务处于用户态还是内核态,经常会因为等待某些事件而睡眠(可能是等待IO读写完成,也可能等待其他内核路径释放一把锁等)。本文来探讨...

    嵌入式
    2021-08-18
  • “不服跑个分?” 是噱头还是实力?

    一、背景:性能之战“不服跑个分”已经沦为手机行业的调侃用语,但是实话实说,在操作系统领域“跑分”确实是最重要的评价方式之一。比如Linux内核社区常常以跑分软件得分,来评价一个优化补丁的价值。甚至还有phoronix这样专注于Linux跑分的媒体。而且今天我还想说一点,让软件跑分...

    嵌入式
    2021-08-18
  • 宋宝华:slab在内核内存管理和用户态Memcached的双重存在

    很多基础的概念,将跨越软件的层次而存在。比如slab,对于内核人员,我们都知道slab是buddy之上的一层。因为buddy作为Linux内核最底层的内存管理器,它分配1页,2页,4页,2^n页,但是作为内核的堆用户本身,经常只是调用kmalloc()申请一个小内存,或者调用km...

  • memory compaction原理、实现与分析

    已经运行了一段时间的系统上会产生大量不连续的page, 要想找到高阶(high-order)条件的内存空间具有挑战性。

    嵌入式
    2021-07-13
  • 围绕HugeTLB的极致优化

    介绍以一种创新的方式优化 HugeTLB 对应的 struct page 内存占用。

    嵌入式
    2021-07-06
  • Linux内核页表管理-那些鲜为人知的秘密

    通用操作系统,通常都会开启mmu来支持虚拟内存管理,而页表管理是在虚拟内存管理中尤为重要,本文主要以回答几个页表管理中关键性问题来解析Linux内核页表管理,看一看页表管理中那些鲜为人知的秘密。