06 Linux 设备驱动模型

1、Overview

Linux-2.6 引入的新的设备管理机制 - kobject

  • 降低设备多样性带来的 Linux 驱动开发的复杂度,以及设备热拔插处理、电源管理等
  • 将硬件设备归纳、分类,然后抽象出一套标准的数据结构和接口
  • 驱动的开发,就简化为对内核所规定的数据结构的填充和实现
  • 驱动模型是 Linux 内核引入面向对象思想的一次完美尝试

Bus、class、device、device_driver

[图片]

上面这个图要表达的最重要的点,是所有的设备都要挂在 bus 上,没有所谓的单独的设备,这一点是 Linux kernel 统一设备驱动模型最关键的点,也是和单片机开发不一样的地方。

硬件拓扑描述 Linux 设备模型中四个重要概念中三个:Bus,Class 和 Device(第四个为 Device Driver)。

  • Bus(总线):Linux 认为总线是 CPU 和一个或多个设备之间信息交互的通道。而为了方便设备模型的抽象,所有的设备都应连接到总线上(无论是 CPU 内部总线、虚拟的总线还是“platform Bus”)。

  • Class(分类):在 Linux 设备模型中,Class 的概念非常类似面向对象程序设计中的 Class(类),它主要是集合具有【相似功能或属性】的设备,这样就可以【抽象出一套可以在多个设备之

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/347691.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Three.js】知识梳理十:Three.js纹理贴图

1. 纹理贴图 在Three.js中,纹理贴图是一种将二维图像贴到三维物体表面的技术,以增强物体的视觉表现。纹理贴图可以使物体表面更加真实、细腻,为场景增色不少。 在Three.js中,纹理贴图的加载主要通过THREE.TextureLoader类实现。…

【C++ | 左值、右值】一文了解C++的左值、右值、左值引用()、右值引用()

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-06-12 1…

CSS真题合集(一)

CSS真题合集(一) 1. 盒子模型1.1 盒子模型的基本组成1.2 盒子模型的实际大小1.3 盒子模型的两种类型1.4 设置盒子模型1.5 弹性盒子模型 2. BFC2.1 主要用途2.2 触发BFC的方法2.2 解决外边距的塌陷问题(垂直塌陷) 3. 响应式布局3.1…

LWIP移植

目录 前言一、以太网协议简介1.1 TCP/IP协议简介1.2 STM32的ETH外设1.2.1 MAC子层1.2.2 SMI站管理接口1.2.3 MII和RMII接口 1.3 外部PHY芯片LAN87201.3.1 LAN8720 中断管理1.3.2 PHY 地址设置1.3.3 nINT/REFCLKO 配置1.3.4 LAN8720 内部寄存器 1.4 LWIP 简介 二、带操作系统的移…

pxe批量部署linux介绍

1、PXE批量部署的作用及必要性: 1)智能实现操作系统的批量安装(无人值守安装)2)减少管理员工作,提高工作效率3)可以定制操作系统的安装流程a.标准流程定制(ks.cfg)b.自定义流程定制(ks.cfg(%pos…

北京医院共享轮椅小程序开发更贴心,更便捷

在大数据不断发展的今天,资源共享已随处可见,小到共享充电宝,共享雨伞,大到共享单车,汽车。这些常用资源的共享,充分实现了有限资源的最大化利用。 如今,众多北京医院,也结合自身实…

15.RedHat认证-Ansible自动化运维(上)

15.RedHat认证-Ansible自动化运维(上) RHCE8-RH294 Ansible自动化(Ansible版本是2.8.2) Ansible介绍 1.Ansible是什么? Ansible是一个简单的强大的无代理的自动化运维工具(Ansible是自动化运维工具)Ansible特点 简…

Anconda安装

参考: centos7篇---安装anaconda_centos7安装anaconda-CSDN博客 CentOS 7 上安装 Anaconda_centos安装conda-CSDN博客 CentOS7 安装Anaconda 的步骤_centos7安装anaconda-CSDN博客 centos7 如何安装与使用 Anaconda - 码农教程 下载 wget命令 wget https://repo.anaconda…

springboot+minio+kkfileview实现文件的在线预览

在原来的文章中已经讲述过springbootminio的开发过程,这里不做讲述。 原文章地址: https://blog.csdn.net/qq_39990869/article/details/131598884?spm1001.2014.3001.5501 如果你的项目只是需要在线预览图片或者视频那么可以使用minio自己的预览地址进…

Linux Ext2/3/4文件系统

文章目录 前言一、Linux文件系统简介1.1 简介1.2 Linux File System Structure1.3 Directory Structure 二、Ext2/3/4文件系统2.1 Minix2.2 EXT2.3 EXT22.4 EXT32.5 EXT4 三、EXT Inode参考资料 前言 这篇文章介绍了Linux文件系统的一些基础知识:Linux 文件系统简介…

推荐网站(22)GeoSpy,根据图片显示地理位置

今天推荐一款名为GeoSpy的AI工具。它利用人工智能技术,通过分析照片中的光线、植被、建筑风格等细节线索,实现对拍摄地点的精确定位。令人难以置信的是,它对位置的定位准确度非常高。 GeoSpy之所以智能如此,是因为它将输入的照片与大量的街景和地理图像…

【LLM】度小满金融大模型技术创新与应用探索

note 从通用大模型到金融大模型金融大模型的训练技术创新金融大模型的评测方法创新金融大模型的应用实践创新总结:金融大模型迭代路径 一、轩辕大模型 二、垂直大模型训练 1. 数据准备 数据质量是模型效果的保障。首先数据要丰富,这是必备的条件。我们…

YASKAWA机器人HW1171921-B电缆维修

安川机器人作为现代工业自动化的重要设备,其稳定运行对于生产线的连续性和效率至关重要。然而,随着使用时间的增长,可能会出现各种YASKAWA机器人本体线缆故障,如断线、短路、接触不良等。 一、安川工业机器人电缆维修前的准备 在进…

大模型的现状与未来:探索腾讯元宝APP及其他AIGC产品

前言 随着近日腾讯元宝APP的正式上线,国内大模型产品又添一员。近年来,随着人工智能技术的快速发展,AIGC(AI生成内容)产品逐渐成为技术与商业应用的热点。各大互联网厂商纷纷推出自己的大模型产品,以期在这…

疑惑...2024年是不是转行AI产品经理的好时机?

前言 这两年AI突然“火起来” 了 ,算是出现了一个“大转折”。 因为就在这2年里,全球所有“大厂”几乎同一时间挤破头在跟进AI技术,从ChatGPT发布,到谷歌、Facebook、亚马逊等都紧跟其后,再到国内百度、腾讯、阿里、…

蓝牙芯片TD5322A,蓝牙5.1数传芯片介绍—拓达半导体

蓝牙芯片原厂,拓达芯片TD5322A是一颗支持蓝牙BLE和SPP的数传芯片,蓝牙5.1版本。芯片的优点是尺寸小(SOP-8封装),性能强,价格低,以及简单明了的透传和串口AT控制功能,大大降低了在其它电子产品中…

C++学习笔记(23)——二叉树进阶

系列文章 http://t.csdnimg.cn/QDR3y 目录 系列文章[TOC](目录) 1. 二叉树的优势2. 二叉搜索树概念3. 二叉搜索树操作1. 二叉搜索树的查找2. 二叉搜索树的插入——地址链接重设3. 二叉搜索树的删除——地址链接重设 4. 二叉搜索树的应用——以key为载体,承载复杂信…

在矩池云使用GLM-4的详细指南(无感连GitHubHuggingFace)

GLM-4-9B 是智谱 AI 推出的最新一代预训练模型 GLM-4 系列中的开源版本,在多项测试中表现出超越已有同等规模开源模型的性能,它能兼顾多轮对话、网页浏览、代码执行、多语言、长文本推理等多种功能,性能更加强大。其多模态语言模型GLM-4V-9B在…

生产环境部署meilisearch(Running a self-hosted Meilisearch project in production)

官网的第一手资料学新技术:meilisearch官方文档 安装的官网地址:meilisearch安装的官网 部署在生产环境的指导:meilisearch部署在生产环境的指导 Elasticsearch 做为老牌搜索引擎,功能基本满足,但复杂,重…

vscode软件上安装 Fitten Code插件及使用

一. 简介 前面几篇文章学习了 Pycharm开发工具上安装 Fitten Code插件,以及 Fitten Code插件的使用。 Fitten Code插件是是一款由非十大模型驱动的 AI 编程助手,它可以自动生成代码,提升开发效率,帮您调试 Bug,节省…