当前位置: 首页 > news >正文

网站推广公司排行榜网站收录怎么做

网站推广公司排行榜,网站收录怎么做,在线看免费网站,公司网站建设推广学习不同的板子我们都是从点灯开始,linux驱动也不例外 驱动开发基础知识 何为驱动? 驱使硬件正常工作的代码就叫做驱动。 在一些mcu里: 无非就是直接操作寄存器,或者用库函数初始化外设,使外设正常工作如初始化iic&…

学习不同的板子我们都是从点灯开始,linux驱动也不例外

驱动开发基础知识

何为驱动?

驱使硬件正常工作的代码就叫做驱动。

在一些mcu里:

        无非就是直接操作寄存器,或者用库函数初始化外设,使外设正常工作如初始化iic,spi等,这样的代码就叫驱动。

在linux里:

        不像在mcu里,拿一个led灯举例子,

         mcu:

                操作寄存器初始化gpio(库函数),在main里开灯关灯。

         linux下:

                     也可以像mcu一样在内核层直接开灯,内核不断加载卸载很浪费资源,效率极 低,linux下的内核模块代码,是独立运行的单元,很难像mcu一样一个代码一个工程代表整个单片机运行程序。

                      就算在内核层把代码写死,系统开发工程师不懂驱动怎么操作led灯。

我写了一个驱动

你作为你个智能家居软件开发工程师想用我写的驱动控制led灯

真正的linux驱动:

        不像mcu一样,把代码写死,

        首先linux下的驱动符合linux驱动的原则:驱使硬件正常工作的代码,在内核层把led设备抽象一个一个文件,写驱动就是完成这件事,把设备变成文件。软甲就可以直接操作文件,执行一系列操作。

以led灯位列:

        led灯->led驱动->文件  /dev/led

        应用层开发者->打开/dev/led->灯亮

        应用层开发者->关闭/dev/led->灯灭

linux分层思想

直接操作寄存器,高效,便捷,但不利于移植,不通用,换个芯片就得重构代码。

而linux系统其他所有系统都在做软硬件分离

分离就靠中间层

linux不管换什么平台,因为中间层都一样,驱动框架代码都一样

从这方面来讲驱动比mcu简单多了

linux分层处处可见,不仅把驱动做了分层,底层的外设驱动也做了分层,如spi,分为厂家驱动和可供用户操作的API接口。

                        

厂商的驱动也做了分层,分为硬件信息和底层驱动 

linux下学的所有API都是通用的。

驱动开发的框架

1.写驱动框架

2.驱动框架,把设备抽象为文件

                设备的设备号->设备ID->让内核管理
                (设备内核操作接口->文件操作接口(内核你驱动开发者要单独实现一套)
                你写的内核层的打开关闭读写跟上层(系统层--对应)
                这是也是你留给上层的操作接口!

3.编译成.ko->insmod Xxx.ko->生成设备文件(/dev/xxxx)
4:调用加载/入口函数->内核框架->生成设备文件
5:上层/你自己调用文件操作->操作设备

 设备驱动文件的特点

系统的特殊文件

管道,套接字,块设备,字符设备

用非缓存io操作。

linu驱动设备文件分为三类

字符设备(char)

一般指的是除了存储网络设备之外的所有的其他设备鼠标按键触摸屛LED灯蜂鸣器键盘摄像头液晶屏

网络设备

wifi 4g

块设备(储存)

正常储存设备,厂商一般完成了初始化

小型储存设备 ,spi_flash eeprom

设备号

设备号是一个无符号的32位的整形,理论上设备最多挂在2^32个设备 

设备号分为主设备号和次设备号

主设备号

占32位设备号的高12位,但是他最大255

次设备号

占32位设备号的低20位,最大255

按设备号算最多挂载255^2个设备

字符设备传输

按字节传输

http://www.yayakq.cn/news/179181/

相关文章:

  • 建网站算法深圳做网站推广公司哪家好
  • wordpress只有英文版下载班级优化大师
  • 论坛网站论坛网站建设建设惠州市建设局建工办网站
  • 天河建网站的公司怎么查网站的外链数量
  • 弥勒网站设计公司wordpress后台打开超慢
  • 网站后期维护流程泉州网站建设方案外包
  • 酷玛网站建设网站公告怎么做
  • 哪些网站的做的好看的图片给wordpress公告
  • 专门做网上链接推广的网站引流推广广告怎么写
  • 做网站租什么服务器wordpress输入密码注册
  • 网站更换备案号亳州做企业网站
  • 风中有朵雨做的云网站观看南昌做网站后台投票
  • 如何做电子海报在网站网站策划网
  • 做app还是做网站合适wordpress 32m
  • 商城网站多少钱做网络维护培训班
  • html网站怎么做视频教程如何加强英文网站建设
  • 网站建设伍金手指下拉2wordpress 文章二维码
  • 本地网站建设需要什么石家庄谷歌推广
  • 西咸新区规划建设局网站wordpress安装多说
  • 用网站开发角度去开发一个网站网站建设168
  • 友情链接交换群做网站建设优化的公司排名
  • 网站建设优化项目秒玩小游戏点击即玩入口
  • 网站seo入门如果盗用网站模板
  • 关于网站集约化建设的意见设计素材网站照片
  • 网站连锁店查询怎么做佛山外贸网站建站
  • 镇江外贸网站建设青岛市住房城乡建设厅网站
  • 网站建设时程序的作用手机系统下载
  • 高端网站制作重庆最好的网站建设
  • 做平面设计图的网站网站建设包六个
  • 整站优化seo排名点击门头广告设计图片