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

企业网站的建设一般要素有政务类网站建设

企业网站的建设一般要素有,政务类网站建设,深圳网站备案拍照点,php企业网站建设一. 简介 为了方便管理#xff0c;Linux 中每个设备都有一个设备号。 为了后面字符设备驱动的学习#xff0c;本文了解一下 设备号组成与分配。 二. Linux字符设备号的组成与分配 1. 设备号的组成 设备号由主设备号和次设备号两部分组成#xff0c;主设备号表示某一个…一.  简介 为了方便管理Linux 中每个设备都有一个设备号。 为了后面字符设备驱动的学习本文了解一下 设备号组成与分配。 二.  Linux字符设备号的组成与分配 1.  设备号的组成 设备号由主设备号和次设备号两部分组成主设备号表示某一个具体的驱动次设备号表示使用这个驱动的各个设备。 一个名为 dev_t 的数据类型表示设备号dev_t 定义在文件 include/linux/types.h 里面通过 vscode软件可以打开(NXP官方提供的) Linux内核源码输入 Ctrlp 组合键即可搜索 types.h。 dev_t 数据类型定义如下 typedef __kernel_dev_t dev_t; ............. typedef __kernel_dev_t dev_t; 可以看出 dev_t 是__u32 类型的而__u32 定义在文件 include/uapi/asm-generic/int-ll64.h 里面定义如下 typedef unsigned int __u32; Linux内核将设备号分为两部分主设备号和次设备号。主设备号占用前12位次设备号占用低20位。综上所述dev_t  就是 unsigned int 类型即为一个 32 位的数据类型。这 32 位的数据构成了主设备号和次设备号两部分其中高 12 位为主设备号低 20 位为次设备号。 因此 Linux 系统中主设备号范围为 0~4095所以大家在选择主设备号的时候一定不要超过这个范围。 在文件 include/linux/kdev_t.h 中提供了几个关于设备号的操作函数(本质是宏)如下所示 #define MINORBITS 20 #define MINORMASK ((1U MINORBITS) - 1)#define MAJOR(dev) ((unsigned int) ((dev) MINORBITS)) #define MINOR(dev) ((unsigned int) ((dev) MINORMASK)) #define MKDEV(ma,mi) (((ma) MINORBITS) | (mi))以上几个宏可以看出从 dev_t 获取主设备号和次设备号MAJOR(dev_t)函数或MINOR(dev_t)函数。也可以使用主设备号和次设备号构成 dev_t调用MKDEV(majorminor)函数即可。 2.  设备号的分配 1静态分配设备号 前面讲解字符设备驱动的时候说过了注 册字符设备的时候需要给设备指定一个设备号这个设备号可以是驱动开发者静态的指定一个 设备号例如选择 200 这个主设备号。有一些常用的设备号已经被 Linux 内核开发者给分配掉 了具体分配的内容可以查看文档 Documentation/devices.txt 。 并不是说内核开发者已经分配掉 的主设备号我们就不能用了具体能不能用还得看我们的硬件平台运行过程中有没有使用这个 主设备号使用“ cat /proc/devices ”命令即可查看当前系统中所有已经使用了的设备号。 2动态分配设备号 静态分配设备号需要我们检查当前系统中所有被使用了的设备号然后挑选一个没有使用 的。 而且静态分配设备号很容易带来冲突问题。 Linux 社区推荐使用动态分配设备号在注册字符设备之前先申请一个设备号系统会自动给你一个没有被使用的设备号这样就避免了冲突。 卸载驱动的时候释放掉这个设备号即可。 设备号的申请函数如下 int alloc_chrdev_region(dev_t *dev, unsigned baseminor, unsigned count, const char *name) 函数 alloc_chrdev_region 用于申请设备号此函数有 4 个参数 dev 保存申请到的设备号。 baseminor 次设备号起始地址 alloc_chrdev_region 可以申请一段连续的多个设备号这些设备号的主设备号一样但是次设备号不同次设备号以 baseminor 为起始地址地址开始递 增。一般 baseminor 为 0 也就是说次设备号从 0 开始。 count 要申请的设备号数量。 name 设备名字。 注销字符设备之后要释放掉设备号设备号释放函数如下 void unregister_chrdev_region(dev_t from, unsigned count) 此函数有两个参数 from 要释放的设备号。 count 表示从 from 开始要释放的设备号数量。 注意Linux 给每一个设备分配了一个设备号所以在写驱动时我们要保证设备的主设备号与次设备号都是唯一的。绝不能与现有的设备的设备号冲突
http://www.pierceye.com/news/927334/

相关文章:

  • 郑州哪里有做网站wordpress编辑页面模板
  • 网站定制要花多少钱电商设计类插画
  • 手把手做网站wordpress secondary title
  • 服装网站建设课程品牌网站怎么建立
  • 广州市网站建设怎么样企业网站上的二维码怎么获得
  • 网站建设与优化标准图片外链上传网站
  • 网站开发实战第二章网站搜索引擎怎么做
  • 网站建设的定位企业官网
  • 石大网页设计与网站建设客观题网站建设与制作布局
  • 成都智能建站模板品牌网站设计制作公司推荐
  • 出口贸易公司网站怎么做织梦php网站
  • 锦州建设工程信息网站wordpress 签到 插件下载
  • 枣庄定制网站建设公司移动端包括哪些
  • 品牌网站建设定位网页制作模板源代码免费
  • 网站建设公司是什么毅冰做外贸是哪个网站
  • 做资料分享网站有哪些网站设计建设维护与更新
  • 国外开源 企业网站建设网站经营范围
  • 做棋牌游戏网站云南软件开发
  • 广州做网站哪家好福州微信网站开发
  • 网站建设:做网站是不是很麻烦
  • 网站开发合同官司python能开发app吗
  • 福建建设厅网站简历表格 个人简历手机版
  • 重庆企业网站定制开发公司重庆城乡建设子网站
  • 网站地图怎么做html公司文化的建设对个人的意义
  • html网站模板免费下载台州网站制作 外贸
  • 有关建筑网站建设方案案例平台网站建设哪家有
  • 网站域名跳转是怎么做的空间一个数据库可以做几个网站
  • asp网站幻灯片不显示微商刚起步怎么找客源
  • 婚恋网站翻译可以做吗科技局网站建设方案
  • 长沙哪里学网站建设德阳做网站的公司