linuxÇý¶¯Ö®makefileÏê½â
# If KERNELRELEASE is defined, we've been invoked from the
# kernel build system and can use its language.
ifneq ($(KERNELRELEASE),)
obj-m := hello.o
# Otherwise we were called directly from the command
# line; invoke the kernel build system.
else
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
endif
µ±ÎÒÃÇÇÃÏÂmakeʱ£¬ÎÒÃǽøÈëÁËÕâ¸öȨÍþµÄmakefile¶þ´Î¡£µÚÒ»´Î½øÈëmakefile£¬·¢ÏÖKERNELRELEASEûÓб»ÉèÖÃʱ£¬ÓÚÊÇËý¸ù¾ÝbuildÕâ¸ö·ûºÅÁ´½Ó¶¨Î»ÄÚºËÔ´´úÂëĿ¼£¬È»ºó½øÈëdefault£¬¿ªÊ¼µÚ¶þ¸ömake£¬£CÑ¡Ïî½øÈëÄÚºËÔ´´úÂëĿ¼£¬ÕÒµ½¶¥²ãµÄmakefile£¬È»ºó£M·µ»Øµ±Ç°Ä¿Â¼Ö´ÐÐmakefileÎļþ£¬Õâ¾ÍÊǵڶþ´Î½øÈëÕâ¸ömakefile£¬ÔÚÕâ´Î£¬ÓÉÓÚKERNELRELEASE±äÁ¿ÒѾ¶¨Ò壬Òò´Ë²»ÐèÒª½øÈëelseÓïÑÔ£¬ÔÚÕâÀobj-m:=hello.oÕâ¸öÓï¾äºÍÎÒÃÇÒÔǰ²»ÊÇÇý¶¯³ÌÐòÖеÄmakefile²»Í¬£¬ÔÚÕâÀïÄں˻á°ïÄã´¦ÀíÒ»ÇУ¬Õâ¾ä»°ÊǸæËßÄںˣ¬ÐèÒª´Óhello.o´´½¨Ò»¸öÇý¶¯Ä£ÐÍ£¨module£©¡£
²Î¿¼ÎÄÏ× ¡¶linux device drivers 3¡·
±¾ÎÄÀ´×ÔCSDN²©¿Í£¬×ªÔØ×Ô£ºhttp://blog.csdn.net/abc19842008/archive/2008/02/14/2095836.aspx
Ïà¹ØÎĵµ£º
Ê×ÏÈÔÚLinuxϵͳÉϰ²×°samba
È»ºóÆô¶¯WindowsÐéÄâ»ú£¬ÔÚ×ÊÔ´¹ÜÀíÆ÷Öн«sambaµÄµØÖ·£¨ÀýÈç//192.168.1.10/share£©Ó³ÉäΪһ¸öÐéÄâÅÌ·ûZ
×îºóÆô¶¯SourceInsight£¬ÔÚZÅÌÉϽ¨Á¢¹¤³Ì£¬²¢µ¼ÈëÎļþ¡£
×¢Ò⣺ÒÔºóÿ´ÎʹÓÃSourceInsight֮ǰÏÈÒªÁ¬½Ósamba·þÎñÆ÷£¬±ÈÈç˵´ò¿ªÅÌ·ûZ¡£ ......
ѧ¶«Î÷£¬ÍùÍùʵÀý²ÅÊÇ×îÈÃÈ˸ÐÐËȤµÄ£¬ÀÏÊÇѧ»ù´¡ÀíÂÛ£¬²»¶¯ÊÖ£¬¸Ð¾õûÓгɾ͸У¬ºÇºÇ¡£
ÏÂÃæÏÈÀ´Ò»¸öʵÀý¡£ÎÒÃÇͨ¹ý´´½¨Á½¸öÏß³ÌÀ´ÊµÏÖ¶ÔÒ»¸öÊýµÄµÝ¼Ó¡£
»òÐíÕâ¸öʵÀýûÓÐʵ¼ÊÔËÓõļÛÖµ£¬µ«ÊÇÉÔ΢¸Ä¶¯Ò»Ï£¬ÎÒÃǾͿÉÒÔÓõ½ÆäËûµØ·½È¥À¡£
ÏÂÃæÊÇÎÒÃǵĴúÂ룺
/*thread_example.c : c multiple thread programmi ......
2.6µÄKernel LOGO
ËÆºõ±È2.4ÈÝÒס£2.6µÄlogoÊý¾ÝÔÚ/drivers/video/logoÀppmÎļþ¾ÍÊÇlogoͼÏñÁË¡£Ã¿¸öppm¶ÔÓ¦Ò»¸ö. cÎļþ£¬ÄÚÈÝ´ó¸Å¾ÍÊÇͼÏñ³ß´ç¡¢µ÷É«°å¡¢Î»Í¼Êý¾ÝµÈÐÅÏ¢¡£.cÎļþÎÞÐè×Ô¼º½¨Á¢£¬ÔÚmakeµÄʱºòÈç¹û²»´æÔÚij¸öppmÎļþ¶ÔÓ¦µÄ.cÎļþ£¬¾Í»á×Ô¶¯´Ó ppmÉú³ÉÒ»¸ö£¬È»ºó°ÑËü±àÒë³É.oÎļþ¡£ËùÒÔ¿´¿´Ä¿Â¼ÏÂÄÄЩ.ppmÎ ......
ÔÎijö´¦£ºhttp://www.svn8.com/shouce/Linux/kernel_options.html×ðÖØÔ´´£¡
Code maturity level options
´úÂë³ÉÊì¶ÈÑ¡Ïî
Prompt for development and/or incomplete code/drivers ÏÔʾÉÐÔÚ¿ª·¢ÖлòÉÐδÍê³ÉµÄ´úÂëÓëÇý¶¯.³ý·ÇÄãÊDzâÊÔÈËÔ±»òÕß¿ª·¢Õß,·ñÔòÇëÎðÑ¡Ôñ
General setup
³£¹æÉèÖÃ
Local version - append ......
ÎļþÔÚÁ½¸öÎļþ¼Ð£º
inc/hello.h
main/hello.c, main.c, Makefile
ÎļþÄÚÈÝ£º
hello.h
void hello(char name[]);
hello.c
#include <stdio.h>
void hello(char name[])
{
printf("Hello %s!\n", name);
}
main.c
#include <stdio.h>
#include "../inc/hello.h"
// The second
int main( ......