⭐register_chrdev、register_chrdev_region以及alloc_chrdev_region之间的区别

register_chrdev:Linux2.6.30之前所用,不用定义cdev;但

如果是register_chrdev 注册的话,这个时候,分配的次设备号,是从0~255,这样子的话,就分配的范围太广泛了,浪费严重,register_chrdev_region的话,是指定一个区域,比如说是0~1,才属于相对应的file_operations,多节约,多环保;

int register_chrdev(unsignedintmajor,constchar*name,structfile_operations*fops);
其中参数major如果等于0,则表示采用系统动态分配的主设备号;不为0,则表示静态注册;

register_chrdev_region:静

alloc_chrdev_region:动

原文地址:https://www.cnblogs.com/Ph-one/p/6122805.html