LinuxÉ豸Çý¶¯Ö®——¹¹½¨ÄÚºËÊ÷
ѧLinuxÒ»Äê¶àÁË£¬¶ÔÇý¶¯µÄ֪ʶһµã¶¼Á˽⣬ÉÏÖÜÂòÁ˱¾¡¶LinuxÉ豸Çý¶¯¡·£¬O'REILLY³ö°æ£¬´òËãѧϰѧϰ¡£Ñ§Ï°¹ýµÄ´óÏÀ£¬Ï£Íû¿ÉÒÔÖ¸µ¼Ö¸µ¼¡£
Ê×ÏÈÏÂÔØLinuxÄںˣ¬°´×÷ÕßµÄ˵·¨£¬Ö»ÒªÊÇlinux-2.6.xxxµÄÄں˶¼¿ÉÒÔ£¬ÎÒµÄÊÇlinux-2.6.33.2¡£ÓÐÎ»ÍøÓÑ˵ÏÂÔØºó×îºÃ½âѹµ½/usr/src/Ŀ¼Ï£¬½âѹ
ÔÚ¹¹½¨ÄÚºËÊ÷ÊDzο¼ÁËÔÊéµÚËÄÕ“µ÷ÊÔ¼¼Êõ”£¬ÅäÖÃÁ˼¸Ìõµ÷ÊÔʱ¿ÉÄÜ»áÓõ½µÄÑ¡Ïî,ÕâЩѡÏî´ó¶àÔÚ“kernel hacking“²Ëµ¥ÖУº
CONFIG_DEBUG_KERNEL£ºÊ¹ÆäËûµ÷ÊÔÑ¡Ïî¿ÉÓÃ
CONFIG_DEBUG_SLAB£º´ò¿ªÄÚºËÄÚ´æ·ÖÅ亯ÊýÖеĶà¸öÀàÐͼì²é
CONFIG_DEBUG_PAGEALLOC£ºÔÚÊÍ·Åʱ£¬È«²¿ÄÚ´æÒ³´ÓÄں˵ØÖ·¿Õ¼äÖÐÒÆ³ö¡£¸ÃÑ¡Ï´ó´ó½µµÍÔËÐÐËÙ¶È£¬µ«¿ÉÒÔ¿ìËÙ¶¨Î»Ìض¨µÄÄÚ´æË𻵴íÎóµÄËùÔÚλÖÃ
CONFIG_DEBUG_SPINLOCK
CONFIG_DEBUG_SPINLOCK_SLEEP
CONFIG_INIT_DEBUG
CONFIG_DEBUG_INFO
Ïà¹ØÎĵµ£º
×î½üÔÚ¿´Linux 2.6.21Äں˵ÄI2CÇý¶¯£¬Ò²ÔÚÍøÉϲéÁËÒ»ÏÂ×ÊÁÏ£¬ÓдíÒ²Óжԣ¬ÓÐЩÐĵ㬼ǼÏÂÀ´°É¡£ÀïÃæÈÏʶ»òÐí¶àÓв»µ±Ö®´¦£¬»¹¿ÒÇëÖ¸Õý¡£
1. I2C ÐÒé
1.1 I2C×ÜÏß¹¤×÷ÔÀí
I2C×ÜÏßÊÇÓÉÊý¾ÝÏßSDAºÍʱÖÓSCL¹¹³ÉµÄ´®ÐÐ×ÜÏߣ¬¸÷ÖÖ±»¿ØÖÆÆ÷¼þ¾ù²¢ÁªÔÚÕâÌõ×ÜÏ ......
·þÎñÃû ±ØÐ裨ÊÇ/·ñ£©ÓÃ;ÃèÊö ×¢½â
acon ·ñ ÓïÑÔÖ§³Ö ÌØ±ðÖ ......
¾Å¡¢kill
1.×÷ÓÃ
killÃüÁîÓÃÀ´ÖÐÖ¹Ò»¸ö½ø³Ì¡£
2.¸ñʽ
kill [ £s signal | £p ] [ £a ] pid ...
kill £l [ signal ]
3.²ÎÊý
£s£ºÖ¸¶¨·¢Ë͵ÄÐźš£
£p£ºÄ£Äâ·¢ËÍÐźš£
£l£ºÖ¸¶¨ÐźŵÄÃû³ÆÁÐ±í¡£
pid£ºÒªÖÐÖ¹½ø³ÌµÄIDºÅ¡£
Signal£º±íʾÐźš£
4.˵Ã÷
½ø³ÌÊÇLinuxϵͳÖÐÒ»¸ö·Ç³£ÖØÒªµÄ¸ÅÄî¡£LinuxÊÇÒ»¸ö¶à ......
1 ÒýÑÔ
¡¡¡¡Linux²Ù×÷ϵͳÒò¾ßÓÐÔ´´úÂ빫¿ª¡¢±ãÓڲüõ¡¢Óй㷺µÄ´¦ÀíÆ÷Ö§³ÖµÈÓŵ㣬³ÉΪµ±Ç°Ç¶ÈëʽϵͳµÄÈÈÃÅÑ¡Ôñ¡£»ùÓÚI2C×ÜÏߵļüÅÌÀ©Õ¹É豸Ö÷ÒªÓÃÓÚÂú×ãǶÈëʽÉ豸ÖжԶఴ¼üµÄÐèÇó£¬Çý¶¯³ÌÐòÔÚϵͳÆô¶¯Ê±¶ÔÓ²¼þ½øÐгõʼ»¯¡£ÔÚϵͳÆô¶¯ºóʵÏÖÓ²¼þºÍÓ¦ÓóÌÐòÖ®¼äµÄÊý¾Ý½»»¥¡£Õë¶ÔS3C2410΢´¦ÀíÆ÷ºÍ¼üÅÌɨÃè¹ÜÀíÆ÷¼þ£¬ÉîÈ ......
System V
IPC
²ÎÊý
Ãû×Ö
ÃèÊö
ºÏÀíȡֵ
SHMMAX
×î´ó¹²ÏíÄÚ´æ¶Î³ß´ç£¨×Ö½Ú£©
×îÉÙÈô¸ÉÕ×£¨¼ûÎı¾£©
SHMMIN
×îС¹²ÏíÄÚ´æ¶Î³ß´ç£¨×Ö½Ú£©
1
SHMALL
¿ÉÓù²ÏíÄÚ´æµÄ×ÜÊýÁ¿£¨×Ö½Ú»òÕßÒ³Ãæ£©
Èç¹ûÊÇ×Ö½Ú£¬¾ÍºÍ SHMMAX
Ò»Ñù£»Èç¹ûÊÇÒ³Ãæ£¬ceil(SHMMAX/P ......