Linux AIO
LinuxµÄI/O»úÖÆ¾ÀúÁËһϼ¸¸ö½×¶ÎµÄÑݽø£º
1. ͬ²½×èÈûI/O: Óû§½ø³Ì½øÐÐI/O²Ù×÷£¬Ò»Ö±×èÈûµ½I/O²Ù×÷Íê³ÉΪֹ¡£
2. ͬ²½·Ç×èÈûI/O: Óû§³ÌÐò¿ÉÒÔͨ¹ýÉèÖÃÎļþÃèÊö·ûµÄÊôÐÔO_NONBLOCK£¬I/O²Ù×÷¿ÉÒÔÁ¢¼´·µ»Ø£¬µ«ÊDz¢²»±£Ö¤I/O²Ù×÷³É¹¦¡£
3. Ò첽ʼþ×èÈûI/O: Óû§½ø³Ì¿ÉÒÔ¶ÔI/Oʼþ½øÐÐ×èÈû£¬µ«ÊÇI/O²Ù×÷²¢²»×èÈû¡£Í¨¹ýselect/poll/epollµÈº¯Êýµ÷ÓÃÀ´´ïµ½´ËÄ¿µÄ¡£
4. Ò첽ʱ¼ä·Ç×èÈûI/O: Ò²½Ð×öÒì²½I/O(AIO)£¬Óû§³ÌÐò¿ÉÒÔͨ¹ýÏòÄں˷¢³öI/OÇëÇóÃüÁ²»ÓõȴøI/OʼþÕæÕý·¢Éú£¬¿ÉÒÔ¼ÌÐø×ö
ÁíÍâµÄÊÂÇ飬µÈI/O²Ù×÷Íê³É£¬Äں˻áͨ¹ýº¯Êý»Øµ÷»òÕßÐźŻúÖÆÍ¨ÖªÓû§½ø³Ì¡£ÕâÑùºÜ´ó³Ì¶ÈÌá¸ßÁËϵͳÍÌÍÂÁ¿¡£
ÏÂÃæ¾ÍAIO×öÏêϸ½éÉÜ£º
ҪʹÓÃaioµÄ¹¦ÄÜ£¬ÐèÒªincludeÍ·Îļþaio.h£¬ÔÚ±àÒëÁ¬½ÓµÄʱºòÐèÒª¼ÓÈëPOSIXʵʱÀ©Õ¹¿ârt.ÏÂÃæ¾Íaio¿âµÄʹÓÃ×ö½éÉÜ¡£
1. AIOÕû¸ö¹ý³ÌËùʹÓõÄÊý¾Ý´æ·ÅÔÚÒ»¸ö½á¹¹ÌåÖУ¬struct aiocb,aio control block.¿´¿´Í·ÎļþÖе͍Ò壺
/* Asynchronous I/O control block. */
struct aiocb
{
int aio_fildes; /* File desriptor. */ ÐèÒªÔÚÄĸöÎļþÃèÊö·ûÉϽøÐÐI/O
int aio_lio_opcode; /* Operation to be performed. */ Õâ¸öÊÇÕë¶ÔÅúÁ¿I/OµÄÇé¿öÓÐЧ£¬¶Áд²Ù×÷ÀàÐÍ
int aio_reqprio; /* Request priority offset. */ ÇëÇóÓÅÏȼ¶£¨If _POSIX_PRIORITIZED_IO is defined, and this file supports it, then the
asynchronous operation is submitted at a priority equal to that of the
&n
Ïà¹ØÎĵµ£º
Ò»¡¢ÒýÑÔ£º
±¾ÎĵµµÄÄÚÈݴ󲿷ÝÄÚÈݶ¼ÊÇ´ÓÍøÉÏÊÕ¼¯¶øÀ´£¬È»ºóÅäºÏһЩеĽØÍ¼£¨Äں˰汾£ºV2.4.19£©¡£ÔÚÿһÅäÖÃÏîºó»áÓÐÒ»¸öÑ¡ÔñÖ¸ÄϵIJ¿·Ý£¬ÓÃÀ´Ö¸µ¼´ó¼ÒÔõôÑù¸ù¾Ý×Ô¼ºµÄÇé¿öÀ´×öÏàÓ¦µÄÑ¡Ôñ£»»¹ÓÐÔÚÿһ¸ö´óÏîºÍÎĵµµÄ×îºó»áÓÐÒ»¸ö¾Ñé̸£¬ËüÊÇһЩ¸ßÊÖÃÇÔÚÓ¦¶ÔÎÊÌâºÍ´¦ÀíÌØÓÐÓ²¼þʱµÄһЩ¾Ñ飨Õâ¸ö»¹µ ......
£¨1£©¸ÅÊö
Executable and linking format(ELF)ÎļþÊÇx86 LinuxϵͳϵÄÒ»ÖÖ³£ÓÃÄ¿±êÎļþ(object file)¸ñʽ£¬ELFÎļþ¸ñʽ±È½Ï¸´ÔÓ£¬±¾ÎÄÖ»ÊǼòÒª½éÉÜËüµÄ½á¹¹¡£ÓÐÈýÖÖÖ÷ÒªÀàÐÍ£º
(1)ÊÊÓÚÁ¬½ÓµÄ¿ÉÖØ¶¨Î»Îļþ(relocatable file)£¬¿ÉÓëÆäËüÄ¿±êÎļþÒ»Æð´´½¨¿ÉÖ´ÐÐÎļþºÍ¹²ÏíÄ¿±êÎļþ¡£
(2) ......
linuxÏÂi386,i486,i586,i686µÄÇø±ð
.
i386,i486,i586·Ö±ðÊÇÕë¶Ô80386,80486,80586±àÒëµÄ°ü£¬i686¾Í±È½Ï¹ã·ºÁË£¬´Óp2¿ªÊ¼x86´¦ÀíÆ÷¾Í½øÈëÁËp6¹¹¼ÜµÄʱ´ú£¬Ò»Ö±µ½ÏÖÔÚ¶¼ÊÇp6¼Ü¹¹¡£Ð¼ܹ¹µÄcpuÏòϼæÈÝΪ¾É¼Ü¹¹±àÒëµÄÈí¼þ°ü.
i386.rpmÓëi686.rpmÓÐÊ²Ã´Çø±ð?
x86Ìåϵ½á¹¹ËäȻָÁî¶¼Ò»Ñù£¬µ«ÊDz»Í¬Ê±´úµÄ¾ßÌåʵÏÖ£¬ÔÚ±àÒëÓ ......
MACµØÖ·ÎªÍø¿¨µÄÎïÀíµØÖ·£¬ÔÚWindowsϵͳÏ·dz£ÈÝÒ×Ð޸ģ¬ÔÚlinuxģʽÏÂÔòÓÐЩ¸´ÔÓ£¬ ÎÒÃÇ¿´¿´VMwareÐéÄâ»úÖÐÐÞ¸ÄLinux MACµØÖ·µÄ·½·¨
·½·¨Ò»£º
Õâ¸ö·½·¨×îÖ±½Ó¼òµ¥ÓÐЧ£¬ÐÞ¸ÄLinuxϵͳÀïÏà¹Ørc.localÎļþMACÖµ¼´¿É¡£
·½·¨¶þ£º
ÐÞ¸ÄÐéÄâ»úµÄ*.vmxÎļþ,ÕâÖÖ·½·¨×îÖµµÃÍÆ¼ö£¬ÒòΪÕâÑù¾ÍÀàËÆÓÚÖØÐ“ÉÕ¼”ÁËVMw ......
ÔÎļû£ºhttp://www.cppblog.com/flashboy/articles/47012.html
1¡¢ÐÞ¸ÄÓû§½ø³Ì¿É´ò¿ªÎļþÊýÏÞÖÆ
ÔÚLinuxƽ̨ÉÏ£¬ÎÞÂÛ±àд¿Í»§¶Ë³ÌÐò»¹ÊÇ·þÎñ¶Ë³ÌÐò£¬ÔÚ½øÐи߲¢·¢TCPÁ¬½Ó´¦Àíʱ£¬×î¸ßµÄ²¢·¢ÊýÁ¿¶¼ÒªÊܵ½ÏµÍ³¶ÔÓû§µ¥Ò»½ø³Ìͬʱ¿É´ò¿ªÎļþÊýÁ¿µÄÏÞÖÆ(ÕâÊÇÒòΪϵͳΪÿ¸öTCPÁ¬½Ó¶¼Òª´´½¨Ò»¸ösocket¾ä±ú£¬Ã¿¸ ......