LinuxÄÚºËÈëÃÅ£¨Æß£©—— ±ØÒªµÄ±àÒë֪ʶ
ËùÓеÄÄں˴úÂ룬»ù±¾¶¼°üº¬ÁËinclude/linux/compile.hÕâ¸öÎļþ£¬ËùÒÔËüÊÇ»ù´¡£¬º¸ÇÁË·ÖÎöÄÚºËËùÐèÒªµÄһЩÁбàÒë֪ʶ£¬±¾²©¾Í·ÖÎö·ÖÎöÕâ¸öÎļþÀïµÄ´úÂ룺
#ifndef __LINUX_COMPILER_H
#define __LINUX_COMPILER_H
#ifndef __ASSEMBLY__
Ê×ÏÈÓ¡ÈëÑÛÁ±µÄÊǶÔ__ASSEMBLY__Õâ¸öºêµÄÅжϣ¬Õâ¸ö±äÁ¿Êµ¼ÊÊÇÔÚ±àÒë»ã±à´úÂëµÄʱºò£¬ÓɱàÒëÆ÷ʹÓÃ-DÕâÑùµÄ²ÎÊý¼Ó½øÈ¥µÄ£¬gcc»á°ÑÕâ¸öºê¶¨ÒåΪ1¡£ÓÃÔÚÕâÀÊÇÒòΪ»ã±à´úÂëÀ²»»áÓõ½ÀàËÆÓÚ__userÕâÑùµÄÊôÐÔ£¨¹ØÓÚ __userÕâÑùµÄÊôÐÔÊÇÔõô»Ø×ÓÊ£¬±¾²©ºóÃæ»áÌáµ½£©£¬ÒòΪÕâÑùµÄÊôÐÔÊÇÔÚ¶¨Ò庯Êý²ÎÊýµÄʱºò¼ÓµÄ£¬ÕâÑù±ÜÃâ²»±ØÒªµÄºêÔÚ±àÒë»ã±à´úÂëʱºòµÄÒýÓá£
#ifdef __CHECKER__
½ÓÏÂÀ´ÊÇÒ»¸ö¶Ô__CHECKER__Õâ¸öºêµÄÅжϣ¬ÕâÀïÐèÒª½²µÄ¶«Î÷±È½Ï¶à£¬ÊDZ¾²©µÄÖØµã¡£
µ±±àÒëÄں˴úÂëµÄʱºò£¬Ê¹ÓÃmake C=1»òC=2µÄʱºò£¬»áµ÷ÓÃÒ»¸ö½ÐSparseµÄ¹¤¾ß£¬Õâ¸ö¹¤¾ß¶ÔÄں˴úÂë½øÐмì²é£¬Ôõô¼ì²éÄØ£¬¾ÍÊÇ¿¿¶ÔÄÇЩÉùÃ÷¹ýSparseÕâ¸ö¹¤¾ßËùÄÜʶ±ðµÄÌØÐÔµÄÄں˺¯Êý»òÊDZäÁ¿½øÐмì²é¡£ÔÚµ÷ÓÃSparseÕâ¸ö¹¤¾ßµÄͬʱ£¬ÔÚSparse´úÂëÀ»á¼ÓÉÏ#define __CHECKER__ 1µÄ×ÖÑù¡£»»¾ä»°Ëµ£¬¾ÍÊÇ£¬Èç¹ûʹÓÃSparse¶Ô´úÂë½øÐмì²é£¬ÄÇôÄں˴úÂë¾Í»á¶¨Òå__CHECKER__ºê£¬·ñÔò¾Í²»¶¨Òå¡£¾ßÌå½âÊÍÇë·ÃÎÊ£ºhttp://linux.die.net/man/1/sparse
ÀýÈ磺
# define __user __attribute__((noderef, address_space(1)))
Õâ¸öºêÊÇÖØµã£¬ÓÃÀ´¼ì²éÊÇ·ñÊôÓÚÓû§¿Õ¼ä£¡ÕâÀï¾ÍÄÜ¿´³öÀ´£¬ÀàËÆÓÚ__attribute__((noderef, address_space(1)))ÕâÑùµÄÊôÐÔ¾ÍÊÇSparseÕâ¸ö¹¤¾ßËùÄÜʶ±ðµÄÁË¡£
ÆäËûµÄÄÇЩ¸öÊôÐÔÊÇÓÃÀ´¼ì²éʲôµÄÄØ£¬ÎÒÒ»¸ö¸öµØ×ö½éÉÜ¡£
__user Õâ¸öÌØÐÔ£¬¼´__attribute__((noderef, address_space(1)))£¬ÊÇÓÃÀ´ÐÞÊÎÒ»¸ö±äÁ¿µÄ£¬Õâ¸ö±äÁ¿±ØÐëÊǷǽâ³ý²Î¿¼£¨__attribute__((noderef))——no dereference£©µÄ£¬¼´Õâ¸ö±äÁ¿µØÖ·±ØÐëÊÇÓÐЧµÄ£¬¶øÇÒ±äÁ¿ËùÔڵĵØÖ·¿Õ¼ä±ØÐëÊÇ1£¨__attribute__((address_space(1)))£©£¬¼´Óû§³ÌÐò¿Õ¼äµÄ¡£ÕâÀïSparse¹¤¾ß°Ñ³ÌÐò¿Õ¼ä·Ö³ÉÁË3¸ö²¿·Ö£¬0±íʾnormal space£¬¼´ÆÕͨµØÖ·¿Õ¼ä£¬¶ÔÄں˴úÂëÀ´Ëµ£¬µ±È»¾ÍÊÇÄÚºË¿Õ¼äµØÖ·ÁË¡£1±íʾÓû§µØÖ·¿Õ¼ä£¬Õâ¸ö²»Óöི£¬»¹ÓÐÒ»¸ö2£¬±íʾÊÇÉ豸µØÖ·Ó³Éä¿Õ¼ä£¬ÀýÈçÓ²¼þÉ豸µÄ¼Ä´æÆ÷ÔÚÄÚºËÀïËùÓ³ÉäµÄµØÖ·¿Õ¼ä¡£
ËùÒÔÔÚÄں˺¯ÊýÀÓ
Ïà¹ØÎĵµ£º
ÍøÂçÉϺÍÊéÉÏÓи÷ÖÖÅäÖÃJDK»·¾³±äÁ¿µÄ·½·¨£¬µ«ÊÇÈ·ÃèÊö²»Ò»Ö£¬¸ø³õѧÕßÔì³ÉÁËÒ»¶¨µÄÀ§ÄÑ£¨ÏëÆðµ±Ê±µÄÎÒ£©¡£ÒÔÏÂÊÇÎÒ×Ô¼º×ܽáµÄ£¬°Ù·Ö°Ù¿ÉÒÔÓá£
´ËÎÄÏêÊöÁËÈçºÎÔÚwindowsºÍlinuxÏÂÅäÖû·¾³±äÁ¿¡£
Ò»¹²ÐèÒªÅäÖÃ3¸ö±äÁ¿£º
JAVA_HOME£ºÖ÷ÒªÊÇΪÁËÆäËüÁ½¸öʹÓ㬼ò»¯ÅäÖã¬jdk°²×°µÄÍêÕûµÄ·¾¶Ãû£¬Ò»Ö±µ½jdk...Ϊֹ¡£
CLAS ......
LinuxºËÐöÖØÒª¸úʱ¼äÓйصÄÃû´Ê»ò±äÊý£¬µ×Ͻ«½éÉÜHZ¡¢tickÓëjiffies¡£
£¨1£©HZ
LinuxºËÐÄÿ¸ô¹Ì¶¨ÖÜÆÚ»á·¢³ötimer interrupt (IRQ 0)£¬HZÊÇÓÃÀ´¶¨ÒåÿһÃëÓм¸´Îtimer interrupts¡£¾ÙÀýÀ´Ëµ£¬HZΪ1000£¬´ú±íÿÃëÓÐ1000´Îtimer interrupts¡£ HZ¿ÉÔÚ±àÒëºËÐ ......
linux ÊÂÇéÒª´ÓSSH˵Æð£¬×ʼÎÒÃÇÔ¶³Ì·ÃÎÊlinux·þÎñÆ÷£¬¶¼ÊÇÓõÄSSH£¬Õâ¸ö¶«Î÷ºÜ·½±ãÁË£¬ÌṩÁËÃüÁîÐУ¬»¹Óд°¿Ú½çÃæ£¬ÓÃÆðÀ´·½±ã£¬ÏàÐÅÓùýµÄÈ˶¼ÓÐÌå»á£¬µ«Êǵ±ÎÒ»»³ÉflashFXPÁ¬½ÓͬÑùµÄlinux·þÎñÆ÷ʱÔõô¶¼Á¬²»ÉÏ£¬ÕâÏÂÓôÃÆ»µÁË£¬Ôõô°ìÄØ£¿ ÔÚ¾ÀúÁËÎÞÊý´ÎµÄ³¢ÊÔÖ®ºó£ ......
ʵÏÖÒ»¸öÁ´±í£¬Íê³ÉÁ´±íµÄ²åÈ룬²éÕÒ£¬É¾³ý
typedef struct _FIFO_M{
void *pdata;
struct _FIFO_M *pNext;
}FIFO_M,* pFIFO_M;
typedef struct _FIFO{
pFIFO_M head;
pFIFO_M tail;
pFIFO_M pos;
int mcount;//½Úµã¸öÊý
int max_count;//½Úµã×î´ó¸öÊý¡£
}FIFO,* pFIFO;
......
chmod(change mode)
¹¦ÄÜ˵Ã÷£º±ä¸üÎļþ»òĿ¼µÄȨÏÞ¡£
Óï¡¡¡¡·¨£ºchmod [-cfRv][--help][--version][<ȨÏÞ·¶Î§>+/-/=<ȨÏÞÉèÖÃ...>][Îļþ»òĿ¼...] »ò chmod [-cfRv][--help][--version][Êý×Ö´úºÅ][Îļþ»òĿ¼...] »ò chmod [-cfRv][--help][--reference=<²Î¿¼ ......