ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

ÖØÎÂLinux Driver»ù´¡Ö®Hello World
2014-11-24 08:20:36 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:0´Î
Tags£ºÖØÎ Linux Driver »ù´¡ Hello World

LinuxÇý¶¯ÊÖ¶¯¼ÓÔØ insmod ÊÖ¶¯Ð¶ÔØ rmmod


LinuxÉ豸Çý¶¯µÚÈý°æ£º


²Î¿¼£º¡¶linuxÉ豸Çý¶¯³ÌÐò¡·µÚÈý°æ£¬ÏÂÔØÔÚLinux¹«ÉçµÄ1ºÅFTP·þÎñÆ÷ÀÏÂÔØµØÖ·£º


ÃÜÂ룺www.muu.cc


ÔÚ 2011ÄêLinuxIDC.com\3ÔÂ\¡¶linuxÉ豸Çý¶¯³ÌÐò¡·µÚÈý°æ


ÏÂÔØ·½·¨¼û http://www.linuxidc.net/thread-1187-1-1.html


/*********************************************/


hello.c


#include
#include


MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);


#/*********************************************/


makefile:


obj-m := hello.o


KERNELDIR = /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)


all:
$(MAKE) -C $(KERNELDIR) M=$(PWD)


±£´æÎļþ£¬Ê¹ÓÃmakeÃüÁî±àÒë


#make


#insmod hello.ko


#rmmod hello.ko


ÔÚÎҵIJâÊÔ»·¾³ÖУ¬²¢Ã»ÓÐÖ±½Ó´ÓÖÕ¶Ë´ò³öÐÅÏ¢£¬¶øÊÇÔÚ/var/log/messagesÖгöÏÖÒÔÏÂÐÅÏ¢¡£ÖÁ´Ë±àÒëÔËÐгɹ¦¡£


Mar 27 17:01:30 localhost kernel: Hello,world
Mar 27 17:01:36 localhost kernel: Goodbye,cruel world


¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£ºAndroid ndk-x86 ±àÒësoÎļþʱÌá.. ÏÂһƪ£ºLinuxÍøÂç±à³ÌUDP¹ý³ÌÓöµ½µÄÎÊÌâ..

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ:

¡¤Spring Boot Java£º (2025-12-26 16:20:19)
¡¤Spring Boot¤ÇHello (2025-12-26 16:20:15)
¡¤Spring ¤Î»ù±¾¤«¤éŒ (2025-12-26 16:20:12)
¡¤C++Ä£°å (template) (2025-12-26 15:49:49)
¡¤C ÓïÑÔÖÐÄ£°åµÄ¼¸ÖÖ (2025-12-26 15:49:47)