PCI驱动框架分析

PCI 分析流程: 硬件文档 PCI框架核心层 PCI框架热插拔 vfio iommu vfio接口层与用户态使用cloud-hypervisor 一共十一万行代码。 从ACP

kdump工作机制分析

kdumpctl kdumpctl是一个shell脚本,用于查看当前kdump的状态和进行kdump相关操作。kdumpctl的入口是main函数,从中可以

Linux设备模型:kobject与uevent

kobject 1 2 3 4 5 6 7 struct kobj_type { void (*release)(struct kobject *kobj); const struct sysfs_ops *sysfs_ops; struct attribute **default_attrs; const struct kobj_ns_type_operations *(*child_ns_type)(struct kobject *kobj); const void *(*namespace)(struct kobject *kobj); }; 1 2 3 4 5 6 7 8 struct kobj_ns_type_operations { enum kobj_ns_type type; bool (*current_may_mount)(void); void *(*grab_current_ns)(void); const void *(*netlink_ns)(struct sock *sk); const void *(*initial_ns)(void); void (*drop_ns)(void *); }; 1 2 3 4 5 6

USB Hub驱动分析

USB hub框架分析 USB hub框架是usbcore模块里的一个大头5000行代码(5分之一)。同时,USB hub本身在USB协议中又是一个非常重要

inode权限检查

inode_permission函数 inode_permission函数用于对inode进行权限检查,我们传给其一个mask参数,这个参数是

eventfd在内核中的实现

eventfd是一个利用匿名文件描述符实现“等待/通知”通信机制的一种方式。它比较方便的一点是,eventfd不仅可以实现用户态与用户态之间

Floyd循环检测算法

循环检测问题 在研究抽象代数的时候,很多教材都是从欧拉研究的循环群入手的,比如这本《Advanced Modern Algebra》。 当然,直接讨论数学有些