|
|
DataMuseum.dkPresents historical artifacts from the history of: RC9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: w
Length: 12877 (0x324d)
Names: »write.2«
└─⟦50656ff4a⟧ Bits:30010538 TX 3.1 Coldstart
└─⟦bbf173f5c⟧ »0004«
└─⟦this⟧ »./bsd/usr/man/cat2/write.2«
0x0000…0020 0a 0a 0a 5f 08 4f 5f 08 6e 5f 08 6c 5f 08 69 5f 08 6e 5f 08 65 20 5f 08 4d 5f 08 61 5f 08 6e 5f ┆ _ O_ n_ l_ i_ n_ e _ M_ a_ n_┆
0x0020…0040 08 75 5f 08 61 5f 08 6c 20 20 20 20 20 20 20 20 20 20 20 20 20 53 79 73 74 65 6d 20 43 61 6c 6c ┆ u_ a_ l System Call┆
0x0040…0060 73 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 72 69 74 65 28 32 29 0a 0a 0a 0a ┆s write(2) ┆
0x0060…0080 4e 08 4e 08 4e 08 4e 41 08 41 08 41 08 41 4d 08 4d 08 4d 08 4d 45 08 45 08 45 08 45 0a 20 20 20 ┆N N N NA A A AM M M ME E E E ┆
0x0080…00a0 20 20 77 72 69 74 65 2c 20 77 72 69 74 65 76 20 2d 20 77 72 69 74 65 20 6f 6e 20 61 20 66 69 6c ┆ write, writev - write on a fil┆
0x00a0…00c0 65 0a 0a 53 08 53 08 53 08 53 59 08 59 08 59 08 59 4e 08 4e 08 4e 08 4e 54 08 54 08 54 08 54 41 ┆e S S S SY Y Y YN N N NT T T TA┆
0x00c0…00e0 08 41 08 41 08 41 58 08 58 08 58 08 58 0a 20 20 20 20 20 63 08 63 08 63 08 63 63 08 63 08 63 08 ┆ A A AX X X X c c c cc c c ┆
0x00e0…0100 63 20 3d 08 3d 08 3d 08 3d 20 77 08 77 08 77 08 77 72 08 72 08 72 08 72 69 08 69 08 69 08 69 74 ┆c = = = = w w w wr r r ri i i it┆
0x0100…0120 08 74 08 74 08 74 65 08 65 08 65 08 65 28 08 28 08 28 08 28 66 08 66 08 66 08 66 64 08 64 08 64 ┆ t t te e e e( ( ( (f f f fd d d┆
0x0120…0140 08 64 2c 08 2c 08 2c 08 2c 20 62 08 62 08 62 08 62 75 08 75 08 75 08 75 66 08 66 08 66 08 66 2c ┆ d, , , , b b b bu u u uf f f f,┆
0x0140…0160 08 2c 08 2c 08 2c 20 6e 08 6e 08 6e 08 6e 62 08 62 08 62 08 62 79 08 79 08 79 08 79 74 08 74 08 ┆ , , , n n n nb b b by y y yt t ┆
0x0160…0180 74 08 74 65 08 65 08 65 08 65 73 08 73 08 73 08 73 29 08 29 08 29 08 29 0a 20 20 20 20 20 69 08 ┆t te e e es s s s) ) ) ) i ┆
0x0180…01a0 69 08 69 08 69 6e 08 6e 08 6e 08 6e 74 08 74 08 74 08 74 20 63 08 63 08 63 08 63 63 08 63 08 63 ┆i i in n n nt t t t c c c cc c c┆
0x01a0…01c0 08 63 2c 08 2c 08 2c 08 2c 20 66 08 66 08 66 08 66 64 08 64 08 64 08 64 3b 08 3b 08 3b 08 3b 0a ┆ c, , , , f f f fd d d d; ; ; ; ┆
0x01c0…01e0 20 20 20 20 20 63 08 63 08 63 08 63 68 08 68 08 68 08 68 61 08 61 08 61 08 61 72 08 72 08 72 08 ┆ c c c ch h h ha a a ar r r ┆
0x01e0…0200 72 20 2a 08 2a 08 2a 08 2a 62 08 62 08 62 08 62 75 08 75 08 75 08 75 66 08 66 08 66 08 66 3b 08 ┆r * * * *b b b bu u u uf f f f; ┆
0x0200…0220 3b 08 3b 08 3b 0a 20 20 20 20 20 69 08 69 08 69 08 69 6e 08 6e 08 6e 08 6e 74 08 74 08 74 08 74 ┆; ; ; i i i in n n nt t t t┆
0x0220…0240 20 6e 08 6e 08 6e 08 6e 62 08 62 08 62 08 62 79 08 79 08 79 08 79 74 08 74 08 74 08 74 65 08 65 ┆ n n n nb b b by y y yt t t te e┆
0x0240…0260 08 65 08 65 73 08 73 08 73 08 73 3b 08 3b 08 3b 08 3b 0a 0a 20 20 20 20 20 23 69 6e 63 6c 75 64 ┆ e es s s s; ; ; ; #includ┆
0x0260…0280 65 20 3c 73 79 73 2f 74 79 70 65 73 2e 68 3e 0a 20 20 20 20 20 23 69 6e 63 6c 75 64 65 20 3c 73 ┆e <sys/types.h> #include <s┆
0x0280…02a0 79 73 2f 69 6f 76 65 63 2e 68 3e 0a 20 20 20 20 20 23 69 6e 63 6c 75 64 65 20 3c 73 79 73 2f 66 ┆ys/iovec.h> #include <sys/f┆
0x02a0…02c0 69 6c 65 2e 68 3e 0a 0a 20 20 20 20 20 63 63 20 3d 20 77 72 69 74 65 76 28 66 64 2c 20 69 6f 76 ┆ile.h> cc = writev(fd, iov┆
0x02c0…02e0 2c 20 69 6f 76 63 6e 74 29 0a 20 20 20 20 20 69 6e 74 20 63 63 2c 20 66 64 3b 0a 20 20 20 20 20 ┆, iovcnt) int cc, fd; ┆
0x02e0…0300 73 74 72 75 63 74 20 69 6f 76 65 63 20 2a 69 6f 76 3b 0a 20 20 20 20 20 69 6e 74 20 69 6f 76 63 ┆struct iovec *iov; int iovc┆
0x0300…0320 6e 74 3b 0a 0a 44 08 44 08 44 08 44 45 08 45 08 45 08 45 53 08 53 08 53 08 53 43 08 43 08 43 08 ┆nt; D D D DE E E ES S S SC C C ┆
0x0320…0340 43 52 08 52 08 52 08 52 49 08 49 08 49 08 49 50 08 50 08 50 08 50 54 08 54 08 54 08 54 49 08 49 ┆CR R R RI I I IP P P PT T T TI I┆
0x0340…0360 08 49 08 49 4f 08 4f 08 4f 08 4f 4e 08 4e 08 4e 08 4e 0a 20 20 20 20 20 5f 08 77 5f 08 72 5f 08 ┆ I IO O O ON N N N _ w_ r_ ┆
0x0360…0380 69 5f 08 74 5f 08 65 20 61 6e 64 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 5f 08 76 20 73 ┆i_ t_ e and _ w_ r_ i_ t_ e_ v s┆
0x0380…03a0 79 73 74 65 6d 20 63 61 6c 6c 73 20 61 74 74 65 6d 70 74 20 74 6f 20 77 72 69 74 65 20 61 20 73 ┆ystem calls attempt to write a s┆
0x03a0…03c0 70 65 63 69 66 69 65 64 0a 20 20 20 20 20 61 6d 6f 75 6e 74 20 6f 66 20 64 61 74 61 20 74 6f 20 ┆pecified amount of data to ┆
0x03c0…03e0 61 20 66 69 6c 65 20 6f 62 6a 65 63 74 20 72 65 66 65 72 65 6e 63 65 64 20 62 79 20 61 6e 20 6f ┆a file object referenced by an o┆
0x03e0…0400 70 65 6e 20 66 69 6c 65 0a 20 20 20 20 20 64 65 73 63 72 69 70 74 6f 72 2e 0a 0a 20 20 20 20 20 ┆pen file descriptor. ┆
0x0400…0420 63 08 63 08 63 08 63 63 08 63 08 63 08 63 20 20 20 53 70 65 63 69 66 69 65 73 20 74 68 65 20 6e ┆c c c cc c c c Specifies the n┆
0x0420…0440 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 61 63 74 75 61 6c 6c 79 20 77 72 69 74 74 65 6e 2c ┆umber of bytes actually written,┆
0x0440…0460 20 6f 72 20 2d 31 0a 20 20 20 20 20 20 20 20 20 20 69 66 20 61 6e 20 65 72 72 6f 72 20 6f 63 63 ┆ or -1 if an error occ┆
0x0460…0480 75 72 72 65 64 2e 0a 0a 20 20 20 20 20 66 08 66 08 66 08 66 64 08 64 08 64 08 64 20 20 20 49 73 ┆urred. f f f fd d d d Is┆
0x0480…04a0 20 74 68 65 20 6f 70 65 6e 20 66 69 6c 65 20 64 65 73 63 72 69 70 74 6f 72 20 66 6f 72 20 74 68 ┆ the open file descriptor for th┆
0x04a0…04c0 65 20 66 69 6c 65 20 6f 62 6a 65 63 74 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 72 65 63 65 69 ┆e file object to recei┆
0x04c0…04e0 76 65 20 74 68 65 20 64 61 74 61 2e 20 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 66 6c 61 67 ┆ve the data. The following flag┆
0x04e0…0500 20 61 72 67 75 6d 65 6e 74 73 20 6d 61 79 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 5f 08 6f 5f ┆ arguments may be _ o_┆
0x0500…0520 08 72 65 64 20 28 20 7c 20 29 20 77 69 74 68 20 74 68 65 20 6c 65 66 74 6d 6f 73 74 20 31 36 20 ┆ red ( | ) with the leftmost 16 ┆
0x0520…0540 62 69 74 73 20 6f 66 20 74 68 65 20 5f 08 66 5f 08 64 20 61 72 67 75 2d 0a 20 20 20 20 20 20 20 ┆bits of the _ f_ d argu- ┆
0x0540…0560 20 20 20 6d 65 6e 74 3a 0a 0a 20 20 20 20 20 20 20 20 20 20 49 4f 5f 4d 42 4c 4f 43 4b 0a 20 20 ┆ ment: IO_MBLOCK ┆
0x0560…0580 20 20 20 20 20 20 20 20 20 20 20 20 20 41 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 64 69 73 ┆ Applies only to dis┆
0x0580…05a0 6b 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 5f 08 6e 5f 08 6f 5f 08 74 20 6f 70 65 6e 65 ┆k files that are _ n_ o_ t opene┆
0x05a0…05c0 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 4f 5f 43 4f 4e 54 ┆d with the O_CONT┆
0x05c0…05e0 52 4f 4c 20 66 6c 61 67 20 73 65 74 2e 20 49 66 20 74 68 65 20 49 4f 5f 4d 42 4c 4f 43 4b 20 66 ┆ROL flag set. If the IO_MBLOCK f┆
0x05e0…0600 6c 61 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 73 65 74 2c 20 74 68 65 20 5f ┆lag is set, the _┆
0x0600…0620 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 20 63 61 75 73 65 73 20 73 68 61 72 65 64 20 62 6c 6f ┆ w_ r_ i_ t_ e causes shared blo┆
0x0620…0640 63 6b 2d 6c 65 76 65 6c 20 6c 6f 63 6b 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f ┆ck-level locks to┆
0x0640…0660 20 62 65 20 73 65 74 20 6f 6e 20 74 68 65 20 62 6c 6f 63 6b 73 20 69 6e 76 6f 6c 76 65 64 20 69 ┆ be set on the blocks involved i┆
0x0660…0680 6e 20 74 68 65 20 77 72 69 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 50 72 6f ┆n the write. (Pro┆
0x0680…06a0 63 65 73 73 65 73 20 69 6e 20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 61 63 71 75 69 72 65 20 ┆cesses in a transaction acquire ┆
0x06a0…06c0 65 78 63 6c 75 73 69 76 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 6c 6f 63 6b 2d 6c ┆exclusive block-l┆
0x06c0…06e0 65 76 65 6c 20 6c 6f 63 6b 73 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 20 20 41 20 73 68 61 ┆evel locks automatically. A sha┆
0x06e0…0700 72 65 64 20 6c 6f 63 6b 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 65 61 6b 65 ┆red lock is weake┆
0x0700…0720 72 20 61 6e 64 20 74 68 65 72 65 66 6f 72 65 20 69 67 6e 6f 72 65 64 2e 29 20 54 68 65 20 6c 6f ┆r and therefore ignored.) The lo┆
0x0720…0740 63 6b 20 6d 75 73 74 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 6d 6f 76 65 ┆ck must be remove┆
0x0740…0760 64 20 6d 61 6e 75 61 6c 6c 79 20 75 73 69 6e 67 20 74 68 65 20 5f 08 6d 5f 08 62 5f 08 6c 5f 08 ┆d manually using the _ m_ b_ l_ ┆
0x0760…0780 6f 5f 08 63 5f 08 6b 20 73 79 73 74 65 6d 20 63 61 6c 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 ┆o_ c_ k system call. ┆
0x0780…07a0 20 20 20 20 54 68 65 20 49 4f 5f 4d 42 4c 4f 43 4b 20 66 6c 61 67 20 69 73 20 6d 61 70 70 65 64 ┆ The IO_MBLOCK flag is mapped┆
0x07a0…07c0 20 69 6e 74 65 72 6e 61 6c 6c 79 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 4f ┆ internally to IO┆
0x07c0…07e0 5f 4d 42 4c 4f 43 4b 53 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 49 4f 5f 4d 42 4c 4f 43 4b 48 0a ┆_MBLOCKS. IO_MBLOCKH ┆
0x07e0…0800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 64 ┆ Applies only to d┆
0x0800…0820 69 73 6b 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 5f 08 6e 5f 08 6f 5f 08 74 20 6f 70 65 ┆isk files that are _ n_ o_ t ope┆
0x0820…0840 6e 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 4f 5f 43 4f ┆ned with the O_CO┆
0x0840…0860 4e 54 52 4f 4c 20 66 6c 61 67 20 73 65 74 2e 20 49 66 20 74 68 65 20 49 4f 5f 4d 42 4c 4f 43 4b ┆NTROL flag set. If the IO_MBLOCK┆
0x0860…0880 48 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 61 67 20 69 73 20 73 65 74 2c 20 74 68 ┆H flag is set, th┆
0x0880…08a0 65 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 20 61 70 70 6c 69 65 73 20 61 20 60 60 68 6f ┆e _ w_ r_ i_ t_ e applies a ``ho┆
0x08a0…08c0 6c 64 27 27 20 6c 6f 63 6b 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 61 63 68 ┆ld'' lock to each┆
0x08c0…08e0 20 62 6c 6f 63 6b 20 61 63 63 65 73 73 65 64 20 62 79 20 74 68 65 20 77 72 69 74 65 20 6f 70 65 ┆ block accessed by the write ope┆
0x08e0…0900 72 61 74 69 6f 6e 2e 20 54 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f 63 6b 20 ┆ration. The lock ┆
0x0900…0920 6d 75 73 74 20 62 65 20 6d 61 6e 75 61 6c 6c 79 20 72 65 6d 6f 76 65 64 20 75 73 69 6e 67 20 74 ┆must be manually removed using t┆
0x0920…0940 68 65 20 5f 08 6d 5f 08 62 5f 08 6c 5f 08 6f 5f 08 63 5f 08 6b 0a 20 20 20 20 20 20 20 20 20 20 ┆he _ m_ b_ l_ o_ c_ k ┆
0x0940…0960 20 20 20 20 20 73 79 73 74 65 6d 20 63 61 6c 6c 2e 20 20 41 20 68 6f 6c 64 20 6c 6f 63 6b 20 69 ┆ system call. A hold lock i┆
0x0960…0980 73 20 73 74 72 6f 6e 67 65 72 20 74 68 61 6e 20 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆s stronger than a ┆
0x0980…09a0 20 73 68 61 72 65 64 20 6c 6f 63 6b 2c 20 77 65 61 6b 65 72 20 74 68 61 6e 20 61 6e 20 65 78 63 ┆ shared lock, weaker than an exc┆
0x09a0…09c0 6c 75 73 69 76 65 20 6c 6f 63 6b 2c 20 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆lusive lock, and ┆
0x09c0…09e0 69 6e 63 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 69 74 73 65 6c 66 2e 20 54 68 65 20 66 6c ┆incompatible with itself. The fl┆
0x09e0…0a00 61 67 20 61 72 67 75 6d 65 6e 74 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 67 ┆ag argument is ig┆
0x0a00…0a20 6e 6f 72 65 64 20 69 6e 73 69 64 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 6d 6f 64 65 20 62 65 ┆nored inside transaction mode be┆
0x0a20…0a40 63 61 75 73 65 20 74 68 65 20 68 6f 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f ┆cause the hold lo┆
0x0a40…0a60 63 6b 20 69 73 20 77 65 61 6b 65 72 20 74 68 61 6e 20 74 68 65 20 61 75 74 6f 6d 61 74 69 63 20 ┆ck is weaker than the automatic ┆
0x0a60…0a80 65 78 63 6c 75 73 69 76 65 20 6c 6f 63 6b 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 49 4f 5f 4d 42 ┆exclusive lock. IO_MB┆
0x0a80…0aa0 4c 4f 43 4b 53 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 70 70 6c 69 65 73 20 6f 6e 6c ┆LOCKS Applies onl┆
0x0aa0…0ac0 79 20 74 6f 20 64 69 73 6b 20 66 69 6c 65 73 20 74 68 61 74 20 61 72 65 20 5f 08 6e 5f 08 6f 5f ┆y to disk files that are _ n_ o_┆
0x0ac0…0ae0 08 74 20 6f 70 65 6e 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 74 68 ┆ t opened with th┆
0x0ae0…0b00 65 20 4f 5f 43 4f 4e 54 52 4f 4c 20 66 6c 61 67 20 73 65 74 2e 20 49 66 20 74 68 65 20 49 4f 5f ┆e O_CONTROL flag set. If the IO_┆
0x0b00…0b20 4d 42 4c 4f 43 4b 53 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6c 61 67 20 69 73 20 73 ┆MBLOCKS flag is s┆
0x0b20…0b40 65 74 2c 20 74 68 65 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 20 61 70 70 6c 69 65 73 20 ┆et, the _ w_ r_ i_ t_ e applies ┆
0x0b40…0b60 73 68 61 72 65 64 20 62 6c 6f 63 6b 2d 6c 65 76 65 6c 0a 0a 0a 0a 0a 0a 0a 20 20 20 20 20 20 20 ┆shared block-level ┆
0x0b60…0b80 20 20 20 20 20 20 20 20 6c 6f 63 6b 73 20 74 6f 20 65 61 63 68 20 62 6c 6f 63 6b 20 61 63 63 65 ┆ locks to each block acce┆
0x0b80…0ba0 73 73 65 64 20 62 79 20 74 68 65 20 77 72 69 74 65 20 6f 70 65 72 61 2d 0a 20 20 20 20 20 20 20 ┆ssed by the write opera- ┆
0x0ba0…0bc0 20 20 20 20 20 20 20 20 74 69 6f 6e 2e 20 20 54 68 65 20 66 6c 61 67 20 69 73 20 69 67 6e 6f 72 ┆ tion. The flag is ignor┆
0x0bc0…0be0 65 64 20 69 6e 73 69 64 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 61 73 0a 20 20 20 20 20 20 ┆ed inside transactions as ┆
0x0be0…0c00 20 20 20 20 20 20 20 20 20 73 74 72 6f 6e 67 65 72 20 65 78 63 6c 75 73 69 76 65 20 62 6c 6f 63 ┆ stronger exclusive bloc┆
0x0c00…0c20 6b 2d 6c 65 76 65 6c 20 6c 6f 63 6b 73 20 61 72 65 20 61 63 71 75 69 72 65 64 0a 20 20 20 20 20 ┆k-level locks are acquired ┆
0x0c20…0c40 20 20 20 20 20 20 20 20 20 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 6f 6e 20 77 72 69 74 69 ┆ automatically on writi┆
0x0c40…0c60 6e 67 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 49 4f 5f 4d 42 4c 4f 43 4b 58 0a 20 20 20 20 20 20 ┆ng. IO_MBLOCKX ┆
0x0c60…0c80 20 20 20 20 20 20 20 20 20 41 70 70 6c 69 65 73 20 6f 6e 6c 79 20 74 6f 20 64 69 73 6b 20 66 69 ┆ Applies only to disk fi┆
0x0c80…0ca0 6c 65 73 20 74 68 61 74 20 61 72 65 20 5f 08 6e 5f 08 6f 5f 08 74 20 6f 70 65 6e 65 64 0a 20 20 ┆les that are _ n_ o_ t opened ┆
0x0ca0…0cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 20 74 68 65 20 4f 5f 43 4f 4e 54 52 4f 4c 20 ┆ with the O_CONTROL ┆
0x0cc0…0ce0 66 6c 61 67 20 73 65 74 2e 20 49 66 20 74 68 65 20 49 4f 5f 4d 42 4c 4f 43 4b 58 0a 20 20 20 20 ┆flag set. If the IO_MBLOCKX ┆
0x0ce0…0d00 20 20 20 20 20 20 20 20 20 20 20 66 6c 61 67 20 69 73 20 73 65 74 2c 20 74 68 65 20 5f 08 77 5f ┆ flag is set, the _ w_┆
0x0d00…0d20 08 72 5f 08 69 5f 08 74 5f 08 65 20 61 70 70 6c 69 65 73 20 61 6e 20 65 78 63 6c 75 73 69 76 65 ┆ r_ i_ t_ e applies an exclusive┆
0x0d20…0d40 20 6c 6f 63 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 20 65 61 63 68 20 62 6c 6f ┆ lock to each blo┆
0x0d40…0d60 63 6b 20 61 63 63 65 73 73 65 64 20 62 79 20 74 68 65 20 77 72 69 74 65 20 6f 70 65 72 61 74 69 ┆ck accessed by the write operati┆
0x0d60…0d80 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 6c 6f 63 6b 20 6d 75 73 74 ┆on. The lock must┆
0x0d80…0da0 20 62 65 20 72 65 6d 6f 76 65 64 20 6d 61 6e 75 61 6c 6c 79 20 75 73 69 6e 67 20 74 68 65 20 5f ┆ be removed manually using the _┆
0x0da0…0dc0 08 6d 5f 08 62 5f 08 6c 5f 08 6f 5f 08 63 5f 08 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆ m_ b_ l_ o_ c_ k ┆
0x0dc0…0de0 20 73 79 73 74 65 6d 20 63 61 6c 6c 2e 20 20 49 6e 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 6d 6f ┆ system call. In transaction mo┆
0x0de0…0e00 64 65 20 74 68 65 20 66 6c 61 67 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 67 ┆de the flag is ig┆
0x0e00…0e20 6e 6f 72 65 64 20 62 65 63 61 75 73 65 20 65 78 63 6c 75 73 69 76 65 20 62 6c 6f 63 6b 2d 6c 65 ┆nored because exclusive block-le┆
0x0e20…0e40 76 65 6c 20 6c 6f 63 6b 73 20 61 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 62 74 ┆vel locks are obt┆
0x0e40…0e60 61 69 6e 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 2e 0a 0a 20 20 20 20 20 20 20 20 20 20 ┆ained automatically. ┆
0x0e60…0e80 49 4f 5f 4d 58 49 50 43 49 4e 56 49 54 45 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 70 ┆IO_MXIPCINVITE Ap┆
0x0e80…0ea0 70 65 6e 64 73 20 61 6e 20 60 60 69 6e 76 69 74 61 74 69 6f 6e 20 74 6f 20 6a 6f 69 6e 27 27 20 ┆pends an ``invitation to join'' ┆
0x0ea0…0ec0 69 6e 64 69 63 61 74 69 6f 6e 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 65 ┆indication to the┆
0x0ec0…0ee0 20 77 72 69 74 74 65 6e 20 6d 65 73 73 61 67 65 20 65 78 70 6c 69 63 69 74 6c 79 2e 20 20 54 68 ┆ written message explicitly. Th┆
0x0ee0…0f00 65 20 72 65 61 64 65 72 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 20 ┆e reader of this ┆
0x0f00…0f20 6d 65 73 73 61 67 65 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 6a 6f 69 6e 20 ┆message will automatically join ┆
0x0f20…0f40 74 68 65 20 74 72 61 6e 73 61 63 2d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 69 6f 6e ┆the transac- tion┆
0x0f40…0f60 2e 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68 65 20 60 60 69 6e 76 69 74 61 74 69 6f 6e 20 74 6f 20 ┆. Normally, the ``invitation to ┆
0x0f60…0f80 6a 6f 69 6e 27 27 20 69 6e 64 69 63 61 2d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 69 ┆join'' indica- ti┆
0x0f80…0fa0 6f 6e 20 69 73 20 61 70 70 65 6e 64 65 64 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 74 6f 20 ┆on is appended automatically to ┆
0x0fa0…0fc0 74 68 65 20 66 69 72 73 74 20 6d 65 73 2d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 61 ┆the first mes- sa┆
0x0fc0…0fe0 67 65 20 77 72 69 74 74 65 6e 20 74 6f 20 61 6e 20 4d 58 49 50 43 20 63 68 61 6e 6e 65 6c 20 61 ┆ge written to an MXIPC channel a┆
0x0fe0…1000 66 74 65 72 20 74 72 61 6e 73 61 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆fter transaction ┆
0x1000…1020 62 65 67 69 6e 2e 20 20 54 68 69 73 20 66 6c 61 67 20 65 6e 66 6f 72 63 65 73 20 74 68 65 20 69 ┆begin. This flag enforces the i┆
0x1020…1040 6e 76 69 74 61 74 69 6f 6e 2e 20 20 49 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 ┆nvitation. It pr┆
0x1040…1060 6f 76 69 64 65 73 20 61 20 77 61 79 20 74 6f 20 62 72 69 6e 67 20 61 20 73 65 72 76 65 72 20 70 ┆ovides a way to bring a server p┆
0x1060…1080 72 6f 63 65 73 73 20 62 61 63 6b 20 69 6e 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆rocess back into ┆
0x1080…10a0 74 68 65 20 73 61 6d 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 2e 0a 0a 20 20 20 20 20 20 20 20 20 ┆the same transaction. ┆
0x10a0…10c0 20 49 4f 5f 4e 42 4c 4f 43 4b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 70 65 63 69 66 ┆ IO_NBLOCK Specif┆
0x10c0…10e0 69 65 73 20 74 68 61 74 20 74 68 69 73 20 77 72 69 74 65 20 69 73 20 74 6f 20 62 65 20 6e 6f 6e ┆ies that this write is to be non┆
0x10e0…1100 2d 62 6c 6f 63 6b 69 6e 67 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 67 61 72 64 ┆-blocking, regard┆
0x1100…1120 6c 65 73 73 20 6f 66 20 74 68 65 20 64 65 66 61 75 6c 74 20 61 63 74 69 6f 6e 20 66 6f 72 20 49 ┆less of the default action for I┆
0x1120…1140 2f 4f 20 6f 6e 20 74 68 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 73 63 72 69 ┆/O on this descri┆
0x1140…1160 70 74 6f 72 2e 20 20 49 66 20 61 20 62 6c 6f 63 6b 69 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 20 77 ┆ptor. If a blocking condition w┆
0x1160…1180 6f 75 6c 64 20 6f 63 63 75 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5f 08 77 5f 08 ┆ould occur, _ w_ ┆
0x1180…11a0 72 5f 08 69 5f 08 74 5f 08 65 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 2e 0a 0a 20 20 ┆r_ i_ t_ e returns an error. ┆
0x11a0…11c0 20 20 20 20 20 20 20 20 49 4f 5f 53 49 47 45 52 52 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆ IO_SIGERR ┆
0x11c0…11e0 20 47 65 6e 65 72 61 74 65 20 53 49 47 45 52 52 20 61 6e 64 20 53 49 47 50 49 50 45 2e 20 20 5f ┆ Generate SIGERR and SIGPIPE. _┆
0x11e0…1200 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 20 64 6f 65 73 20 6e 6f 74 0a 20 20 20 20 20 20 20 20 ┆ w_ r_ i_ t_ e does not ┆
0x1200…1220 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 20 65 72 ┆ return the appropriate er┆
0x1220…1240 72 6f 72 20 63 6f 64 65 2c 20 62 75 74 20 67 65 6e 65 72 61 74 65 73 0a 20 20 20 20 20 20 20 20 ┆ror code, but generates ┆
0x1240…1260 20 20 20 20 20 20 20 74 68 65 20 73 69 67 6e 61 6c 73 20 69 6e 73 74 65 61 64 2e 0a 0a 20 20 20 ┆ the signals instead. ┆
0x1260…1280 20 20 20 20 20 20 20 49 4f 5f 4e 4f 53 49 47 41 42 4f 52 54 0a 20 20 20 20 20 20 20 20 20 20 20 ┆ IO_NOSIGABORT ┆
0x1280…12a0 20 20 20 20 53 70 65 63 69 66 69 65 73 20 74 68 61 74 20 74 68 65 20 53 49 47 41 42 4f 52 54 20 ┆ Specifies that the SIGABORT ┆
0x12a0…12c0 73 69 67 6e 61 6c 20 69 73 20 6e 6f 74 20 74 6f 20 62 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 ┆signal is not to be ┆
0x12c0…12e0 20 20 20 67 65 6e 65 72 61 74 65 64 2e 20 20 49 66 20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 ┆ generated. If a transaction ┆
0x12e0…1300 61 62 6f 72 74 20 64 6f 65 73 20 6f 63 63 75 72 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆abort does occur, ┆
0x1300…1320 20 5f 08 72 5f 08 65 5f 08 61 5f 08 64 20 72 65 74 75 72 6e 73 20 61 6e 20 65 72 72 6f 72 20 61 ┆ _ r_ e_ a_ d returns an error a┆
0x1320…1340 6e 64 20 5f 08 65 5f 08 72 5f 08 72 5f 08 6e 5f 08 6f 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 69 ┆nd _ e_ r_ r_ n_ o contains an i┆
0x1340…1360 6e 64 69 2d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 69 6f 6e 20 6f 66 20 74 68 ┆ndi- cation of th┆
0x1360…1380 65 20 65 72 72 6f 72 2e 20 20 54 68 69 73 20 66 6c 61 67 20 69 73 20 75 73 65 64 20 70 72 69 6d ┆e error. This flag is used prim┆
0x1380…13a0 61 72 69 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 75 73 65 72 20 77 72 ┆arily for user wr┆
0x13a0…13c0 69 74 74 65 6e 20 64 65 61 64 6c 6f 63 6b 20 72 65 63 6f 76 65 72 79 3b 20 68 6f 77 65 76 65 72 ┆itten deadlock recovery; however┆
0x13c0…13e0 2c 20 61 6c 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 61 6e 73 61 63 74 69 6f 6e ┆, all transaction┆
0x13e0…1400 20 61 62 6f 72 74 73 20 72 65 74 75 72 6e 20 61 6e 20 65 72 72 6f 72 20 77 68 65 6e 20 74 68 69 ┆ aborts return an error when thi┆
0x1400…1420 73 20 66 6c 61 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 20 73 65 74 2e 0a 0a 20 ┆s flag is set. ┆
0x1420…1440 20 20 20 20 62 08 62 08 62 08 62 75 08 75 08 75 08 75 66 08 66 08 66 08 66 20 20 52 65 66 65 72 ┆ b b b bu u u uf f f f Refer┆
0x1440…1460 73 20 74 6f 20 74 68 65 20 64 61 74 61 20 74 6f 20 62 65 20 77 72 69 74 74 65 6e 20 69 6e 20 74 ┆s to the data to be written in t┆
0x1460…1480 68 65 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 20 73 79 73 74 65 6d 0a 20 20 20 20 20 20 ┆he _ w_ r_ i_ t_ e system ┆
0x1480…14a0 20 20 20 20 63 61 6c 6c 2e 0a 0a 20 20 20 20 20 6e 08 6e 08 6e 08 6e 62 08 62 08 62 08 62 79 08 ┆ call. n n n nb b b by ┆
0x14a0…14c0 79 08 79 08 79 74 08 74 08 74 08 74 65 08 65 08 65 08 65 73 08 73 08 73 08 73 0a 20 20 20 20 20 ┆y y yt t t te e e es s s s ┆
0x14c0…14e0 20 20 20 20 20 43 6f 6e 74 61 69 6e 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 ┆ Contains the number of byte┆
0x14e0…1500 73 20 74 6f 20 62 65 20 77 72 69 74 74 65 6e 20 66 72 6f 6d 20 5f 08 62 5f 08 75 5f 08 66 20 69 ┆s to be written from _ b_ u_ f i┆
0x1500…1520 6e 0a 20 20 20 20 20 20 20 20 20 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 2e 0a 0a 20 20 ┆n _ w_ r_ i_ t_ e. ┆
0x1520…1540 20 20 20 69 08 69 08 69 08 69 6f 08 6f 08 6f 08 6f 76 08 76 08 76 08 76 20 69 6e 20 74 68 65 20 ┆ i i i io o o ov v v v in the ┆
0x1540…1560 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 5f 08 76 20 73 79 73 74 65 6d 20 63 61 6c 6c 20 69 ┆_ w_ r_ i_ t_ e_ v system call i┆
0x1560…1580 73 20 61 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 61 6e 20 61 72 72 61 79 0a 20 20 20 20 20 20 ┆s a reference to an array ┆
0x1580…15a0 20 20 20 20 6f 66 20 69 6f 76 65 63 20 73 74 72 75 63 74 75 72 65 73 2e 20 20 45 61 63 68 20 73 ┆ of iovec structures. Each s┆
0x15a0…15c0 74 72 75 63 74 75 72 65 20 63 6f 6e 74 61 69 6e 73 20 61 20 70 6f 69 6e 74 65 72 0a 20 20 20 20 ┆tructure contains a pointer ┆
0x15c0…15e0 20 20 20 20 20 20 74 6f 20 61 20 62 75 66 66 65 72 20 61 6e 64 20 61 20 6c 65 6e 67 74 68 20 66 ┆ to a buffer and a length f┆
0x15e0…1600 69 65 6c 64 2e 20 20 54 68 65 20 69 6f 76 65 63 20 73 74 72 75 63 74 75 72 65 20 69 73 0a 20 20 ┆ield. The iovec structure is ┆
0x1600…1620 20 20 20 20 20 20 20 20 64 65 66 69 6e 65 64 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a 20 20 20 20 ┆ defined as follows: ┆
0x1620…1640 20 20 20 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 69 6f 76 65 63 20 7b 0a 20 20 20 20 20 20 ┆ struct iovec { ┆
0x1640…1660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 64 64 72 5f 74 20 20 20 69 6f 76 5f 62 61 73 65 ┆ caddr_t iov_base┆
0x1660…1680 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 20 20 20 20 20 20 ┆; int ┆
0x1680…16a0 69 6f 76 5f 6c 65 6e 3b 0a 0a 0a 0a 0a 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b ┆iov_len; };┆
0x16a0…16c0 0a 0a 20 20 20 20 20 69 08 69 08 69 08 69 6f 08 6f 08 6f 08 6f 76 08 76 08 76 08 76 63 08 63 08 ┆ i i i io o o ov v v vc c ┆
0x16c0…16e0 63 08 63 6e 08 6e 08 6e 08 6e 74 08 74 08 74 08 74 20 69 6e 20 74 68 65 20 63 61 6c 6c 20 73 70 ┆c cn n n nt t t t in the call sp┆
0x16e0…1700 65 63 69 66 69 65 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 69 6f 76 65 63 20 73 08 73 08 ┆ecifies the number of iovec s s ┆
0x1700…1720 73 08 73 74 08 74 08 74 08 74 72 08 72 08 72 08 72 75 08 75 08 75 08 75 63 08 63 08 63 08 63 74 ┆s st t t tr r r ru u u uc c c ct┆
0x1720…1740 08 74 08 74 08 74 75 08 75 08 75 08 75 72 08 72 08 72 08 72 65 08 65 08 65 08 65 73 08 73 08 73 ┆ t t tu u u ur r r re e e es s s┆
0x1740…1760 08 73 0a 20 20 20 20 20 20 20 20 20 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 5f 08 69 5f 08 ┆ s pointed to by _ i_ ┆
0x1760…1780 6f 5f 08 76 2e 20 20 54 68 65 20 62 75 66 66 65 72 73 20 73 70 65 63 69 66 69 65 64 20 62 79 20 ┆o_ v. The buffers specified by ┆
0x1780…17a0 74 68 65 20 65 6c 65 2d 0a 20 20 20 20 20 20 20 20 20 20 6d 65 6e 74 73 20 6f 66 20 74 68 65 20 ┆the ele- ments of the ┆
0x17a0…17c0 5f 08 69 5f 08 6f 5f 08 76 20 61 72 72 61 79 20 73 74 61 72 74 20 61 74 20 30 20 61 6e 64 20 67 ┆_ i_ o_ v array start at 0 and g┆
0x17c0…17e0 6f 20 74 6f 20 5f 08 69 5f 08 6f 5f 08 76 5f 08 63 5f 08 6e 5f 08 74 2d 31 0a 20 20 20 20 20 20 ┆o to _ i_ o_ v_ c_ n_ t-1 ┆
0x17e0…1800 20 20 20 20 28 74 68 61 74 20 69 73 2c 20 69 6f 76 5b 30 5d 2c 20 69 6f 76 5b 31 5d 2c 20 2e 2e ┆ (that is, iov[0], iov[1], ..┆
0x1800…1820 2e 2c 20 69 6f 76 5b 69 6f 76 63 6e 74 2d 31 5d 29 2e 0a 20 20 20 20 20 20 20 20 20 20 54 68 65 ┆., iov[iovcnt-1]). The┆
0x1820…1840 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 74 6f 20 62 65 20 77 72 69 74 74 65 6e 20 69 ┆ number of bytes to be written i┆
0x1840…1860 6e 20 61 20 5f 08 77 5f 08 72 5f 08 69 5f 08 74 5f 08 65 5f 08 76 20 63 61 6c 6c 20 69 73 0a 20 ┆n a _ w_ r_ i_ t_ e_ v call is ┆
0x1860…1880 20 20 20 20 20 20 20 20 20 74 68 65 20 73 75 6d 20 6f 66 20 74 68 65 20 6c 65 6e 67 74 68 73 20 ┆ the sum of the lengths ┆
0x1880…18a0 6f 66 20 74 68 65 20 62 75 66 66 65 72 73 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 0a 20 20 20 ┆of the buffers pointed to by ┆
0x18a0…18c0 20 20 20 20 20 20 20 5f 08 69 5f 08 6f 5f 08 76 2e 0a 0a 20 20 20 20 20 57 08 57 08 57 08 57 72 ┆ _ i_ o_ v. W W W Wr┆
0x18c0…18e0 08 72 08 72 08 72 69 08 69 08 69 08 69 74 08 74 08 74 08 74 65 08 65 08 65 08 65 20 4f 08 4f 08 ┆ r r ri i i it t t te e e e O O ┆
0x18e0…1900 4f 08 4f 70 08 70 08 70 08 70 65 08 65 08 65 08 65 72 08 72 08 72 08 72 61 08 61 08 61 08 61 74 ┆O Op p p pe e e er r r ra a a at┆
0x1900…1920 08 74 08 74 08 74 69 08 69 08 69 08 69 6f 08 6f 08 6f 08 6f 6e 08 6e 08 6e 08 6e 0a 20 20 20 20 ┆ t t ti i i io o o on n n n ┆
[…truncated at 200 lines…]