register_chrdev_region alloc_chrdev_region

2024-06-12 04:08
文章标签 register alloc region chrdev

本文主要是介绍register_chrdev_region alloc_chrdev_region,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在调用 cdev_add()函数向系统注册字符设备之前,应首先调用 register_chrdev_region()或 alloc_chrdev_region() 函数向系统申请设备号,这两个函数在 <linux/fs.h>中可以找到,其原型是:

引用

int  register_chrdev_region( dev_t  first ,  unsigned int  count ,  const char  * name);
int  alloc_chrdev_region( dev_t  * dev ,  unsigned int  firstminor ,  unsigned int  count ,  constchar  * name);



register_chrdev_region() 函数用于已知起始设备的设备号的情况。
参数 first 表示起始设备号;
参数 count 表示从起始设备号开始连续的设备号数目,需要注意的是 count 不能过大,不然有可能溢出到下一个主设备号上;
参数 name 表示设备的名称,这个名称也会在 /proc/devices 文件以及sfsfs 中看到。

register_chrdev_region() 成功时返回 0 ,失败时返回负数。

......... ............... .............. ..................... .............. .............. ...........

alloc_chrdev_region() 用于设备号未知,向系统动态申请未被占用的设备号情况。

参数 dev ,在系统调用成功后,会把得到的设备号方到这个参数中;
参数 firstminor 是请求的第一个次设备号,一般为 0 ;
参数 count  表示一个范围值;
参数 name 表示设备名。

这篇关于register_chrdev_region alloc_chrdev_region的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1053155

相关文章

青云QingCloud 推出 Region 服务,帮企业轻松构建多活架构

理想情况下,企业通过使用云的方式来消除地域对业务的影响,就像我们在使用水电时,不需要关心发电厂在哪里。但是,一般来说,不同地域之间,只能通过公网联通。 为帮助用户便捷地构建高可用的业务架构,青云QingCloud 推出 Region 服务,通过对基础网络架构进行升级,实现区域( Region )内的可用区( Availability Zone )之间内网高速互联,全面提升整体服务能力。

Halcon选择一堆region中面积第N大的region的算法实现

以下图为例: 比如我想把面积第2小的那个“小正方形”选择出来,算法代码如下: 1 read_image (Yuan, 'C:/Users/happy xia/Desktop/yuan.png')2 binary_threshold (Yuan, Region, 'max_separability', 'dark', UsedThreshold)3 connection (Regio

Detection简记3-Region Proposal by Guided Anchoring

创新点 1.新的anchor 分布策略:Guided Anchoring 2.feature adaption module,根据潜在的anchor精调特征 总结 Guided Anchoring:流程如图所示 特征图F1接两个分支:位置预测分支产生物体可能存在的位置的概率图,形状预测分支预测物体的形状,独立于位置。根据两个分支的输出,得到anchor。 位置预测分支: 1X1的卷积+si

iOS中alloc与init

面向对象的3大特性,封装继承和多态. 我遇到过封装相关的问题,因为初级封装简单,常常暴露出被你封装的接口,进一步进行高级封装隐藏接口的时候才发现,封装是一门学问,而这门学问得从最基础的alloc与init讲起.   FatherModel.h #import <Foundation/Foundation.h>@interface FatherModel : NSObject@en

【C++】win7 64下VC++6.0(Unable to register this add-in because its DLLRegisterServer return an error)

 FileTool.exe用于替换 Visual C++ 使用开发人员 Studio 对象模型中的打开和添加到项目菜单项。也是一个修复 VC6.0打开文件时出错退出的插件。 1. 下载FileTool.exe,并解压 2. 打开VC6.0,点击File-Open Workspace,选择刚解压出来的FileTool.dsw,并确定 3. 点击Bulid-Build FileTool.

chrome 中class not register解决

刚刚上一篇博客更换帐户名为英文后,chrome的taskbar和开始菜单中的快捷方式一直这个问题。 查了查,说什么要改注册表。 但是chrome.exe可以正常工作,数据也都在。 刚刚发现一个特简单的方法。 在C盘搜索chrome, 删除quicklaunch和startmenu的快捷方式,然后把chrome.exe重新固定到这两个地方就ok了。 不过我之前清理注册表了,不知道这个需不

【精讲】PCIe基础篇——BAR(Base Address Register)详解

一、为什么需要BAR         系统中的每个设备中,对地址空间的大小和访问方式可能有不同的需求,例如,一个设备可能有256字节的内部寄存器/存储,应该可以通过IO地址空间访问,而另一个设备可能有16KB的内部寄存器/存储,应该可以通过基于MMIO的设备访问。哪些地址应该使用哪种方式(IO或Memory)来访问它们的内部位置,这是系统软件(即BIOS和OS内核)的工作。因此设备必须为系统软件

AWS Region 相关问题

由于政策问题,AWS全球账号和中国区账号是分开的。AWS中国是近几年才发布的,而且到现在还是有限预览阶段,必须得企业用户申请通过后才能使用。区域的不同也引起许多使用的问题。 AWS现在一共有11个区域,中国区的cn-north-1和美国政府的一个区域时隔离开的,其他区域都是在Global账户下。 在没有显示设置区域时,客户端会默认连接us-east-1区域。老外写的例子很多是没有显示设置的,这

Region Covariance: A Fast Descriptor for Detection and Classification算法总结

传统的像素级特征比如颜色、梯度、滤波响应等等它们对光照变化和非刚性运动的描述不够鲁棒,而在像素级特征之上延伸出的直方图表述了一种无参的联合分布,然而随着特征数目的增加,联合分布的表达是呈指数增加的。另外,关键点的检测以及描述在匹配局部图像上非常有效,然而它们只包含了局部信息,没有利用全局的信息。 与直方图类似,协方差也能作为特征描述,并且协方差的特征维度要小很多。实验证明,协方差特征比其他特征性

内存管理篇-07页分配器接口-alloc_page

-----终于到了编码实战阶段了,前面都是在将思想和实现机制,即使看了源代码还是模模糊糊,不够清晰。         本节通过内核接口从伙伴系统进行申请和释放内存。free_page && alloc_page。其实很多缓存机制最终都是通过伙伴系统申请一大片内存,然后内部再进行对这些页处理优化。         伙伴系统提供了free_page和alloc_pages两个函数进行申请和释放内存