linux内核MKDEV()宏

http://archive.cnblogs.com/a/1982028/

Kdev.h 中

#define MKDEV(ma,mi)   (((ma) << MINORBITS) | (mi))

#define MKDEV(ma,mi)   ((ma)<<8 | (mi))

获取设备在设备表中的位置。

我的理解是ma是主设备号,mi是次设备号
主设备号由dev_t的高12位表示
次设备号是dev_t的低20位
我感觉MKDEV应该是把主设备号和次设备号合成dev_t
所以第二句应该是
#define MKDEV(MA,MI) ((MA)<<(20)|(MI)))


<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(2125) | 评论(0) | 转发(2) |
0

上一篇:硬盘安装 CentOS-6.0

下一篇:__init的用法

给主人留下些什么吧!~~
评论热议
posted @   张同光  阅读(449)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示