normal diskgroup情况下的IO读取

normal diskgroup情况下的IO读取
前段时间,在ML的群中,原厂一个哥们发了图,图中提到oracle 12c之前,asm 的读取默认都是始终从primary extent开始的,然而从12c开始发生变化。
当时的图片我找不到了,在以前的文档中,
?1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 ---diskgroup  [oracle@10gasm ~]$ export ORACLE_SID=+ASM  [oracle@10gasm ~]$ asmcmd  ASMCMD> lsdg  State    Type    Rebal  Unbal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name  MOUNTED  EXTERN  N      毕业论文 N         512   4096  1048576      2048      687                0             687              0  DATA1/  MOUNTED  NORMAL  N      N         512   4096  1048576      2048     1922                0             961              0  DATA2/   ---test table  SQL> select count(1) from test_asm_read;   COUNT(1)  ----------  10000   SQL>  SQL> select dbms_rowid.rowid_relative_fno(rowid) file#,dbms_rowid.rowid_block_number(rowid) blk#  2  from test_asm_read where object_id=100;   FILE#       BLK#  ---------- ----------  6         13  SQL> select object_name,object_id from test_asm_read where object_id=100;   OBJECT_NAME                     OBJECT_ID  ------------------------------ ----------  killdb.com                         100   SQL> select name from v$datafile where file#=6;   NAME  --------------------------------------------------------------------------------  +DATA2/test/datafile/test.256.804807701  SQL> l  1  select owner,segment_name,FILE_ID,EXTENT_ID,BLOCK_ID,BLOCKS  2* from dba_extents where SEGMENT_NAME='TEST_ASM_READ' SQL> /   OWNER                          SEGMENT_NAME                 FILE_ID  EXTENT_ID   BLOCK_ID     BLOCKS  ------------------------------ ------------------------- ---------- ---------- ---------- ----------  ROGER                          TEST_ASM_READ                      6          0          9          8  ROGER                          TEST_ASM_READ                      6          1         17          8  ROGER                          TEST_ASM_READ                      6          2         25          8  ROGER                          TEST_ASM_READ                      6          3         33          8  ROGER                          TEST_ASM_READ                      6          4         41          8  ROGER                          TEST_ASM_READ                      6          5         49          8  ROGER                          TEST_ASM_READ                      6          6         57          8  ROGER                          TEST_ASM_READ                      6          7         65          8  ROGER                          TEST_ASM_READ                      6          8         73          8  ROGER                          TEST_ASM_READ                      6          9         81          8  ROGER                          TEST_ASM_READ                      6         10         89          8  ROGER                          TEST_ASM_READ                      6         11         97          8  ROGER                          TEST_ASM_READ                      6         12        105          8  ROGER                          TEST_ASM_READ                      6         13        113          8  ROGER                          TEST_ASM_READ                      6         14        121          8  ROGER                          TEST_ASM_READ                      6         15        129          8  ROGER                          TEST_ASM_READ                      6         16        137        128   17 rows selected.
从上面信息可以看出,测试表有17个extent,前面0~15,是1m大小,后面第16号extent是1m大小。 由于asm默认的au size
也是1m,那么,所以我们可以肯定的讲,我们所要查询的这条数据和前面这16个extent,都在一个au里面。

oracle里面,最小的分配单元是extent,而asm中最小的分配单元是AU.

?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 SQL> select HEADER_FILE,HEADER_BLOCK,blocks from dba_segments   2  where segment_name='TEST_ASM_READ';   HEADER_FILE HEADER_BLOCK     BLOCKS ----------- ------------ ----------           6           11        256   SQL> l   1* select file#,name from v$datafile order by 1 SQL> /        FILE# NAME ---------- ------------------------------------------------------------          1 +DATA1/test/datafile/system.256.802678453          2 +DATA1/test/datafile/undotbs1.258.802678457          3 +DATA1/test/datafile/sysaux.257.802678455          4 +DATA1/test/datafile/users.259.802678457          5 +DATA1/test/datafile/roger.266.804210969          6 +DATA2/test/datafile/test.256.804807701          7 +DATA1/test/datafile/roger.267.806226805   SQL>  select disk_kffxp, au_kffxp, xnum_kffxp   2   from x$kffxp  3   where GROUP_KFFXP=2 and  4   NUMBER_KFFXP=256;    DISK_KFFXP   AU_KFFXP XNUM_KFFXP ---------- ---------- ----------          1         52          0          0         52          0          0         53          1          1         53          1          1         54          2          0         54          2          0         55          3          1         55          3          1         56          4          0         56          4          0         57          5   DISK_KFFXP   AU_KFFXP XNUM_KFFXP ---------- ---------- ----------          1         57          5          1         58          6          0         58          6          0         59          7          1         59          7          1         60          8          0         60          8          0         61          9          1         61          9          1         62         10          0         62         10   22 rows selected.   SQL> l   1* select name,path,DISK_NUMBER from v$asm_disk where group_number=2 order by 3 SQL> /   NAME                           PATH                           DISK_NUMBER ------------------------------ ------------------------------ ----------- DATA2_0000                     /dev/sdb                                 0 DATA2_0001                     /dev/sde                                 1   SQL>
从上面可以看到,我们的datafile 6大小是10m,而我创建的测试表占据2m(未建其他表),所以,我们的test_asm_read表
应该就在最前面的2个au当中。从上面的查询结果我们也可以看到,au分别存了2份,一份是primary extent,一份是
mirror extent, 我们来验证下:

?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 SQL> show user USER is "ROGER"SQL> select sid from v$mystat where rownum=1;          SID ----------        153   SQL>  alter system flush BUFFER_CACHE;   System altered.   SQL> show user USER is "ROGER"SQL> select sid from v$mystat where rownum=1;          SID ----------        153   SQL>  alter system flush BUFFER_CACHE;   System altered.   SQL> select s.sid,s.serial#,p.spid from v$process p,v$session s where p.addr=s.paddr and s.sid=153;          SID    SERIAL# SPID ---------- ---------- ------------        153        148 5390   SQL> select * from test_asm_read where object_id=100;   OWNER                          OBJECT_NAME                    SUBOBJECT_NAME                  OBJECT_ID DATA_OBJECT_ID ------------------------------ ------------------------------ ------------------------------ ---------- -------------- OBJECT_TYPE         CREATED   LAST_DDL_ TIMESTAMP           STATUS  T G S ------------------- --------- --------- ------------------- ------- - - - SYS                            killdb.com                                                        100            100 INDEX               30-JUN-05 30-JUN-05 2005-06-30:19:10:18 VALID   N N N   SQL>    ----strace spid 5390 [oracle@10gasm ~]$  strace -fr -o /tmp/5390.log    -p  5390 Process 5390 attached - interrupt to quit Process 5390 detached [oracle@10gasm ~]$ cd /proc/5390/fd/ [oracle@10gasm fd]$ ls -ltr total 0 lrwx------ 1 oracle oinstall 64 Mar 13 06:25 0 -> /dev/pts/2 lr-x------ 1 oracle oinstall 64 Mar 13 07:10 9 -> /home/oracle/oracle/product/10.2.0/rdbms/mesg/oraus.msb lr-x------ 1 oracle oinstall 64 Mar 13 07:10 8 -> pipe:[118609] lr-x------ 1 oracle oinstall 64 Mar 13 07:10 7 -> /dev/zero l-wx------ 1 oracle oinstall 64 Mar 13 07:10 6 -> /home/oracle/admin/test/bdump/alert_test.log lr-x------ 1 oracle oinstall 64 Mar 13 07:10 5 -> /dev/null lr-x------ 1 oracle oinstall 64 Mar 13 07:10 4 -> /dev/null lr-x------ 1 oracle oinstall 64 Mar 13 07:10 3 -> /dev/null lrwx------ 1 oracle oinstall 64 Mar 13 07:10 2 -> /dev/pts/2 lrwx------ 1 oracle oinstall 64 Mar 13 07:10 14 -> /dev/sdb lrwx------ 1 oracle oinstall 64 Mar 13 07:10 13 -> /dev/sde lrwx------ 1 oracle oinstall 64 Mar 13 07:10 12 -> /dev/sdd l-wx------ 1 oracle oinstall 64 Mar 13 07:10 11 -> pipe:[118610] lrwx------ 1 oracle oinstall 64 Mar 13 07:10 10 -> /dev/sdc lrwx------ 1 oracle oinstall 64 Mar 13 07:10 1 -> /dev/pts/2 [oracle@10gasm fd]$ cat /tmp/5390.log |grep pread64 5390       0.000056 pread64(10, "\6\242\0\0\375\274@\0\25\237\v\0\0\0\1\0063\340\0\0\2\0\24\0\3\0\0\0\24\237\v\0"..., 8192, 347054080) = 8192 5390       0.000047 pread64(12, "\6\242\0\0S\335@\0Z\311\v\0\0\0\1\6J\305\0\0\1\0-\0\2\0\0\0\233\234\v\0"..., 8192, 293232640) = 8192 5390       0.000046 pread64(10, "\6\242\0\0\320\317@\0\f\237\v\0\0\0\1\6\v7\0\0\2\0\0\0g\0\0\0\10\237\v\0"..., 8192, 315228160) = 8192 5390       0.000076 pread64(10, "\6\242\0\0\305\314@\0#\236\v\0\0\0\1\6\333V\0\0\2\0\36\0003\0\0\0\34\236\v\0"..., 8192, 321429504) = 8192 5390       0.000027 pread64(13, "#\242\0\0\v\0\200\1\231|\n\0\0\0\1\4\215c\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 8192, 54616064) = 8192 5390       0.000027 pread64(13, "\6\242\0\0\f\0\200\1&\220\n\0\0\0\1\0046\206\0\0\1\0\0\0\212\311\0\0&\220\n\0"..., 40960, 54624256) = 40960 5390       0.000026 pread64(13, "\6\242\0\0\21\0\200\1m|\n\0\0\0\2\0046\364\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54665216) = 65536 5390       0.000025 pread64(13, "\6\242\0\0\32\0\200\1m|\n\0\0\0\2\4\2\250\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 54738944) = 57344 5390       0.000024 pread64(13, "\6\242\0\0!\0\200\1s|\n\0\0\0\2\4\337d\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54796288) = 65536 5390       0.000024 pread64(13, "\6\242\0\0*\0\200\1y|\n\0\0\0\2\4h\30\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 54870016) = 57344 5390       0.000024 pread64(13, "\6\242\0\0001\0\200\1y|\n\0\0\0\2\4\n\233\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54927360) = 65536 5390       0.000023 pread64(13, "\6\242\0\0:\0\200\1y|\n\0\0\0\2\4\335\t\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55001088) = 57344 5390       0.000022 pread64(13, "\6\242\0\0A\0\200\1\177|\n\0\0\0\2\4\243\261\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55058432) = 65536 5390       0.000024 pread64(13, "\6\242\0\0J\0\200\1\205|\n\0\0\0\2\4\177\221\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55132160) = 57344 5390       0.000024 pread64(13, "\6\242\0\0Q\0\200\1\205|\n\0\0\0\2\4\377[\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55189504) = 65536 5390       0.000060 pread64(13, "\6\242\0\0Z\0\200\1\205|\n\0\0\0\2\4\357\30\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55263232) = 57344 5390       0.000025 pread64(13, "\6\242\0\0a\0\200\1\213|\n\0\0\0\2\4D\n\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55320576) = 65536 5390       0.000024 pread64(13, "\6\242\0\0j\0\200\1\221|\n\0\0\0\2\4\212\351\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55394304) = 57344 5390       0.000036 pread64(13, "\6\242\0\0q\0\200\1\221|\n\0\0\0\2\4_\0\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55451648) = 65536 5390       0.000024 pread64(14, "\6\242\0\0\200\0\200\1\227|\n\0\0\0\2\4w\206\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 8192, 55574528) = 8192 5390       0.000022 pread64(13, "\6\242\0\0z\0\200\1\221|\n\0\0\0\2\4;=\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 49152, 55525376) = 49152 5390       0.000024 pread64(14, "\6\242\0\0\201\0\200\1\227|\n\0\0\0\2\4f\213\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55582720) = 65536 5390       0.000024 pread64(14, "\6\242\0\0\213\0\200\1\227|\n\0\0\0\2\4\343\352\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55664640) = 57344 [oracle@10gasm fd]$    SQL>  select 54616064/1024/1024 from dual;   54616064/1024/1024 ------------------         52.0859375 SQL> select (54616064-52*1024*1024)/4096 from dual;   (54616064-52*1024*1024)/4096 ----------------------------                           22 SQL> select (54624256-52*1024*1024)/4096 from dual;   (54624256-52*1024*1024)/4096 ----------------------------                           24 SQL> select (54665216-52*1024*1024)/4096 from dual;   (54665216-52*1024*1024)/4096 ----------------------------                           34 SQL> select (54738944-52*1024*1024)/4096 from dual;   (54738944-52*1024*1024)/4096 ----------------------------                           52 SQL> select (54796288-52*1024*1024)/4096 from dual;   (54796288-52*1024*1024)/4096 ----------------------------                           66 SQL> select (54870016-52*1024*1024)/4096 from dual;   (54870016-52*1024*1024)/4096 ----------------------------                           84 SQL> select (54927360-52*1024*1024)/4096 from dual;                    (54927360-52*1024*1024)/4096 ----------------------------                           98 SQL> select (55001088-52*1024*1024)/4096 from dual;      (55001088-52*1024*1024)/4096 ----------------------------                          116 SQL> select (55058432-52*1024*1024)/4096 from dual;   (55058432-52*1024*1024)/4096 ----------------------------                          130   SQL> select (55132160-52*1024*1024)/4096 from dual;   (55132160-52*1024*1024)/4096 ----------------------------                          148   SQL> select (55189504-52*1024*1024)/4096 from dual;   (55189504-52*1024*1024)/4096 ----------------------------                          162   SQL> select (55263232-52*1024*1024)/4096 from dual;   (55263232-52*1024*1024)/4096 ----------------------------                          180   SQL> select (55320576-52*1024*1024)/4096 from dual;   (55320576-52*1024*1024)/4096 ----------------------------                          194   SQL> select (55394304-52*1024*1024)/4096 from dual;   (55394304-52*1024*1024)/4096 ----------------------------                          212   SQL> select (55451648-52*1024*1024)/4096 from dual;   (55451648-52*1024*1024)/4096 ----------------------------                          226   SQL> select (55574528-52*1024*1024)/4096 from dual;  --file 14   (55574528-52*1024*1024)/4096 ----------------------------                          256   SQL> select (55525376-52*1024*1024)/4096 from dual;   (55525376-52*1024*1024)/4096 ----------------------------                          244   SQL> select (55582720-52*1024*1024)/4096 from dual;  --file 14   (55582720-52*1024*1024)/4096 ----------------------------                          258   SQL> select (55664640-52*1024*1024)/4096 from dual;  --file 14   (55664640-52*1024*1024)/4096 ----------------------------                          278   SQL>
从上面的信息,似乎还看不太出来,我直接通过dump 这个block,来看下它的具体offset,如下:

?123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 ---打开一个session [oracle@10gasm ~]$ sqlplus "/as sysdba"  SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 13 07:47:55 2013   Copyright (c) 1982, 2005, Oracle.  All rights reserved.   Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options   SQL> select sid from v$mystat where rownum=1;          SID ----------        153   SQL> select s.sid,s.serial#,p.spid from v$process p,v$session s where p.addr=s.paddr and s.sid=153;          SID    SERIAL# SPID ---------- ---------- ------------        153        151 8375   SQL> oradebug setmypid Statement processed. SQL> select name from V$datafile where file#=6;   NAME -------------------------------------------------------------------------------- +DATA2/test/datafile/test.256.804807701   SQL> alter system dump datafile '+DATA2/test/datafile/test.256.804807701' block 13;   System altered.   SQL> oradebug tracefile_name /home/oracle/admin/test/udump/test_ora_8375.trc SQL>    ----执行alter system之前,执行如下strace跟踪 [oracle@10gasm fd]$  strace -fr -o /tmp/8375.log    -p  8375 Process 5390 attached - interrupt to quit Process 5390 detached [oracle@10gasm fd]$ cd /proc/8375/fd [oracle@10gasm fd]$ ls -ltr total 0 lrwx------ 1 oracle oinstall 64 Mar 13 07:47 0 -> /dev/pts/2 lr-x------ 1 oracle oinstall 64 Mar 13 07:55 9 -> /home/oracle/oracle/product/10.2.0/rdbms/mesg/oraus.msb lr-x------ 1 oracle oinstall 64 Mar 13 07:55 8 -> pipe:[123600] lr-x------ 1 oracle oinstall 64 Mar 13 07:55 7 -> /dev/zero lr-x------ 1 oracle oinstall 64 Mar 13 07:55 6 -> /dev/null l-wx------ 1 oracle oinstall 64 Mar 13 07:55 5 -> /home/oracle/admin/test/udump/test_ora_8375.trc lr-x------ 1 oracle oinstall 64 Mar 13 07:55 4 -> /dev/null lr-x------ 1 oracle oinstall 64 Mar 13 07:55 3 -> /dev/null lrwx------ 1 oracle oinstall 64 Mar 13 07:55 2 -> /dev/pts/2 lrwx------ 1 oracle oinstall 64 Mar 13 07:55 14 -> /dev/sde lrwx------ 1 oracle oinstall 64 Mar 13 07:55 13 -> /dev/sdd lrwx------ 1 oracle oinstall 64 Mar 13 07:55 12 -> /dev/sdc l-wx------ 1 oracle oinstall 64 Mar 13 07:55 11 -> pipe:[123601] lrwx------ 1 oracle oinstall 64 Mar 13 07:55 10 -> /home/oracle/admin/test/adump/ora_8375.aud lrwx------ 1 oracle oinstall 64 Mar 13 07:55 1 -> /dev/pts/2 [oracle@10gasm fd]$ cat /tmp/8375.log |grep pread64 8375       0.000028 pread64(14, "\v\242\0\0\1\0\200\1\0\0\0\0\0\0\1\4\326\n\0\0\0\0\0\0\0\1 \n\231\v8}"..., 512, 54534144) = 512 8375       0.000031 pread64(14, "\v\242\0\0\1\0\200\1\0\0\0\0\0\0\1\4\326\n\0\0\0\0\0\0\0\1 \n\231\v8}"..., 8192, 54534144) = 8192 8375       0.000028 pread64(14, "\v\242\0\0\1\0\200\1\0\0\0\0\0\0\1\4\326\n\0\0\0\0\0\0\0\1 \n\231\v8}"..., 8192, 54534144) = 8192 8375       0.000027 pread64(14, "\6\242\0\0\r\0\200\1e}\n\0\0\0\1\4H\331\0\0\1\0\0\0\212\311\0\0e}\n\0"..., 8192, 54632448) = 8192   [oracle@10gasm fd]$ SQL> select (54534144-52*1024*1024)/4096 from dual;   (54534144-52*1024*1024)/4096 ----------------------------                            2 SQL> select (54632448-52*1024*1024)/4096 from dual;   (54632448-52*1024*1024)/4096 ----------------------------                           26
可以看到这里,实际上就是操作的offset 54632448,转换一下,就知道这个位置是第53个AU的第26个block(4096来计算).
如何换成8192计算,那么正好是我们的数据库block file 6,block 13.

这里需要补充点知识,asm的mirror 是以extent为单位进行,我这里的diskgroup data2中有2个disk,分别是/dev/sdb,/dev/sde,
换句话讲,我的测试表test_asm_read大小2m,实际上消耗了4m的asm空间,其中分别在2个disk中各站2m. 从前面我们的查询可以
看出,我们这个测试表一共分配了0~16个,也就是17个extent,这就是说着17个extent分别存在2个disk中,各一份。

我们知道这个block在第53个au中,一个1m/8k=128,那说明我们的13号block就在一个unit单元里面。

?1234567891011 [oracle@10gasm fd]$ dd if=/dev/sde of=/tmp/dd.asm bs=1024k skip=52 count=1  1+0 records in  1+0 records out  1048576 bytes (1.0 MB) copied, 0.00809608 seconds, 130 MB/s  [oracle@10gasm fd]$  dd if=/tmp/dd.asm of=/tmp/asm_dump bs=8k skip=13 count=1  1+0 records in  1+0 records out  8192 bytes (8.2 kB) copied, 0.000183065 seconds, 44.7 MB/s  [oracle@10gasm fd]$ strings /tmp/asm_dump |grep killdb.com  killdb.com  [oracle@10gasm fd]$
从这么dd内容来看,我们定位的位置是正确的。

我们再回到前面的问题来,上面的一连串block号,我们除以2,用db block_size来计算,那么就是如下数据:
/dev/sde   au (53) 11,12,17,26,33,42,49,58,65,79,81,90,97,106,113    au(54) 129 ,au 54的129-128=1,即是第1个block.
/dev/sdb   au (53) 128,122    au(54)139,au 54的139-128=11,即是第11个block.

注意,我这里是为8192个单位进行计算的。

这里我们可以发现一个意思的事情:所读取的/dev/sdb盘操作offset,如果是以4096单位计算的话,分别对应第53个au的如下block:

256 258 278,也就是第53个au的最后一个block,和第54个au的第2个block,第11个block。

同样通过上面dd的方式去查看,我发现这几个block中并没有我们查询的那条数据。

这里还有个问题要说明,那么就是我仅仅查询了一条数据,为什么strace的结果来看,server process读取了上述多个block呢?
这个很容易解释,因为我的测试表没有索引,该sql必须走全表扫描。会扫描读取高水位线以下所有的block。

?12345678910111213141516171819 5390       0.000027 pread64(13, "#\242\0\0\v\0\200\1\231|\n\0\0\0\1\4\215c\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 8192, 54616064) = 8192  5390       0.000027 pread64(13, "\6\242\0\0\f\0\200\1&\220\n\0\0\0\1\0046\206\0\0\1\0\0\0\212\311\0\0&\220\n\0"..., 40960, 54624256) = 40960  5390       0.000026 pread64(13, "\6\242\0\0\21\0\200\1m|\n\0\0\0\2\0046\364\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54665216) = 65536  5390       0.000025 pread64(13, "\6\242\0\0\32\0\200\1m|\n\0\0\0\2\4\2\250\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 54738944) = 57344  5390       0.000024 pread64(13, "\6\242\0\0!\0\200\1s|\n\0\0\0\2\4\337d\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54796288) = 65536  5390       0.000024 pread64(13, "\6\242\0\0*\0\200\1y|\n\0\0\0\2\4h\30\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 54870016) = 57344  5390       0.000024 pread64(13, "\6\242\0\0001\0\200\1y|\n\0\0\0\2\4\n\233\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 54927360) = 65536  5390       0.000023 pread64(13, "\6\242\0\0:\0\200\1y|\n\0\0\0\2\4\335\t\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55001088) = 57344  5390       0.000022 pread64(13, "\6\242\0\0A\0\200\1\177|\n\0\0\0\2\4\243\261\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55058432) = 65536  5390       0.000024 pread64(13, "\6\242\0\0J\0\200\1\205|\n\0\0\0\2\4\177\221\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55132160) = 57344  5390       0.000024 pread64(13, "\6\242\0\0Q\0\200\1\205|\n\0\0\0\2\4\377[\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55189504) = 65536  5390       0.000060 pread64(13, "\6\242\0\0Z\0\200\1\205|\n\0\0\0\2\4\357\30\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55263232) = 57344  5390       0.000025 pread64(13, "\6\242\0\0a\0\200\1\213|\n\0\0\0\2\4D\n\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55320576) = 65536  5390       0.000024 pread64(13, "\6\242\0\0j\0\200\1\221|\n\0\0\0\2\4\212\351\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55394304) = 57344  5390       0.000036 pread64(13, "\6\242\0\0q\0\200\1\221|\n\0\0\0\2\4_\0\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55451648) = 65536  5390       0.000024 pread64(14, "\6\242\0\0\200\0\200\1\227|\n\0\0\0\2\4w\206\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 8192, 55574528) = 8192  5390       0.000022 pread64(13, "\6\242\0\0z\0\200\1\221|\n\0\0\0\2\4;=\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 49152, 55525376) = 49152  5390       0.000024 pread64(14, "\6\242\0\0\201\0\200\1\227|\n\0\0\0\2\4f\213\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 65536, 55582720) = 65536  5390       0.000024 pread64(14, "\6\242\0\0\213\0\200\1\227|\n\0\0\0\2\4\343\352\0\0\1\0\0\0\212\311\0\0f|\n\0"..., 57344, 55664640) = 57344
最后一列代表的是读取的大小,简单计算一下,可以得出如下信息:

[1] [2] 下一页

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有