LINUX CÖÐÓÃdefine¶¨Òå¿É±ä²ÎÊýµÄºê
Ò»°ãÔÚµ÷ÊÔ´òÓ¡DebugÐÅÏ¢µÄʱºò, ÐèÒª¿É±ä²ÎÊýµÄºê. ´ÓC99¿ªÊ¼¿ÉÒÔʹ±àÒëÆ÷±ê×¼Ö§³Ö¿É±ä²ÎÊýºê(variadic macros), ÁíÍâGCCÒ²Ö§³Ö¿É±ä²ÎÊýºê, µ«ÊÇÁ½ÖÖÔÚϸ½ÚÉÏ¿ÉÄÜ´æÔÚÇø±ð.
1. __VA_ARGS__
__VA_ARGS__ ½« "..." ´«µÝ¸øºê . Èç
#define debug(format, ...) fprintf(stderr, format, __VA_ARGS__)
2. GCCµÄ¸´ÔÓºê
GCCʹÓÃÒ»ÖÖ²»Í¬µÄÓï·¨,´Ó¶ø¿ÉÒÔ¸ø¿É±ä²ÎÊýÒ»¸öÃû×Ö,ÈçͬÆäËü²ÎÊýÒ»Ñù.
#define debug(format, args...) fprintf (stderr, format, args)
ÕâºÍµÚÒ»ÌõµÄºêÀý×ÓÊÇÍêȫһÑùµÄ,µ«ÊÇÕâôд¿É¶ÁÐÔ¸üÇ¿²¢ÇÒ¸üÈÝÒ×½øÐÐÃèÊö.
3. ##__VA_ARGS__
ÉÏÃæÁ½¸ö¶¨ÒåµÄºê,Èç¹û³öÏÖ debug("A Message")µÄʱºò,ÓÉÓÚºêÕ¹¿ªºóÓиö¶àÓàµÄ¶ººÅ,ËùÒÔ½«µ¼Ö±àÒë´íÎó.
ΪÁ˽â¾öÕâ¸öÎÊÌâ,CPP ʹÓÃÒ»¸öÌØÊâµÄ"##"²Ù×÷,¸ñʽÈçÏÂ:
#define debug(format, ...) fprintf (stderr, format, ## __VA_ARGS__)
ÕâÀï,Èç¹û¿É±ä²ÎÊý±»ºöÂÔ»òΪ¿Õ,"##"²Ù×÷½«Ê¹Ô¤´¦ÀíÆ÷(preprocessor)È¥³ýµôËüÇ°ÃæµÄÄǸö¶ººÅ.
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
/*
kmalloc can apply 128KB memory only. This func support any continous memory allocate more than 2MB.
*/
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kallsyms.h>
#define KMEM_PAGES &nb ......
1. ·þÎñÆ÷nfsµÄÅäÖÃ
2. ¿Í»§¶ËnfsµÄÅäÖÃ
3. ʹÓÃnfs
3.1 ×÷Ϊ¹²ÏíÎļþϵͳmount
3.2 ×÷Ϊ¸ùÎļþϵͳmount
4.±¸ ×¢
nfsÊÇNetwork File System£¬»ùÓÚRPC(Remote Procedure Call ProtocolÔ¶³Ì¹ý³Ìµ ......
1.ÔÚLinuxÆô¶¯½Å±¾ÖÐÖÆ×÷jffs2
2.ÔÚLinuxÖÕ¶ËÏÂÖÆ×÷jffs2
3.±¸×¢
1.ÔÚLinuxÆô¶¯½Å±¾ÖÐÖÆ×÷jffs2
¾ßÌå²Ù×÷²½Ö裺
sysinitÖÐ:
echo “Make jffs2 filesystem:”
erase /dev/mtd5
cd /tmp
echo “test” > test.txt
mkfs.jffs2 –d /tmp > /dev/mtdblock5
&nbs ......
--ÕâÀïËùÓеÄperl¼¼ÊõÎÊÌâ¶¼ÊÇÎÒÆ½³£´¦ÀíÊý¾ÝµÄʱºòÒªÓõ½µÄ£¬¿ÉÄܲ»ÊǺÜÇ¿µÄ³ÌÐò£¬µ«ÊÇÏ£ÍûÄܺÍÈȰ®perlµÄͬ־£¬Ò»Æð·ÖÏí...
ÔںܶàÇé¿öÏ£¬ÎÒÃÇÐèÒª´ÓÔ¶´¦·þÎñÆ÷ÉÏÏÂÔØµ±Ìì»òÕß×òÌìÉú³ÉµÄÈÕÖ¾Îļþ£¬À´²é¿´Ò»Ð©ÎÒÃÇÐèÒªµÄ¶«Î÷»òÕß±¸·Ý¡£
Èç¹û²ÉÓÃÁËftp£¬ÄÇôÎÒÃÇ ......