Linux Çý¶¯ hello
#include <linux/module.h>
MODULE_LICENSE("GPL");
static void hello_init(void);
static void hello_exit(void);
static void hello_init(void)
{
printk("init");
}
static void hello_exit(void)
{
printk("exit");
}
.
module_init(hello_init);
module_exit(hello_exit);
makefile:
obj-m := hello.o
PWD := $(shell pwd)
KERNELDIR = /lib/modules/2.6.24-26-generic/build
default:
make -C $(KENELDIR) M=$(PWD) modules
ubuntu superuser sudo -s -H
Ïà¹ØÎĵµ£º
¿ªÊ¼ÔÚlinuxÏÂ×öcÓïÑÔ¿ª·¢
±¾ÆªÎÄÕÂÖ¼ÔÚ½éÉÜÈçºÎ¿ªÊ¼ÔÚlinuxÏÂÃæ½øÐÐCÓïÑÔ³ÌÐòÉè¼Æ£¬ÒÔ¼°ÈçºÎʹÓóÌÐòÉè¼Æ¼°µ÷ÊÔ¹¤¾ß½øÐбàдC³ÌÐò¡£Ñ§»áʹÓÃgcc¼°gdbµÈ¹¤¾ß½øÐÐlinuxϵÄc±àдºÍµ÷ÊÔ¡£
ÔÚ¿ªÊ¼Ö®Ç°£¬Ê×ÏÈҪ˵Ã÷µÄÊÇ£¬linux¿ª·¢³ÌÐò×îÖ÷ÒªµÄ±à¼Æ÷ÊÇvi/vim±à¼Æ÷£¬µ±È»»¹ÓÐemacs,gedit£¬Ö»ÊÇvi/vimµÄÓû§ÊµÔÚÊÇѹµ¹ÐԵĶàÊ ......
ICW2 ÓÃÓÚÉèÖÃоƬËͳöµÄÖжϺŵĸß5λ¡£Ê²Ã´Òâ˼ÄØ£¬¾ÍÊÇ˵´ÓÖжϿØÖÆÆ÷·¢³öµÄÖжÏÐźŵĸß5λ¾ÍÊÇÔÚICW2ÀïÉèÖõġ£
ÔÚlinux 0.11Àïϵͳ°ÑÖ÷ƬµÄICW2ÉèÖÃΪ0x20£¬¾Í±íʾÖжÏÇëÇóIR0~IR7ÖжϺŵķ¶Î§ÊÇ0x20~0x27(8259AоƬ²úÉúµÄIRQºÅ±ØÐëÊÇÁ¬ÐøµÄ£¬ËùÒÔÒ²Ö»ÐèÒªÉèÖÃÆðʼºÅ¾ÍokÁË£¡) ......
Îĵµ´´½¨ÈÕÆÚ£º2010-02-19
01 // P173: 2.±à³ÌÌâ (7)
02
03 // The beginning of C program: test06-07.c.
04
05 // ......
1.
¸ÅÊö
¸ù¾ÝÒÔǰѧϰÄÚºËÔ´ÂëµÄ¾Ñ飬ÔÚѧϰÎļþϵͳʵÏÖ֮ǰ£¬ÎÒ´ó¸Å¶¨Á˸öÄ¿±ê£º
1
¡¢
½¨Á¢Ò»¸öÇåÎúµÄÈ«¾Ö¸ÅÄΪ½«À´ÐèÒªÑо¿´úÂëϸ½Ú´òϼáʵ»ù´¡¡£
2
¡¢
Ö»Ñо¿ÐéÄâÎļþϵͳ VFS
µÄʵÏÖ£¬²»Ñо¿¾ßÌåÎļþϵͳ¡£
ΪʲôѡÔñ Linux 2.4.30
£¿ÒòΪ¿ÉÒԲο¼¡ ......