![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
jianyuanPC
这个作者很懒,什么都没留下…
展开
-
Linux内核系列设备模型(一) Kobject与Kset
1、Kobject Kobject是设备驱动模型的核心结构,它使所有设备在底层都有统一的接口。在内核注册的kobject对象都会对应sysfs文件系统中的一个目录(目录名称有Kobject结构中k_name指定) struct kobject { const char * k_name; // 指向设备名称的指针 char原创 2016-11-15 10:00:05 · 263 阅读 · 0 评论 -
Linux内核系列之Block块层(一)
.Block块层入口函数为 genhd_device_init(),先对该函数开始分析: 函数实现源码: static int __init genhd_device_init(void) { bdev_map = kobj_map_init(base_probe, &block_subsys_lock); blk_dev_init();原创 2016-11-15 09:59:51 · 764 阅读 · 0 评论 -
linux内核系列(一)编译安装Linux内核 2.6.18
1、配置环境 操作系统:CentOS 5.2 下载linux-2.6.18版本的内核,网址:http://www.kernel.org 说明:该编译文档适合2.6.18以上的Linux内核版本,只需所编译的 Linux内核版本不能低于Linux操作系统自身的内核版本,不然会遇到很多问题; 2、开始编译 cp ./ linux-2.6.原创 2016-11-15 09:59:31 · 1401 阅读 · 0 评论 -
linux内核系列(二)内核数据结构之链表
双向链表 传统链表与linu内核链表的区别图: 图一 图二 从上图中看出在传统链表中各种不同链表间没有通用性,因为各个数据域不同,而在linux内核中巧妙将链表结构内嵌到数据域结构中使得不同结构之间能连接起来; 链表的常用操作 内核中链表实现文件路径:include/linux/list.h 链表结构定义 stru原创 2016-11-15 09:59:25 · 243 阅读 · 0 评论