简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
了解通知链(notifier chain)。1.通知链(notifier chain) notifier chain在Linux kernel中被用来实现不同的subsystem之间的通信。简单来说,notifier chain是一个存储了某个事件对应的回调函数的列表。每个notifier chain都和特定的事件相关,当发出事件通知的时候,会触发对应的回调函数来处理该事件。 四种不...
中断虚拟化1.X86 中断 中断从设备发送到CPU需要经过中断控制器,现代x86架构采用的中断控制器被称为APIC(Advanced Programmable Interrupt Controller)。APIC是伴随多核处理器产生的,所有的核共用一个I/O APIC,用于统一接收来自外部I/O设备的中断,而后根据软件的设定,格式化出一条包含该中断所有信息的Interrupt Message,发
了解进程内存描述符mm_struct1.概述 每个进程都只有一个mm_struct结构,该结构是对整个用户空间的描述。一个进程的虚拟地址空间主要由两个数据结来描述。最高层次的:mm_struct,描述一个进程的整个虚拟地址空间。较高层次的:vm_area_structs,描述虚拟地址空间的一个区间(简称虚拟区)。内存管理大致结构:2.mm_struct 结构体 task...
学习Linux Kernel image in different forms1.内核镜像介绍 一般来说,一个可启动的内核镜像 (bootable kernel image) 是经过 zlib 算法压缩的,2.6.30 之后采用 LZMA 或者 BZIP2,vmlinuz 最后的 z 表示内核是压缩的,这也意味着内核中会有一段解压程序。 内核中包含了各种内核镜像的格式,如 vmlin...
了解IRQ Domain1.概述 Linux kernel使用如下两个ID来标识一个来自外设的中断:IRQ number,CPU需要为每一个外设中断编号,即IRQ Number。这个IRQ number是一个虚拟的interrupt ID,和硬件无关,仅仅是被CPU用来标识一个外设中断。HW interrupt ID,对于interrupt controller而言,它收集了...
了解plymouth.1.概述Linux distributions:Bootsplash – the first and original implementation of a Linux kernel bootsplash, superseded by Splashy[2]fbsplash – Gentoo implementation as bootsplash program[3]Ply
了解LTP 测试工具1.概述 LTP(LinuxTest Project)是SGI、IBM、OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。该工具的目的是通过把测试自动化引入到Linux内核测试,提高Linux的内核质量。LTP提供了验证linux系统稳定性的标准,设计标准
了解drm 基本概念1.Direct Rendering Manager The Direct Rendering Manager (DRM) is a subsystem of the Linux kernel responsible for interfacing with GPUs of modern video cards. DRM exposes an API that user-sp
了解ALSA架构1.概述 ALSA 是一个完全开放源码的音频驱动程序集,是由志愿者维护的开源项目,而 OSS 则是由公司提供的商业产品。ALSA 系统包括驱动包alsa-driver(集成在内核源码),开发包 alsa-libs,开发包插件 alsalibplugins,设置管理工具包 alsa-utils,其他声音相关处理小程序包alsa-tools,特殊音频固件支持包 alsa-fi...
了解u-boot spl代码流程.1.u-boot spl 来源 现在很多处理器都内置一个BOOT ROM,执行部分初始化,并可从各种外设和存储器中加载程序并执行,BOOT ROM中固化的程序被称为一级程序加载器,被它加载的程序就称为二级程序加载器(secondary program loader,即SPL)。其实u-boot本身就可以作为二级程序加载器,但不幸的是一般BOOT ROM之...