LDD3学习笔记(1):设备驱动简介

简介:  1、几乎每个系统操作都被映射到具体的物理设备上,而任何设备的控制操作都由特定于要寻址的相关代码来进行,这些代码成为设备驱动。2、linux可以在运行时扩展由内核提供的特性,既可以在系统运行时增加内核的功能(也可以删除)。

 1、几乎每个系统操作都被映射到具体的物理设备上,而任何设备的控制操作都由特定于要寻址的相关代码来进行,这些代码成为设备驱动。

2、linux可以在运行时扩展由内核提供的特性,既可以在系统运行时增加内核的功能(也可以删除)。

3、每块可以在运行时添加到内核的代码称为一个模块,每个模块由目标代码组成(既功能的实现)。

4、linux将设备分为三种基本类型:字符设备、块设备、网络设备。典型的字符设备如:/dev/tty1(串口),块设备如:/dev/sda(磁盘),网络设备如:eth0(网卡),在这里需要说明的是linux对网络设备(接口的)处理方式同普通的字符和块设备不同,不用进行read和write,同时linux没有将网络设备具体映射到一个设备节点,虽然有名字例如eth0,但是这个名字在文件系统中没有相应的入口,内核与网络设备驱动间的通讯是通过调用和报文相关传递相关的函数。

5、安全问题。从内核获取的内存都应该清零,或者初始化。在系统启动后可以通过capability机制来禁止内核加载模块,但是你需要具备一定的权限。

6、版本问题。偶数的内核版本通常是稳定版本(2.6.x),奇数版本通常是开发快照或者测试版本(2.7.X),代表了当前的开发状态。

7、版权条款。通用公共版权( GPL )

 

目录
相关文章
|
5月前
|
网络协议 算法 Unix
Linux源码学习笔记01-Linux内核源码结构
Linux源码学习笔记01-Linux内核源码结构
|
8月前
|
存储 Ubuntu Linux
ARM-Linux开发与MCU开发的不同之处分析
ARM-Linux开发与MCU开发的不同之处分析
77 0
Linux 设备树基本简介
设备树(Device Tree)是一种描述硬件的数据结构在操作系统引导阶段进行设备初始化的时候,数据结构中的硬件信息被检测并传递给操作系统
Linux 设备树基本简介
|
编解码 缓存 Linux
Linux ALSA音频驱动之一:框架概述
Linux ALSA音频驱动之一:框架概述
Linux ALSA音频驱动之一:框架概述
|
编解码 Linux API
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)上
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)上
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)上
|
Linux 内存技术
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)下
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)下
Linux ALSA驱动之三:PCM创建流程源码分析(基于Linux 5.18)下
|
Linux 芯片
Linux驱动开发: Linux下RTC实时时钟驱动
Linux驱动开发: Linux下RTC实时时钟驱动
762 0
Linux驱动开发: Linux下RTC实时时钟驱动
|
IDE 开发工具
VxWorks6.6 pcPentium BSP 使用说明(一):基本概念
<p style="">“VxWorks6.6 BSP 使用说明”将发布pcPentium和idp945两个系列的BSP的使用说明。每个系列约5篇文章。之后还将发布由这两个官方提供的BSP的实战移植方法。</p> <h4 style="">本说明适用范围</h4> <blockquote style=""><span style="color:#3366ff; padding-bott
2658 0
|
Linux 程序员 开发者

热门文章

最新文章