linux分配设备编号

在linux内核中用dev_t来保存设备的编号, dev_t 是个32位数值12位为主设备号, 20位次设备号, 想要获得dev_t的设备号最好使用给定的宏MAJOR(dev_t dev), MINOR(dev_t dev).

相反用MKDEV(int major, int minor)来获取dev_t类型的值.

如果我们在明确知道设备编号的时候可以使用register_chrdev_region函数来分配编号,否则最好使用动态分配函数alloc_chrdev_region(dev_t *dev,  minor, count, char *name).

不论采用上述那种分配方法都用unregister_chrdev_region(dev_t, unsigned int count)来释放.

示例代码:

静态分配设备号:

static dev_t dev;
static int __init test_init(void) {
    int err;
    /* 静态分配设备号 *?
    dev = MKDEV(240, 0);
    err = register_chrdev_region(dev, 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux中,你可以通过设置U盘的文件系统类型为FAT32或NTFS来实现在Windows下挂载时自动分配盘符的功能。以下是具体步骤: 1. 在Linux中插入U盘,并确保系统已经正确识别并挂载了U盘。 2. 打开终端,并输入以下命令以确定U盘的设备名称: ``` sudo fdisk -l ``` 在输出结果中找到对应的U盘设备,通常以`/dev/sdX`的形式表示(X是一个字母,表示设备号)。 3. 运行以下命令,以编辑U盘的分区表: ``` sudo fdisk /dev/sdX ``` 注意将`/dev/sdX`替换为你实际的设备名称。 4. 在fdisk命令提示符下,按下`p`键以显示U盘的分区表。 5. 如果U盘已经有一个分区,请记下该分区的编号(例如,`/dev/sdX1`)。 6. 如果U盘没有任何分区,请按下`n`键创建一个新分区,并按照提示进行操作。 7. 创建或选择分区后,按下`t`键来设置分区的文件系统类型。 8. 在提示符下,输入以下命令以设置文件系统类型为FAT32: ``` c ``` 或者输入以下命令以设置文件系统类型为NTFS: ``` 7 ``` 9. 按下`w`键保存并退出fdisk。 10. 在终端中输入以下命令,以重新加载分区表: ``` sudo partprobe /dev/sdX ``` 注意将`/dev/sdX`替换为你实际的设备名称。 现在,当你将U盘插入Windows系统时,它应该会自动分配一个盘符并挂载。请注意,这种设置只适用于FAT32或NTFS文件系统,如果你的U盘使用其他文件系统,Windows可能无法直接识别它。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值