内核
文章平均质量分 84
享乐主
但行好事,莫问前程
展开
-
MMIO内存模拟原理
本文借助dpdk的测试demo testpmd,来分析QEMU/KVM如何模拟MMIO类型的内存。原创 2022-02-28 21:02:13 · 5483 阅读 · 0 评论 -
QEMU Device Tree —— 传递流程
设备树是嵌入式设备上bootloader传递给linux内核的硬件描述。本系列文章主要分析QEMU在模拟arm架构虚拟机时设备树的生成,加载原理。本章主要描述设备树的使用流程,讨论qemu如何将生成的dtb传递给kernel原创 2020-09-18 22:13:25 · 5301 阅读 · 0 评论 -
QEMU Device Tree —— 基础规范
设备树是嵌入式设备上bootloader传递给linux内核的硬件描述。本系列文章主要分析QEMU在模拟arm架构虚拟机时设备树的生成,加载,解析原理。本章主要描述设备树的基本概念和规范原创 2020-09-06 08:51:20 · 3549 阅读 · 0 评论 -
AMD GPU任务调度(3) —— fence机制
本系列文章针对AMD Radeon Pro WX 5100 GPU,分析其用户态驱动实现和内核态驱动调度框架与原理,本章分析fence同步机制原创 2020-06-23 21:08:24 · 15174 阅读 · 2 评论 -
workqueue浅析
本文主要介绍早期内核版本的工作队列实现原创 2020-05-17 12:30:02 · 900 阅读 · 0 评论 -
Linux O(N)调度器实现浅析
主要介绍O(N)调度器的实现原理原创 2020-05-15 18:22:20 · 759 阅读 · 0 评论 -
qemu中的eventfd——ioeventfd
主要介绍eventfd在qemu中的应用原创 2020-04-19 17:28:57 · 3236 阅读 · 0 评论 -
SRCU的内核简单实现
分析一个内核srcu锁的简单实现版本原创 2020-02-19 22:53:01 · 2217 阅读 · 0 评论 -
qemu中的eventfd——用法与原理
主要介绍eventfd机制,包括用户态的用法和内核态的实现原理原创 2019-12-30 22:54:53 · 3090 阅读 · 0 评论 -
VirtIO实现原理——virtblk设备初始化
本文以virtio-blk为例,介绍virtio设备在前端的初始化流程,以及后端相应的流程分析。对virtio-blk设备feature的配置以及应用在另一篇文章中介绍。原创 2019-12-25 23:22:38 · 11313 阅读 · 0 评论 -
VirtIO实现原理——PCI基础
virtio设备可以基于不同总线来实现,本文主要介绍基于pci的实现,virtio-pci设备。以virtio-blk为例,首先介绍virtio设备的配置空间内容,之后介绍为实现virtio-pci设备,在pci配置空间基础上增加的capability的内容,然后介绍virtio-blk规定的配置空间内容,最后介绍virtio设备的初始化和vring环初始化和使用。原创 2019-12-20 00:19:40 · 17213 阅读 · 20 评论 -
KVM中断注入机制
X86平台内核对QEMU下发的中断处理大致分三部分:查路由表,递交IO到中断控制器直至LAPIC,寄存器注入。第一部分路由中断在前一章已经介绍,中断向量的传递涉及到8259中断控制器的模拟,IOAPIC中断控制器模拟和LAPIC控制器的模拟,本文首先根据控制器手册分析其工作原理,然后介绍其软件模拟的实现,和中断流程的模拟原创 2019-12-10 22:18:08 · 4610 阅读 · 1 评论 -
KVM中断控制器模拟
本文以虚拟机关机为例,试图描述arm虚拟化整个中断框架和流程。KVM流程本文主要分析中断的路由过程和初始化配置原创 2019-12-02 01:35:34 · 1602 阅读 · 2 评论 -
重新认识Intel任务切换(二)
Intel TSS设计初衷是为任务调度提供硬件级支持,但Linux并没完全遵照Intel设计思想实现其任务调度。本文希望实验对比Intel TSS任务调度和Linux内核进程调度差异,加深对Linux进程调度的理解。第一章是Intel任务切换分析和实验,第二章是Linux内核进程调度分析和实验。原创 2019-04-14 02:11:07 · 740 阅读 · 0 评论 -
cgroup从入门到懵圈——cgroup使用举例
1 基本用法 通过cgroup虚拟文件系统可以创建,修改,使用cgroup。 挂载一个关联所有子系统的cgroup 层级树可以使用以下命令: mount -t cgroup xxx /sys/fs/cgroup xxx不会被cgroup的代码处理,但是会呈现到/proc/mounts或者mount命令输出中。 注意:有些子系统在用户配置之前...原创 2018-06-27 15:41:47 · 11096 阅读 · 1 评论