linuxÄÚºËÖеÄHlistÓëList_head½á¹¹
List_Head
²Ù×÷ϵͳÄں˾³£ÐèҪά»¤Êý¾Ý½á¹¹¡£ÄÚºËÓбê×¼µÄÑ»·Á´±í¡¢Ë«Ïò
Á´±íµÄʵÏÖ¡£ÔÚ
<Linux/list.h>
ÎļþÖж¨ÒåÁËÒ»¸ö
list_head
ÀàÐͼòµ¥½á¹¹£º
struct
list_head {
struct list_head *next, *prev;
};
ͨÓÃÁ´±íµÄ³£ÓÃÓÃ;Êǽ«Ä³Ò»¸öÊý¾Ý½á¹¹±¾Éí´®³ÉÁ´±í£¬»ò½«Ä³Ð©Á´
±íÓëÒ»¸öÊý¾Ý½á¹¹ÁªÏµÆðÀ´£¬ÕâÁ½ÖÖÇé¿öʵÖÊÉ϶¼ÊÇÓɽṹ
list_head
×é³ÉÁ´±í£¬Ö»ÊÇ
list_head
Ëù
“
±³¸º
”
µÄ¸ºÔز»Ò»Ñù¡£ÏÂÃæ·Ö±ð¾ÙÀý˵Ã÷ÕâÁ½ÖÖÓÃ;¡£
ÒÔÏÂʾÀý˵Ã÷ÁËÈçºÎ½«Ä³Ò»¸öÊý¾Ý½á¹¹±¾Éí´®³ÉÁ´±í£¬²¢¶ÔÁ´±í½øÐÐ
²Ù×÷£¬Í¬Ê±»¹ËµÃ÷
list_head
½á¹¹µÄʵÏÖÓëʹÓá£
ʾÀý£º½«Ä³Ò»¸öÊý¾Ý½á¹¹±¾Éí´®³ÉÁ´±í¡£
£¨
1
£©¼ÓÈë
list_head
½á¹¹³ÉÔ±¡£
¼ÙÉèÓÐÒ»¸ö
example_struct
½á¹¹ÐèÁ¬½Ó³ÉÁ´±í£¬Òò¶øÔÚÆä½á¹¹ÀïÃæ¼ÓÉÏ
list_head
³ÉÔ±£¬¾Í×é³ÉÁ˽ṹÁ´±í£¬ÈçÏ£º
struct
example_struct {
struct list_head list;
int priority;
……//
ÆäËû³ÉÔ±
};
ÔÚ
example_struct
½á¹¹ÖеÄ
list
³ÉÔ±£¬ÓÃÀ´½«
example_struct
½á¹¹´®³ÉÁ´±í¡£¿ÉÀí½âΪ
list_head“
±³¸º
”
µÄ¸ºÔØÊÇ
example_struct
½á¹¹¡£
£¨
2
£©´´½¨
list_head
½á¹¹¡£
ʹÓÃǰ±ØÐëÉêÇëÁ´±íÍ·²¢ÓÃ
INIT_LIST_HEAD
ºêÀ´
³õʼ»¯Á´±íÍ·¡£¿ÉʹÓÃÁ½ÖÖ·½·¨¡£
·½·¨
1
£º
struct
list_head example_list;
INIT_LIST_HEAD(&example_list);
·½·¨
2
£º
LIST_HEAD(example_list);
ÆäÖУ¬ÕâÁ½¸öºêÔÚ
include/Linux/list.h
Öж¨ÒåÈçÏ£º
#define
LIST_HEAD(name) \
struct list_head name = LIST_HEAD_INIT(name)
#define
INIT_LIST_HEAD(ptr) do { \
(ptr)->next = (ptr); (ptr)->prev = (ptr); \
} while (0)
ºê¶¨Òå
INIT_LIST_HEAD
³õʼ»¯ÁËÁ´±íÍ·£¬¼´Ïòǰ¡¢ÏòºóµÄÖ¸Õë¶¼Ö¸ÏòÁ´±íÍ·¡£ÕâÑù£¬¾ÍÒÑ
³õʼ»¯ÁËÒ»¸ö
example_list
µÄÁ´±íÍ·£¬ÒÔºó¾Í¿ÉÒÔÏòÁ´±íÖÐÔö¼ÓÁ´±íÔªËØÁË¡£
£¨
3
£©Á´±íÓëÓû§½á¹¹Á¬½Ó¡£
list_entry
ºê½«
exmplelist
Á´±íÓë
exmple_struct
½á¹¹ÀàÐÍÁ¬½ÓÆðÀ´¡£
ÓÐÁ½ÏîÁ´±íµÄÁ´±íÍ·
List_entry
ºêµÄЧ¹û
º¬
list_head
Ïà¹ØÎĵµ£º
Qt ÒÔÆä¿ªÔ´£¬Ãâ·Ñ£¬ÍêÈ«ÃæÏò¶ÔÏ󣨺ÜÈÝÒ×À©Õ¹£©£¬ÔÊÐíÕæÕýµÄ×é¼þ±à³ÌÒÔ¼°¿ÉÒÆÖ²¿çƽ̨µÈÖî¶àÓÅÊÆµÃµ½Ô½À´Ô½¶àµÄ¿ª·¢ÈËÔ±µÄÇàíù¡£Qt
Creator ÊÇ Nokia ¹Ù·½ÍƳöµÄרÃÅÕë¶Ô Qt ¿ª·¢µÄ IDE¡£±¾ÎÄÏêϸ½éÉÜÁË Linux Ï Qt Creator µÄ°²×°£¬²¢Õë¶Ô
Qt Creator µÄʹÓþÙÁËÒ»¸ö Hello World ¼¶±ðµÄÀý×Ó£¬Ï£Íû¶ÔµÚÒ»´Î½Ó´¥ Qt Cre ......
/etc/hostsÒ»¶¨ÒªÓÐÑϸñµÄ¸ñʽ!!!
grid control 10.2.0.1.1°²×°×¢ÒâÊÂÏî
1.hostname
ÍøÂ磺
¾¡Á¿Ê¹Óþ²Ì¬IP£¬/etc/hostsµÄÎļþ¸ñʽºÜÖØÒª£¬²»ÖªµÀÊǸöBUG»¹ÊÇÒªÇó¾ÍÊÇÄÇôÑϸñ¡£ÎÒÒ»¿ªÊ¼¾ÍÊÇÔÚÕâ³ÔµÄ¿÷£¬ÔÚprecheckÐèÇóµÄʱºòºöÂÔÁË/etc/hosts¼ì²éʧ°ÜµÄ´íÎ󣬽á¹û°²×°Èí¼þûÎÊÌ⣬µ«ÅäÖõÄʱºò³ö´í ......
Linux, named after the inventor, Linus Torvalds, is a so different OS for everyone against Windows. To everyone who used to use Windows, Linux need us to do more for everything which we usually do by computer, such as playing a video.
Someone says, Linux is for the ones who are good at the computer ......
±à¼gedit /etc/fstab:
//192.168.1.1/winshare /mnt/share defaults,auto,username=windowsÓû§Ãû, password=windowsÃÜÂë 0 0
±¸×¢£º
£¨1£©ÖÕ¶ËÃüÁîÐйÒÔØ£ºmount //192.168.1.1/winshare /mnt/share -o user=windowsÓû§Ãû%windowsÃÜÂë
£¨2£©etc/rc.d/rcÔò¸ù¾ÝÆä²ÎÊýÖ¸¶¨µÄÔËÐÐģʽ(ÔËÐм¶±ð£¬ÔÚinittabÎļþÖпÉÒÔÉèÖ ......
Ò»¡¢Qt3/EmbeddedµÄÊäÈëÉ豸µÄÇý¶¯½Ó¿ÚʵÏÖÔÀí·ÖÎö
1¡¢Qt3/Embedded°ÑÓëµ×²ãÓ²¼þÏà¹ØµÄÔ´Îļþͳһ·ÅÔÚsrc/embeddedĿ¼Ï£¬ËùÒÔÎÒÃÇ×îºÃÒ²°Ñ×Ô¼ºµÄÉ豸Çý¶¯½Ó¿ÚÎļþ·Åµ½´ËĿ¼¡£
2¡¢Qt/EmbeddedÖеÄÊäÈëÉ豸·ÖΪÊó±êÀàÓë¼üÅÌÀà¡£ÔÚ3.x°æ±¾ÏµÁÐÖУ¬Êó±êÉ豸µÄ³éÏó»ùÀàΪQWSMouseHandler£¬ÔÚsr ......