#include #include #include #include #include #include static dev_t first; // Global variable for the first device number static int __init mfcd_init(void) /* Constructor */ { printk(KERN_INFO "Gun: mfcd registered"); if (alloc_chrdev_region(&first, 0, 3, "Andy") < 0) { return -1; } printk(KERN_INFO ": <%d, %d>\n", MAJOR(first), MINOR(first)); return 0; } static void __exit mfcd_exit(void) /* Destructor */ { unregister_chrdev_region(first, 3); printk(KERN_INFO "Gun: mfcd unregistered"); } module_init(mfcd_init); module_exit(mfcd_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Gun "); MODULE_DESCRIPTION("My First Character Driver");