실습/리눅스 커널

Major, Minor #

써드아이 2021. 2. 8. 14:23

[블로그 통합으로 이전해 온 자료] - 2008. 4. 29. 21:11

 

 

- 테스트나 특정 플랫폼용으로 사용 가능한 Major #

60 ~ 63
120 ~ 127
240 ~ 254


- Major 10 의 사용 가능한 Minor

240 ~ 255


- character device 중 major # 10을 가지는 device의 등록
char dev - major # 10의 minor #을 가지는 디바이스는
miscdevice이라고 해서 등록하는 함수가 따로 있다.

 

 <linux/miscdevice.h>
 
 struct file_operations xxx_misc_fop =
 {
 };
 
 struct miscdev xxx_miscdev =
 {
  .fops = &xxx_misc_fop,
  .minor = XXX_MINOR,
  .name = "xxx_misc",
 };
 
 xxx_init()
 {
  misc_register( &xxx_miscdev );
 }
 
 xxx_exit()
 {
  misc_deregister( &xxx_miscdev );
 }
 

 <linux/coda.h>
 <linux/kdev_t.h>
 
 dev_t devNum = MKDEV( XXX_MAJOR, XXX_MINOR );
 
 MINOR( inode->i_rdev )
 MAJOR( inode->i_rdev )