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

Linux mmap

LinuxÌṩÁËÄÚ´æÓ³É亯Êýmmap, Ëü°ÑÎļþÄÚÈÝÓ³Éäµ½Ò»¶ÎÄÚ´æÉÏ(׼ȷ˵ÊÇÐéÄâÄÚ´æÉÏ), ͨ¹ý¶ÔÕâ¶ÎÄÚ´æµÄ¶ÁÈ¡ºÍÐÞ¸Ä, ʵÏÖ¶ÔÎļþµÄ¶ÁÈ¡ºÍÐÞ¸Ä, ÏÈÀ´¿´Ò»ÏÂmmapµÄº¯ÊýÉùÃ÷: Í·Îļþ: Ô­ÐÍ: void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offsize); ·µ»ØÖµ: ³É¹¦Ôò·µ»ØÓ³ÉäÇøÆðʼµØÖ·, ʧ°ÜÔò·µ»ØMAP_FAILED(-1). ²ÎÊý: addr: Ö¸¶¨Ó³ÉäµÄÆðʼµØÖ·, ͨ³£ÉèΪNULL, ÓÉϵͳָ¶¨. length: ½«ÎļþµÄ¶à´ó³¤¶ÈÓ³Éäµ½ÄÚ´æ. prot: Ó³ÉäÇøµÄ±£»¤·½Ê½, ¿ÉÒÔÊÇ: PROT_EXEC: Ó³ÉäÇø¿É±»Ö´ÐÐ. PROT_READ: Ó³ÉäÇø¿É±»¶ÁÈ¡. PROT_WRITE: Ó³ÉäÇø¿É±»Ð´Èë. PROT_NONE: Ó³ÉäÇø²»ÄÜ´æÈ¡. flags: Ó³ÉäÇøµÄÌØÐÔ, ¿ÉÒÔÊÇ: MAP_SHARED: ¶ÔÓ³ÉäÇøÓòµÄдÈëÊý¾Ý»á¸´ÖÆ»ØÎļþ, ÇÒÔÊÐíÆäËûÓ³Éä¸ÃÎļþµÄ½ø³Ì¹²Ïí. MAP_PRIVATE: ¶ÔÓ³ÉäÇøÓòµÄдÈë²Ù×÷»á²úÉúÒ»¸öÓ³ÉäµÄ¸´ÖÆ(copy-on-write), ¶Ô´ËÇøÓòËù×öµÄÐ޸IJ»»áд»ØÔ­Îļþ. ´ËÍ⻹ÓÐÆäËû¼¸¸öflags²»ºÜ³£ÓÃ, ¾ßÌå²é¿´linux Cº¯Êý˵Ã÷. fd: ÓÉopen·µ»ØµÄÎļþÃèÊö·û, ´ú±íÒªÓ³ÉäµÄÎļþ. offset: ÒÔÎļþ¿ªÊ¼´¦µÄÆ«ÒÆÁ¿, ±ØÐëÊÇ·ÖÒ³´óСµÄÕûÊý±¶, ͨ³£Îª0, ±íʾ´ÓÎļþÍ·¿ªÊ¼Ó³Éä.     ÏÂÃæËµÒ»ÏÂÄÚ´æÓ³ÉäµÄ²½Öè: ÓÃopenϵͳµ÷Óôò¿ªÎļþ, ²¢·µ»ØÃèÊö·ûfd. ÓÃmmap½¨Á¢ÄÚ´æÓ³Éä, ²¢·µ»ØÓ³ÉäÊ×µØÖ·Ö¸Õëstart. ¶ÔÓ³Éä(Îļþ)½øÐи÷ÖÖ²Ù×÷, ÏÔʾ(printf), ÐÞ¸Ä(sprintf). ÓÃmunmap(void *start, size_t lenght)¹Ø±ÕÄÚ´æÓ³Éä. ÓÃcloseϵͳµ÷ÓùرÕÎļþfd. ×¢ÒâÊÂÏî: ÔÚÐÞ¸ÄÓ³ÉäµÄÎļþʱ, Ö»ÄÜÔÚÔ­³¤¶ÈÉÏÐÞ¸Ä, ²»ÄÜÔö¼ÓÎļþ³¤¶È, ÒòΪÄÚ´æÊÇÒѾ­·ÖÅäºÃµÄ.


Ïà¹ØÎĵµ£º

·¢ÏÖselect×öÑÓʱwindowsûЧ¹û£¬LinuxÕý³£

 ÔÚÍêÉÆÎÒµÄ¿çÆ½Ì¨µÄ·¢ÓʼþÀà¿âʱ£¬select×öÑÓʱwindowsûЧ¹û£¬LinuxÕý³££¬»¹ÒÔΪÎÒ´úÂëд´íÁËÄØ£»ÔÚÍøÉÏËÑËØÏÂҲû·¢ÏÖÀàËÆËµ·¨£¬ÓÚÊÇÎÒ¾ÍдÁ˶ÎС²âÁË£¬¹ûÈ»selectÑÓʱÔÚwindowsÉÏËõË®ÁË
#include <iostream>
#include <time.h>
#ifdef WIN32
#include <winsock2.h>
#pragma comment(lib,"w ......

linux ½âѹÓë´ò°ü

 .tar
½â°ü£º tar xvf FileName.tar
´ò°ü£ºtar cvf FileName.tar DirName
£¨×¢£ºtarÊÇ´ò°ü£¬²»ÊÇѹËõ£¡£©
---------------------------------------------
.gz
½âѹ1£ºgunzip FileName.gz
½âѹ2£ºgzip -d FileName.gz
ѹËõ£ºgzip FileName
.tar.gz
½âѹ£ºtar zxvf FileName.tar.gz
ѹËõ£ºtar zcvf FileName ......

ÕÆÎÕ¸÷linux ³£ÓÃÃüÁîµÄʹÓÃ

ÕÆÎÕ¸÷linux ³£ÓÃÃüÁîµÄʹÓÃ
 
¶þ¡¢ÊµÑé²½Öè¼°½á¹û·ÖÎö
 
ÒªÇ󣺽«ÊµÑé»ñµÃµÄ½á¹û½øÐÐÃèÊö£¬»ù±¾ÄÚÈݰüÀ¨£º
1.         ´ò¿ªlinuxϵͳ,½øÈëÓû§µÇ¼½çÃæ,Èçͼ1
2.         ÊäÈëÓû§ÃûºÍÃÜÂë¾Í¿ÉÒÔ½øÈëÎı¾×Ö·û²Ù×÷½çÃæÁ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ