Ôö´óLinuxµÄsocket×î´óÁ¬½ÓÊý
ÒýÓÃhttp://hi.baidu.com/tim_bi/blog/item/f1038ed6e3399d2707088bb3.html
2009-02-28 22:58
×î½ü½ÓµÄÏîÄ¿ÊÇÄ£Äâ¶à¸ö
socket
¿Í»§¶ËÓë·þÎñÆ÷½øÐÐͨÐÅ¡£ÓÉÓÚ
Linux
ϵͳµÄÏÞÖÆ£¬ÔÚ
linux/include/linux/posix_types.h
ÎļþÖÐÓÐÈçϵĺ궨Ò壺
#undef __FD_SETSIZE
#define __FD_SETSIZE
1024
Õâ¸öºêÊǶÔ×î´óÎļþÃèÊö·ûµÄ¶¨ÒåΪ
1024
¡£µ±ÐèÒª
1024
¸öÒÔÉϵÄ
fd
ʱ£¬ÀýÈç
select()
º¯Êý¾Í»áÕìÌý³ö´í¡£Òò´ËÐèÒª½«
1024
¸Ä³ÉÐèÒªµÄÊýÄ¿£¬µ«×î¶à²»Äܳ¬¹ý
65535
¡£µ«½ö½öÐÞ¸ÄÕâ¸öÊDz»¹»µÄ¡£
µÚ¶þ²½¾ÍÐèÒªÐÞ¸ÄÒ»¸ö½ø³Ì×î´ó´ò¿ªµÄÎļþÊý¡£Æä¾ßÌå²½ÖèÊÇ£º
1
¡¢
cd /usr/src/linux-2.4/include/linux
2
¡¢
vi limits.h
¡¡±à¼Îļþ£º
#define NR_OPEN 90240
ÔֵΪ
1024
#define OPEN_MAX 10240
ÔֵΪ
1024
3
¡¢
vi fs.h
#define INR_OPEN 10240
ÔֵΪ
1024
#define NR_FILE 65536
ÔֵΪ
8192
£¬Õâ¸öֵΪÄÚ´æ
64/1M
µÄ±ÈÂʼÆË㣬
1G
ÄÚ´æ¼ÆËãΪ
:64*1024
#define NR_RESERVED_FILES 128
ÔֵΪ
10.
4
¡¢
cd /usr/src/linux-2.4/include/net
5
¡¢
vi tcp.h
#define TCP_LHTABLE_SIZE 128
ÔֵΪ
32.
±ãÓÚ
listen
ÕìÌý¶ÓÁУ¬Éè´ó¡£
ÉèÖÃ×î´ó´ò¿ªÎļþÊýÓëÄÚ´æÏà¹Ø£¬Ì«´óϵͳ»á±äÂý¡£
µÚÈý²½¾ÍÊDZàÒëÄںˣ¬Æä¾ßÌå²½ÖèÊÇ£º
1. make clean
2. make
3. make dep
4. make bzImage
½«
bzImage
µ¼Èë
/boot
ÖØÆôϵͳ¼´¿É
!
ÓÃ
1024
¸öÒÔÉϿͻ§¶ËÓë·þÎñÆ÷½øÐÐÁ¬½Ó£¬ÔÚ·þÎñÆ÷µÄÖÕ¶ËÓÃ
netstat |wc ÃüÁî
¿ÉÒÔͳ¼Æ³öµ±Ç°½¨Á¢µÄ
socket
µÄÁ¬½ÓÊý¡£
Àà±ð£ºLinux Socket
| Ìí¼Óµ½ËѲØ
| ä¯ÀÀ(1200
)
| ÆÀÂÛ
(0)
/*<![CDATA[*/
var pre = [true,'ulimitʹÓÃ', 'ulimitʹÓÃ','/tim%5Fbi/blog/item/81d0c5bf34b4830219d81fa1.html'];
var post = [true,'ÞÏÞεÄCLOSE_WAIT״̬ÒÔ¼°Ó¦¶Ô²ßÂÔ','ÞÏÞεÄCLOSE_WAIT״̬ÒÔ¼°Ó¦¶Ô²ß...', '/tim%5Fbi/blog/item/c7a3dd07bb25e3c57a89470b.html'];
if(pre[0] || post[0]){
document.write('<div style="height:5px;line-height:5px;"> </div><div id="in_nav">');
if(pre[0]){
document.write('ÉÏһƪ£º<a href="' + pre[3] + '" title="' + pre[1] + '">' + pre[2] + '</a> &n
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
¼ò½é
ÕâÆªÎÄÕÂÖ÷Òª¼Ç¼ÎÒÔÚÊÔͼ½â¾öÈçºÎ¾¡¿ÉÄܾ«È·µØÔÚij¸öÌØ¶¨µÄʱ¼ä¼ä¸ôÖ´ÐÐijÏî¾ßÌåÈÎÎñʱµÄ˼·Àú³Ì£¬²¢ÔÚºóÆÚ¶ÔÏà¹ØµÄAPI½øÐеĹéÄɺÍ×ܽᣬÒÔ±¸²Î¿¼¡£
ÎÊÌâÒý³ö
ºÜ¶àʱºò£¬ÎÒÃÇ»áÓÐÀàËÆ“ÿ¸ô¶à³¤Ê±¼äÖ´ÐÐijÏîÈÎÎñ
”µÄÐèÇó£¬Õ§¿´Õâ¸öÎÊÌâ²¢²»Äѽâ¾ö£¬ÊµÔò²¢²»ÈÝÒ×£¬ÓкܶàÒþº¬Ìõ¼þÐèÒª¿¼ÂÇ£¬Ö ......
»ùÓÚI/O RegionµÄ²Ù×÷º¯Êý__XXX_region()£¬LinuxÔÚÍ·Îļþinclude/linux/ioport.hÖж¨ÒåÁËÈý¸ö¶ÔI/OÄÚ´æ×ÊÔ´½øÐвÙ×÷µÄºê£º
¡¡¡¡¢Ùrequest_mem_region()ºê£¬ÇëÇó·ÖÅäÖ¸¶¨µÄI/OÄÚ´æ×ÊÔ´¡£
¡¡¡¡¢Úcheck_ mem_region()ºê£¬¼ì²éÖ¸¶¨µÄI/OÄÚ´æ×ÊÔ´ÊÇ·ñÒѱ»Õ¼Óá£
¡¡¡¡¢Ûrelease_ mem_region()ºê£¬ÊÍ·ÅÖ¸¶¨µÄI/OÄÚ´æ×ÊÔ ......
×÷Õߣºsixth
Ò»¡¢LinuxµÄÆô¶¯Á÷³Ì
1. ´ÓBIOSµ½KERNEL
BIOS×Ô¼ì£>MBR(GRUB)£>KERNEL£>KERNEL×Ô½âѹ£>Äں˳õʼ»¯£>ÄÚºËÆô¶¯
2. ÄÚºËÆô¶¯£º´´½¨1££½ø³Ì²¢Ö´ÐУ¬ÓÉËü´´½¨Èô¸ÉÄÚºËỊ̈߳¨kernel thread£©£¬È»ºó×°Èë²¢Ö´ÐгÌÐò/sbin/init£¨±ä³ÉÒ»¸öÓû§½ø³Ì£©¡£´Ëºó£¬init¸ù¾Ý/etc/initt ......
KS2009: How Google uses Linux
By Jonathan Corbet
October 21, 2009
LWN's 2009 Kernel Summit coverage
There may be no single organization which runs more Linux systems than Google. But the kernel development community knows little about how Google uses Linux and what sort of problems are ......