随笔分类 - Linux misc
摘要:. the definition location of struct page include/linux/mm-types.h
阅读全文
摘要:内核源码说明文档 Documentation\sysrq.txt 立即重新启动计算机 echo "b" > /proc/sysrq-trigger 立即关闭计算机 echo "o" > /proc/sysrq-trigger 导出内存分配的信息 (可以用/var/log/message 查看) ec
阅读全文
摘要:目录: 《Linux中断管理》 《Linux中断管理 (1)Linux中断管理机制》 《Linux中断管理 (2)软中断和tasklet》 《Linux中断管理 (3)workqueue工作队列》 关键词:GIC、IAR、EOI、SGI/PPI/SPI、中断映射、中断异常向量、中断上下文、内核中断线
阅读全文
摘要:一、什么是任务冻结 任务冻结是在系统休眠(hibernation)或者全系统睡眠(system-wide suspend)过程中用户态进程和部分内核线程的控制机制。 二、为什么需要进程冻结 1. 防止系统休眠或者睡眠后,文件系统损坏;如果没有冻结进程,在系统suspend过程中,还有进程在对文件系统
阅读全文
摘要:linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。 Linux进程状态:R (TASK_RUNNING),可执行状态。 只有在该状态的进程才可能在CPU上运行。而同一时刻可能有多个进程处于可执行状态,这些进程的task_struc
阅读全文
摘要:Linux系统进程状态 PROCESS STATE CODES Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to desc
阅读全文
摘要:内核中的管理区 内核中定义了如下一些管理区zone: enum zone_type { #ifdef CONFIG_ZONE_DMA /* * ZONE_DMA is used when there are devices that are not able * to do DMA to all o
阅读全文
摘要:RSS 是常驻内存集(Resident Set Size),表示该进程分配的内存大小。 RSS 不包括进入交换分区的内存。 RSS 包括共享库占用的内存(只要共享库在内存中) RSS 包括所有分配的栈内存和堆内存。 VSZ 表示进程分配的虚拟内存。 VSZ 包括进程可以访问的所有内存,包括进入交换分
阅读全文
摘要:[ 494.755726][ C0] BUG: KASAN: use-after-free in collect_expired_timers+0x174/0x1d8 [ 494.758452][ C0] Write of size 8 at addr ffff800068868538 by tas
阅读全文
摘要:1.2.3.3 Linux进程状态说明/* Used in tsk->state: */ define TASK_RUNNING 0define TASK_INTERRUPTIBLE 1define TASK_UNINTERRUPTIBLE 2define __TASK_STOPPED 4defin
阅读全文
摘要:本文是为那些希望非常深层次的理解RCU的骨灰级黑客准备的。这些黑客应当首先阅读《深入理解RCU》系列文章的第1~6篇。骨灰级代码狂也可能有兴趣直接看看本文。 本文分别描述如下内容: 1、数据结构和内核参数 2、外部函数接口 3、初始化过程 4、CPU热插拨接口 5、一些杂项函数 6、优雅周期检测机制
阅读全文
摘要:ng-4.log: [2019/10/18 10:31:50] [ 360.742956] INFO: rcu_preempt detected stalls on CPUs/tasks: [2019/10/18 10:31:50] [r data: Addr failu r 360.743000e
阅读全文
摘要:结构如下图所示: hlist_head结构体只有一个域,即first。 first指针指向该hlist链表的第一个节点。hlist_node结构体有两个域,next 和pprev。 next指针很容易理解,它指向下个hlist_node结点,倘若该节点是链表的最后一个节点,next指向NULL。pp
阅读全文
摘要:/proc/meminfo是了解Linux系统内存使用状况的主要接口,我们最常用的”free”、”vmstat”等命令就是通过它获取数据的 ,/proc/meminfo所包含的信息比”free”等命令要丰富得多,然而真正理解它并不容易,比如我们知道”Cached”统计的是文件缓存页,manpage上
阅读全文
摘要:用户态和内核态的划分 内存管理信息: task_struct 的 mm_struct 中 整个虚拟内存空间: 1)是用户态地址空间 2)是内核态地址空间 那这两部分的分界线在哪里呢?这就要 task_size 来定义 1 #ifdef CONFIG_X86_32 2 /* 3 * User spac
阅读全文
摘要:使用内存区别 rss 属于进程的数据,如 Stacks、Heaps 等。可以被进一步分解为 活动内存(active_anon) 非活动内存(inactive_anon) 必要时,非活动内存可以被交换到磁盘 cache 缓存存储器存储当前保存在内存中的磁盘数据。可以进一步分解为 活动内存(active
阅读全文
摘要:Chapter 3 Page Table Management Linux layers the machine independent/dependent layer in an unusual manner in comparison to other operating systems [CP
阅读全文
摘要:An introduction to compound pages Your editor was digging through a patch set that makes changes involving compound pages when he realized that his un
阅读全文
摘要:最后一级的页表项不仅仅包含了指向页的内存地址的指针,它也包含了页的一些特定信息,这些信息是附加在多余的比特位上的,不过这些信息是特定于CPU的。下面来看看这些位的意义: _PAGE_PRESENT 指定了虚拟内存页是否存在于内存之中,这个之前的pte_present函数里有使用 _PAGE_ACCE
阅读全文
摘要:14.172 Virtual Memory Management, Page Table, Prefix Addressing https://www.youtube.com/watch?v=WxYiXDSyiZ0 Linux分页机制之分页机制的实现详解--Linux内存管理(八) https://
阅读全文