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

linux socketѧϰ±Ê¼Ç£¨µÚÈýÕ£©


  IPµØÖ·ÊÇÒ»¸ö32λµÄ¶þ½øÖÆÊý£¬ËüÓɵã·ÖÊ®½øÖƼǷ¨±íʾ£¬Ã¿Ò»¸öÊ®½øÖÆÊý´ú±íÒ»¸ö8λÎÞ·ûºÅÕûÐÍÊý£¬ËùÒÔ·¶Î§ÔÚ0-255Ö®¼ä¡£
Ò»¸öIPµØÖ··ÖΪÍøÂçµØÖ·ºÍÖ÷»úµØÖ·£¬ÍøÂçµØÖ·Çø·Ö²»Í¬ÍøÂ磬Ö÷»úµØÖ·Çø·ÖÏàͬÍøÂçÖв»Í¬Ö÷»ú¡£²»Í¬µÄIPµØÖ·ÀàËûÃǵÄÖ÷»úÍøÂçµØÖ·Ò²ÊDz»¹Ì¶¨µÄ£¬A,B,CÀàµØÖ·¶¨ÒåÁËijһÖ÷»úÌض¨µÄIPµØÖ·£¬DÀàΪ×é²¥µØÖ·£¬EÀàΪ±£Áô½ñºóËùÓ᣾ßÌåµÄ»®·ÖÊÇ£º           ·ÖÀà ×îµÍ ×î¸ß ÍøÂçλ Ö÷»úλ
A 0.0.0.0 127.255.255.255 7 24
B 128.0.0.0 191.255.255.255 14 16
C 192.0.0.0 223.255.255.255 21 8
D 224.0.0.0 239.255.255.255 28 N/A
E 240.0.0.0 247.255.255.255 27 N/A       
ÍøÂçÑÚÂëµÄ×÷ÓÃÔÚÓÚ°ÑÍøÂçµØÖ·´ÓIPµØÖ·ÖÐÌáÈ¡³öÀ´£¬Êµ¼ÊÉÏ´ú±íÍøÂçÑÚÂëµÄIPºÅÓëijһÌض¨µÄIPµØÖ·½øÐГ°´Î»Ó딡£            ·ÖÀà ×îµÍ ×î¸ß ÍøÂçÑÚÂë
A 0.0.0.0 127.255.255.255 24
B 128.0.0.0 191.255.255.255 16
C 192.0.0.0 223.255.255.255 8
ÒÔÏÂÊǶÔIPµØÖ·½øÐмì²éºÍ·ÖÀàµÄÔ´´úÂë
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(int argc, char **argv)
{
int x;
struct sockaddr_in adr_inet;
int len_inet;
unsigned msb;
char class;
char *netmask;
static struct {
unsigned char ip[4];
} addresses[] = {
{ {
44, 135, 86, 12}}, { {
127, 0, 0, 1}}, { {
172, 16, 23, 95}}, { {
192, 168, 9, 1}},};
for (x = 0; x < 4; ++x) {
memset(&adr_inet, 0, sizeof(adr_inet));
adr_inet.sin_family = AF_INET;
adr_inet.sin_port = htons(9000);
memcpy(&adr_inet.sin_addr.s_addr, addresses[x].ip, 4);
len_inet = sizeof(adr_inet);
msb = *(unsigned char *) &adr_ine


Ïà¹ØÎĵµ£º

LinuxÄں˱àÂëÊ°½õ

1.Ò»ÖÖ¶¨Ò庯ÊýÖ¸ÕëµÄ·½·¨
<linux/proc_fs.h>
typedef int (read_proc_t)(char *page, char **start, off_t offset, int count, int *eof, void *data);
read_proc_t *proc_read;
    ÕâÖÖ¶¨Òå·½·¨ÓÐÒ»¸öÓÅÊƾÍÊÇ£¬¼´Ê¹ÄãûÓп´µ½read_proc_tµÄ¶¨Ò壬ҲÄܹ»Çå³þµÄÖªµÀproc_readÊÇÒ»¸öÖ¸Õ룬ÈçÏÂÃæ ......

LinuxÖеÄÄÚ´æ·ÖÅäºÍÊÍ·ÅÖ®__free_pages()º¯Êý·ÖÎö

  ¼ÇµÃÎÒÃÇÔÚÉÏƪÎÄÕÂmem_init()·ÖÎöÖÐÌáµ½__free_page()º¯ÊýÂð£¿ÎÒÃÇÏÖÔÚÀ´ÍêÉÆËü¡£ËüµÄµ÷Óùý³ÌÊÇÕâÑùµÄ£ºmem_init()->free_all_bootmem_node():ÎÒÃÇÖªµÀÕâ¸öº¯ÊýÊÇͳ¼ÆÒ»¹²ÊÍ·ÅÁ˶àÉÙ¿ÕÏÐÒ³¡£->free_all_bootmem_core()¾ÍÊÇÔÚÕâ¸öº¯ÊýÀïÃæÏȺó¶à´Îµ÷ÓÃ__free_pages()º¯Êý¡£Ä¿µÄ¾ÍÊÇΪÁËÊÍ·Åÿ¸öÄÚ´ænodeÀïÃæÎ ......

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ÓкÎÒâÒ壿






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
        ¸ù¾Ý¹úÍâýÌ屨µÀ£¬½üÈÕ£¬³¯ÏÊ£¨
North
Korea
£©ÍƳöÒ»¿î×ÔÖ÷Æ·ÅÆ
Linux
·¢Ðа棬´Ë¾ÙÓкÎÒâÒ壿
 
      £¨±±£©³¯ÏÊÊÇÒ»¸öºÜÌرðµÄ¹ú¶È£¬¹ú ......

linux iscsi initiator ¹¤¾ß

open-iscsi£ºhttp://www.open-iscsi.org/
iscsi Èí¼þµÄÆÀ¼Û
ÖÁÓÚÈí¼þ±íÏÖµÄÇ¿ÈõÈçºÎ?´Ë¿É͸¹ýʵ¼ÊµÄCPU ÔËËãÕ¼ÓÃ(Õ¼ÓðٷֱÈÓúµÍÓúºÃ)¡¢I/O ´«Êä±íÏÖ(ÿÃëÍê³É¶àÉÙ¸öI/O ´¦Àí£¬¼´IOPS)À´ÆÀ¶Ï£¬ÁíÍâÒªÖØÊÓÖ§³ÖµÄGbE ²ã¼¶¡¢´íÎóÐÞÕý²ã¼¶£¬Èç10GbE ÓÅÓÚ1GbE£¬ÒÔ¼°ERL2 ÓÅÓÚERL1 ÓÅÓÚERL0¡£ÒÔ¼°ÊÇ·ñÖ§³ÖMPIO£¬MPIO Ö¸µÄÊÇÒ»²¿ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ