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ÉÏTCP¶ªÊ§Ð¡°ü²»¿É¼ûµÄ½â¾ö
×÷ÕߣºÇ§Àï¹ÂÐÐ(http://blog.csdn.net/yanghehong)
ÓÐÍøÓÑÔÚ×öÒ»¸öLinuxÉϵĿͻ§¶ËÅöµ½ÕâÑùµÄÎÊÌ⣺
ÎÒÃÇÔÚLinuxÏ¿ª·¢Ò»¸öÍøÂç¿Í»§¶Ë³ÌÐò£¨·þÎñÆ÷ÊDz»¿ÉÐ޸ĵģ©£¬²»¶ÏÏò·þÎñÆ÷²»¶¨ÆÚ·¢ËÍһЩºÜСµÄ°ü£¨Ò»°ãÖ»Óм¸Ê®×Ö½Ú£©£¬ÏÖÔÚ³öÏÖÕâÖÖÇé¿ö£º´ó²¿·Ö°üÕý³£·¢ËÍ£¬µ«Êǵ±ÎÞÏßModem ......
ʲôʱºòÐèÒª´´½¨Ï̳߳ØÄØ£¿¼òµ¥µÄ˵£¬Èç¹ûÒ»¸öÓ¦ÓÃÐèҪƵ·±µÄ´´½¨ºÍÏú»ÙỊ̈߳¬¶øÈÎÎñÖ´ÐеÄʱ¼äÓַdz£¶Ì£¬ÕâÑùÏ̴߳´½¨ºÍÏú»ÙµÄ´øÀ´µÄ¿ªÏú¾Í²»ÈݺöÊÓ£¬ÕâʱҲÊÇÏ̳߳ظóö³¡µÄ»ú»áÁË¡£Èç¹ûÏ̴߳´½¨ºÍÏú»Ùʱ¼äÏà±ÈÈÎÎñÖ´ÐÐʱ¼ä¿ÉÒÔºöÂÔ²»¼Æ£¬ÔòûÓбØÒªÊ¹ÓÃÏ̳߳ØÁË¡£
ÏÂÃæÊÇ ......
½øÈëviµÄÃüÁî
vi filename :´ò¿ª»òн¨Îļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»ÐÐÊ×
vi +n filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚnÐÐÊ×
vi + filename £º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚ×îºóÒ»ÐÐÊ×
vi +/pattern filename£º´ò¿ªÎļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»¸öÓëpatternÆ¥ÅäµÄ´®´¦
vi -r filename £ºÔÚÉÏ´ÎÕýÓÃvi±à¼Ê±·¢Éúϵͳ±ÀÀ££¬»Ö¸´filename
vi ......
·¢ÏÖ·þÎñÆ÷ϵͳʱ¼äºÍ±ê׼ʱ¼ä²îÁË10¶à·ÖÖÓ,È»ºóÁãµãµÄʱ¼äµ÷ÕûÁËÏÂʱ¼ä¡£¹ýÁ˲¶àÒ»¸öÀñ°Ý·¢Õ¹Êý¾Ý¿âÖмǼµÄʱ¼ä»¹ÊDz»¶Ô£¬ÈçÊÇÓüӰàµ÷ÕûÁËÏÂʱ¼ä¡£¹ýÁË2ÌìÒ»¿´»¹ÊÇʱ¼ä²»¶Ô£¬Ò»²é²Å·¢ÏÖ£º
»úÆ÷ÀïÓÐÁ½¸öʱÖÓ¡£Ó²¼þʱÖÓ´Ó¸ù±¾ÉϽ²ÊÇCMOSʱÖÓ£»¶øÏµÍ³Ê±ÖÓÊÇÓÉÄÚºËά»¤µÄ£¬ËüÊÇ´Ó1969ÄêÄ©£¨¼ ......
ËùÐèÎļþhello.c, main.c, hello.h, Makefile£¬ÔÚͬһ¸öĿ¼ÏÂ
hello.c:
#include <stdio.h>
void hello(char name[])
{
printf("Hello %s!\n", name);
}
main.c:
#include "stdio.h"
#include "hello.h"
// The second
int main()
{
hello("GCC");
printf("Haha Linux Ubuntu!\n");
......