zoukankan      html  css  js  c++  java
  • linux device drivers ch01

    ch01. 设备驱动程序简介

    设备驱动程序的作用在于提供机制(需要提供什么功能),而不是提供策略(如何使用这些功能)。

    内核功能划分:

    进程管理:进程创建、销毁、进程间通信、共享cpu调度器。

    内存管理:内核为每个进程创建一个虚拟地址空间,内核的不同部分在和内存管理子系统交互时使用一组函数调用,包括简单的malloc/free函数以及其他的复杂的函数。

    文件系统:“一切皆文件”。

    设备控制:几乎每一个系统操作都会映射到物理设备上。除了处理器、内存以及其他很有限的几个对象外,所有设备控制操作都由与被控制设备相关的代码来完成,这段代码就叫做驱动程序。

    网络功能:所有的路由和地址解析问题都由内核处理。

    可装载模块

    linux有一个很好的特性:内核提供的特性可在运行时进行扩展。这意味着当系统启动并运行时,我们可以向内核添加功能(当然也可以移除)。可在运行时添加到内核中的代码被称为“模块”。

    insmod 加载模块

    rmmod 卸载模块

    设备和模块的分类

    字符模块(字符设备)、块模块(块设备)、网络模块(网络设备) 

  • 相关阅读:
    php生成二维码遇到的问题
    ua判断页面在什么终端/系统打开
    js实现复制文字到剪切板
    jquery 实现表单数据转化为对象格式
    [转]关于setTimeout()你所不知道的地方
    关于性能优化
    关于event loop
    JS数据结构与算法--双向链表
    JS数据结构与算法--单向链表
    JS数组去重
  • 原文地址:https://www.cnblogs.com/wei-chen-linux/p/9829831.html
Copyright © 2011-2022 走看看