驱动?Linux驱动?到底什么是驱动?
目录
0. 前言
1. 驱动
2. Linux驱动开发
3. 总结
0. 前言
最近工作了,哪有什么尽如人意?我们需要做的就是自我救赎。一切都是自己选的。多问就行了,心里想到什么就去问什么,就去说什么,就去做什么,这就是积累经验。不能犹豫,我发现犹豫是最害人的。当然,你要是没有这个概念,那这一条对你是没有效果的。
分享一首歌,短视屏上面听到一首,虽然我也不刷什么dy之类的。DISCO——金润吉。挺有节奏感的。
1. 驱动
以下来自百度百科:
驱动,计算机软件术语,是指驱动计算机里软件的程序。驱动程序全称设备驱动程序,是添加到操作系统中的特殊程序,其中包含有关硬件设备的信息。此信息能够使计算机与相应的设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。
其实在嵌入式里,所谓的驱动无非也就是驱使硬件动起来的软件程序。
我们平时说的驱动(嵌入式里),应该是指的是裸机驱动程序。
裸机驱动开发是非常底层的,跟寄存器打交道,有些MCU为了方便我们开发,提供了一些库,让我们通过调用API函数来间接的实现利用寄存器来控制我们的裸机外设;
这样一听好像是我们平时用所谓的STM32F103C8T6,然后加上Keil,这样是不是驱动开发呢?是但又不完全是。我现在的理解是我们在学校做的这些只是什么?顶多算是控制程序?!!!差不多吧。那真正的驱动程序是什么?针对某一硬件特地编写的相关程序。这样说好像还是和裸机开发一样,但是你要清楚,工作(对,可能是我站在工作的角度去思考,我们做出来的是一个产品,我们所使用的的硬件都是自己设计,我们要根据这个硬件去编写对应他的程序,这才是驱动开发)。其实也是在裸机开发的基础上。
2. Linux驱动开发
加上Linux自然少不了带有操作系统的驱动,这个就很好理解。Linux驱动来直接操作寄存器是不现实的;Linux驱动开发需要做的是:根据Linux的驱动框架来进行开发,也就是需要掌握各种Linux驱动框架;Linux驱动最终表现为:/dev/***文件(Linux下一切皆文件)。能够打开,关闭,读写等操作;
现在的内核支持设备树,是一个.dts文件,此文件描述了板子上的所有硬件设备信息。我们可以把驱动程序加载到内核,内核通过设备树和硬件进行交流(这里面的详细信息我后面会写篇博客详细说明,我也在学习ing)。
Linux驱动开发分为3大类:
字符设备驱动:占比最多。见我的博客Linux驱动——字符驱动
块设备驱动:存储
网络设备驱动:网络
后面我也会讲别的驱动开发,敬请期待。
感谢该博主
3. 总结
一直在学习,
学习不间断,
共同进步。
驱动?Linux驱动?到底什么是驱动?相关推荐
- linux下磁盘控制器无法驱动,Linux eMMC子系统之主机控制器驱动(host conntroller driver)...
1. 前言 本文是Linux MMC framework的第二篇,将从驱动工程师的角度,介绍MMC host controller driver有关的知识,学习并掌握如何在MMC framework的 ...
- linux如何查看硬件驱动,linux查看硬件信息及驱动设备相关整理
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...
- linux检测硬件驱动,linux查看硬件信息及驱动设备相关整理
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...
- linux 安装水星无线网卡驱动,Linux下安装RTL8188CE网卡驱动(Mercury MW150U)
先说明下我的系统: kernel: 3.0.0-32-generic 今天买了个无线网卡Mercury 150Mbps MW150U系列,我发现在我的笔记本的Ubuntu 12.10下不用安装驱动就能 ...
- linux 查看usb驱动,linux查看硬件信息及驱动设备相关整理
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...
- linux cdc设备驱动,Linux下USB CDC ACM 驱动简析
一.硬件平台:TI AM335X 芯片 二.软件平台:Ubuntu 10.04 三.USB CDC ACM 驱动简介 USB的CDC类是USB通信设备类 (Communication Device C ...
- linux查看硬盘驱动,linux查看硬件信息及驱动设备相关整理
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 联系我登录 首页 业界新闻 技术文章 资源分享 微语 linux查看硬件信息及驱动设备相关整理[转] 蓝猫 发布于:2014-5-30 17:48 分类: ...
- linux配置无线网卡驱动,Linux无线网络配置——无线网卡驱动安装与WLAN802.11配置...
Linux无线网络配置--无线网卡驱动安装与WLAN 802.11配置 WLAN (Wireless Local Area Network)类似于有线以太网,WLAN 的 802.11a 标准使用 5 ...
- blink usb无线网卡驱动 linux,最新blink随身wifi驱动下载地址电脑版-CC软件
blink随身wifi是一款精致小巧的随身WiFi,这款软件采用采用11N无线技术,使得数据传输变得飞快,这款软件让你随时随地的可以向无线网络和局域网络带来的便利. 使用方法: 第一步,推出360安全 ...
- linux 服务器 安装网卡驱动,linux下安装编译网卡驱动的方法
安装linux操作系统后发现没有网卡驱动,表现为 system → Administration → Network下Hardware列表为空. 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网 ...
最新文章
- 在symfony2项目中100%提升doctrine的性能
- SegmentFault Hackathon 2018 火热登场,Let's hack!
- AngularJS路由使用示例
- 调用支付宝PHP接口API实现在线即时支付功能(UTF-8编码)
- 腾讯人均每月薪酬成本超8万元,员工总数首次超10万
- 现代软件工程 10 绩效管理
- 对tmemorystream的一些改进_delphi教程 [转]
- es分页查询重复数据_ES优化 - 巨量数据如何提高查询性能
- 快速排序多种方法代码Python
- c++ 遍历所有点且距离最短_图解:最短路径之迪杰斯特拉算法
- 科大讯飞2019机械核心部件寿命预测,亚军方案
- Python open()函数文件打开、读、写基础操作
- qq视频转码失败怎么办_视频里提取音频的几种方法
- Docker 加速器
- Python期末复习题及代码
- stm32F407控制器在驱动电机等执行机构时,ADS1256采集模块出现死机现象,问题待解决
- MPI MPI_Bcast (广播)用法详解
- reco-fetch
- Rescue-Prime hash STARK
- intern string java_聊聊java String的intern
热门文章
- 《人机交互技术》第一章 绪论 知识点整理
- android流水App(记账本)--数据库实现多功能
- 用xlwt和xlrd在不修改Excel单元格格式的情况下修改单元格内容
- 大学物理第一章笔记——高等农林院校基础课程教程系列
- 【BAT-表姐御用05ren命令批量修改后缀】
- Network in Network(NIN)网络结构详解,网络搭建
- SVM支持向量机的损失函数解析
- 配置mybatis时xml出现 URI is not registed / Resource registered by this uri is not recognized 解决方法
- 渗透基础——命令行下安装Microsoft .NET Framework
- Redis面试知识点