第一章 设备驱动概述

1.无操作系统的设备驱动:对于功能比较单一,控制并不复杂的系统,其并不需要多任务调度,文件系统,内存管理等复杂功能,用单任务架构完全可以很好地支持它们的工作。一个无限循环中夹杂对设备中断的检测或者对设备的轮询是这种系统中软件的典型架构。虽然无操作系统,但设备驱动是必须存在的。
2.有操作系统的设备驱动:设备驱动变得复杂,但是,(1)可以很好的处理多任务并发 (2)操作系统给我们提供了内存管理机制。操作系统通过给设备驱动制造麻烦来达到给上层应用提供便利的目的。如果设备驱动都按照操作系统给出的独立于设备的接口而设计,应用程序将可使用统一的系统调用接口来访问各种设备,而不用管设备的具体类型和工作方式,是非常方便的。
3.Linux将存储器和外设分为3个基础大类:字符设备,块设备,网络设备。
(1)字符设备指那些必须以串行顺序依次进行访问的设备
(2)块设备则可以用任意顺序进行访问,以块为单位进行操作
(3)网络设备面向数据包的接收和发送而设计,它并不对应于文件系统节点
4.编写设备驱动要求工程师具有良好的硬件基础:懂得SRAM,Flash,SDRAM,磁盘的读写方式,UART,I2C,USB等设备的接口,轮询,中断,DMA的原理,PCI总线的工作方式以及CPU的内存管理单元(MMU)等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值