Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LINUXµ÷ÓÅ·½·¨×ܽá

LINUXµ÷ÓÅ·½·¨×ܽá
----------------------------------------------------------------------------------------------------------------------------
´ó¶àÊý Linux ·¢²¼°æ¶¼¶¨ÒåÁËÊʵ±µÄ»º³åÇøºÍÆäËû Transmission Control Protocol£¨TCP£©²ÎÊý¡£¿ÉÒÔÐÞ¸ÄÕâЩ²ÎÊýÀ´·ÖÅä¸ü¶àµÄÄڴ棬´Ó¶ø¸Ä½øÍøÂçÐÔÄÜ¡£ÉèÖÃÄں˲ÎÊýµÄ·½·¨ÊÇͨ¹ý proc ½Ó¿Ú£¬Ò²¾ÍÊÇͨ¹ý¶Áд /proc ÖеÄÖµ¡£ÐÒÔ˵ÄÊÇ£¬sysctl ¿ÉÒÔ¶ÁÈ¡ /etc/sysctl.conf ÖеÄÖµ²¢¸ù¾ÝÐèÒªÌî³ä /proc£¬ÕâÑù¾ÍÄܹ»¸üÇáËɵعÜÀíÕâЩ²ÎÊý¡£Çåµ¥ 2 չʾÔÚ»¥ÁªÍø·þÎñÆ÷ÉÏÓ¦ÓÃÓÚ Internet ·þÎñÆ÷µÄһЩ±È½Ï¼¤½øµÄÍøÂçÉèÖá£
# Use TCP syncookies when needed
net.ipv4.tcp_syncookies = 1
# Enable TCP window scaling
net.ipv4.tcp_window_scaling: = 1
# Increase TCP max buffer size
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# Increase Linux autotuning TCP buffer limits
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# Increase number of ports available
net.ipv4.ip_local_port_range = 1024 65000
 
½«ÕâЩÉèÖÃÌí¼Óµ½ /etc/sysctl.conf µÄÏÖÓÐÄÚÈÝÖС£µÚÒ»¸öÉèÖÃÆôÓà TCP SYN cookie¡£µ±´Ó¿Í»§»ú·¢À´Ð嵀 TCP Á¬½Óʱ£¬Êý¾Ý°üÉèÖÃÁË SYN 룬·þÎñÆ÷¾ÍΪÕâ¸ö°ë¿ªµÄÁ¬½Ó´´½¨Ò»¸öÌõÄ¿£¬²¢ÓÃÒ»¸ö SYN-ACK Êý¾Ý°ü½øÐÐÏìÓ¦¡£ÔÚÕý³£²Ù×÷ÖУ¬Ô¶³Ì¿Í»§»úÓÃÒ»¸ö ACK Êý¾Ý°ü½øÐÐÏìÓ¦£¬Õâ»áʹ°ë¿ªµÄÁ¬½Óת»»ÎªÈ«¿ªµÄ¡£ÓÐÒ»ÖÖ³ÆÎª SYN ·ºÀÄ£¨SYN flood£© µÄÍøÂç¹¥»÷£¬Ëüʹ ACK Êý¾Ý°üÎÞ·¨·µ»Ø£¬µ¼Ö·þÎñÆ÷ÓùâÄÚ´æ¿Õ¼ä£¬ÎÞ·¨´¦Àíµ½À´µÄÁ¬½Ó¡£SYN cookie ÌØÐÔ¿ÉÒÔʶ±ð³öÕâÖÖÇé¿ö£¬²¢Ê¹ÓÃÒ»ÖÖÓÅÑŵķ½·¨±£Áô¶ÓÁÐÖеĿռ䣨ϸ½Ú²Î¼û ²Î¿¼×ÊÁÏ Ò»½Ú£©¡£´ó¶àÊýϵͳ¶¼Ä¬ÈÏÆôÓÃÕâ¸öÌØÐÔ£¬µ«ÊÇÈ·±£ÅäÖÃÕâ¸öÌØÐÔ¸ü¿É¿¿¡£
ÆôÓà TCP ´°¿ÚÉìËõʹ¿Í»§»úÄܹ»ÒÔ¸ü¸ßµÄËÙ¶ÈÏÂÔØÊý¾Ý¡£TCP ÔÊÐíÔÚδ´ÓÔ¶³Ì¶ËÊÕµ½È·ÈϵÄÇé¿öÏ·¢ËͶà¸öÊý¾Ý°ü£¬Ä¬ÈÏÉèÖÃÊÇ×î¶à 64 KB£¬ÔÚÓëÑӳٱȽϴóµÄÔ¶³Ì¿Í»§»ú½øÐÐͨÐÅʱÕâ¸öÉèÖÿÉÄܲ»¹»¡£´°¿ÚÉìËõ»áÔÚÍ·ÖÐÆôÓøü¶àµÄ룬´Ó¶øÔö¼Ó´°¿Ú´óС¡£
ºóÃæËĸöÅäÖÃÏîÔö¼Ó TCP ·¢ËͺͽÓÊÕ»º³åÇø¡£ÕâʹӦÓóÌÐò¿ÉÒÔ¸ü¿ìµØ¶ªµôËüµÄÊý¾Ý£¬´Ó¶øÎªÁíÒ»¸öÇëÇó·þÎñ¡£»¹¿ÉÒÔÇ¿»¯Ô¶³Ì¿Í»§»úÔÚ·þÎñÆ÷·±Ã¦Ê±·¢ËÍÊý¾ÝµÄÄÜÁ¦¡£
×îºóÒ»¸öÅäÖÃÏîÔö¼Ó¿ÉÓõı¾µØ¶Ë¿ÚÊýÁ¿£¬ÕâÑù¾ÍÔö¼ÓÁË¿ÉÒÔͬʱ·þÎñµÄ×î´óÁ¬½ÓÊýÁ¿¡£
ÔÚÏÂÒ»´ÎÒýµ¼ÏµÍ³Ê


Ïà¹ØÎĵµ£º

Linux x86 run time process manipulation

[------------------------------------------------------------------------]
[-- Uninformed Research -- informative information for the uninformed. --]
[------------------------------------------------------------------------]
[-- Genre : Development ......

LinuxÏÂGUI¿ª·¢£ºGTK+ 2.0 + anjuta + glade

ÔÚLinux£¬¿ÉÒÔ¿¼ÂÇÓÃGTK(The GIMP Toolkit)À´×öGUI(Graphic User interface)¿ª·¢£¬¿ª·¢¹¤¾ß½¨ÒéʹÓÃanjuta + glade(Ã²ËÆeclipse+cdtÒ²¿ÉÒÔ)¡£
½¨Ò飺
Ò»¡¢ÏÈѧϰGTK+ 2.0±¾Éí£¬±ÈÈçÓÃvim+gcc+gdb+make+automake+autoconf...ÕâÑù¶Ô»ùÓÚGTKµÄͼÐοª·¢¹ý³Ì¾ÍÓÐÁË»ù±¾Á˽⣬ÒÔºóÓÃanjuata+glade×Ô¶¯Éú³É´úÂëµÄʱºòÈÝÒ×ÔĶÁºÍ· ......

[ת]Àí½âLinuxµÄÐÔÄÜ

ÏîÄ¿Öг£Óöµ½ÐèÒª¶ÔĿǰÔËÐеÄϵͳ½øÐÐЧÂÊ·ÖÎö£¬»òÅöµ½¿Í»§×ÉѯÈçºÎÓÅ»¯ÏµÍ³µÄЧÂÊÎÊÌâ¡£¸ü¶àµÄÇé¿öÊÇ£¬ÔÚϵͳ³öÏÖÎÊÌâµÄʱºò£¬ÐèÒª·ÖÎöÔ­Òò£¬¶¨Î»ÏµÍ³¹ÊÕÏ»òÆ¿¾±£¬µ±È»£¬×îºÃÊÇ¿ÉÒÔÒ»²¢½â¾ö¹ÊÕÏ¡£µ«Êµ¼ÊÉÏ£¬²Ù×÷ϵͳÓÅ»¯ÊÇÒ»¸ö·Ç³£¸´ÔÓµÄÎÊÌ⣬¿öÇÒlinuxÓÐ×Ô¼ºÒ»Ì×ÓбðÓÚÆäËû²Ù×÷ϵͳ¹ÜÀíµÄ»úÖÆ£¬ÓÉ´Ë»áÒýÆðºÜ¶à²»±ØÒªµÄÎ ......

linux Çý¶¯mmap²Ù×÷


Èý¡¢VMAºÍPAGE½á¹¹ ºÍmmapº¯Êý
 
1.page  Ö÷Òª³ÉÔ±
   atomic_t count; 
//Õâ¸öÒ³µÄÒýÓÃÊý. µ±Õâ¸ö count µôµ½ 0, ÕâÒ³±»·µ»Ø¸ø¿ÕÏÐÁбí.
void *virtual; 
//Èç¹ûÒ³±»Ó³É䣬Ôò±íʾÕâÒ³µÄÄÚºËÐéÄâµØÖ·; ·ñÔò, NULL.
unsigned long flags; 
//ÃèÊöҳ״̬µÄÒ»Ì×λ±êÖ¾. ÕâЩ°üÀ¨ ......

Virtio£ºÕë¶Ô Linux µÄ I/O ÐéÄ⻯¿ò¼Ü

¸Å¶øÑÔÖ®£¬virtio
ÊǰëÐéÄ⻯ hypervisor ÖÐλÓÚÉ豸֮ÉϵijéÏó²ã¡£virtio
ÓÉ Rusty Russell ¿ª·¢£¬Ëûµ±Ê±µÄÄ¿µÄÊÇÖ§³Ö×Ô¼ºµÄÐéÄ⻯½â¾ö·½°¸ lguest
¡£±¾ÎÄÔÚ¿ªÆªÊ±½éÉܰëÐéÄ⻯ºÍÄ£ÄâÉ豸£¬È»ºó̽Ë÷ virtio
µÄϸ½Ú¡£±¾ÎĵÄÖØµãÊÇÀ´×Ô 2.6.30 Äں˷¢ÐаæµÄ virtio
¿ò¼Ü¡£
Linux ÊÇ hypervisor չ̨¡£ÈçÎÒµÄ ÆÊÎö ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ