1 #!/bin/sh 2 # 3 # 4 # CDDL HEADER START 5 # 6 # The contents of this file are subject to the terms 7 # of the Common Development and Distribution License 8 # (the "License"). You may not use this file except 9 # in compliance with the License. 10 # 11 # You can obtain a copy of the license at 12 # src/OPENSOLARIS.LICENSE 13 # or http://www.opensolaris.org/os/licensing. 14 # See the License for the specific language governing 15 # permissions and limitations under the License. 16 # 17 # When distributing Covered Code, include this CDDL 18 # HEADER in each file and include the License file at 19 # usr/src/OPENSOLARIS.LICENSE. If applicable, 20 # add the following below this CDDL HEADER, with the 21 # fields enclosed by brackets "[]" replaced with your 22 # own identifying information: Portions Copyright [yyyy] 23 # [name of copyright owner] 24 # 25 # CDDL HEADER END 26 # 27 28 # 29 # Copyright 2007 Sun Microsystems, Inc. All rights reserved. 30 # Use is subject to license terms. 31 # 32 33 bench_version=0.4.1 34 libmicro_version=`bin/tattle -V` 35 36 case $libmicro_version in 37 $bench_version) 38 ;; 39 *) 40 echo "ERROR: libMicro version doesn't match 'bench' script version" 41 exit 1 42 esac 43 44 TMPROOT=/tmp/libmicro.$$ 45 VARROOT=/var/tmp/libmicro.$$ 46 mkdir -p $TMPROOT 47 mkdir -p $VARROOT 48 trap "rm -rf $TMPROOT $VARROOT" 0 2 49 50 TFILE=$TMPROOT/data 51 IFILE=$TMPROOT/ifile 52 TDIR1=$TMPROOT/0/1/2/3/4/5/6/7/8/9 53 TDIR2=$TMPROOT/1/2/3/4/5/6/7/8/9/0 54 VFILE=$VARROOT/data 55 VDIR1=$VARROOT/0/1/2/3/4/5/6/7/8/9 56 VDIR2=$VARROOT/1/2/3/4/5/6/7/8/9/0 57 58 59 OPTS="-E -C 200 -L -S -W" 60 61 dd if=/dev/zero of=$TFILE bs=1024k count=10 2>/dev/null 62 dd if=/dev/zero of=$VFILE bs=1024k count=10 2>/dev/null 63 mkdir -p $TDIR1 $TDIR2 64 mkdir -p $VDIR1 $VDIR2 65 66 touch $IFILE 67 68 ARCH=`arch -k` 69 70 # produce benchmark header for easier comparisons 71 72 hostname=`uname -n` 73 74 if [ -f /usr/sbin/psrinfo ]; then 75 p_count=`psrinfo|wc -l` 76 p_mhz=`psrinfo -v | awk '/operates/{print $6 "MHz"; exit }'` 77 p_type=`psrinfo -vp 2>/dev/null | awk '{if (NR == 3) {print $0; exit}}'` 78 fi 79 80 if [ -f /proc/cpuinfo ]; then 81 p_count=`egrep processor /proc/cpuinfo | wc -l` 82 p_mhz=`awk -F: '/cpu MHz/{printf("%5.0f00Mhz\n",$2/100); exit}' /proc/cpuinfo` 83 p_type=`awk -F: '/model name/{print $2; exit}' /proc/cpuinfo` 84 fi 85 86 printf "!Libmicro_#: %30s\n" $libmicro_version 87 printf "!Options: %30s\n" "$OPTS" 88 printf "!Machine_name: %30s\n" $hostname 89 printf "!OS_name: %30s\n" `uname -s` 90 printf "!OS_release: %30s\n" `uname -r` 91 printf "!OS_build: %30.18s\n" "`uname -v`" 92 printf "!Processor: %30s\n" `uname -m` 93 printf "!#CPUs: %30s\n" $p_count 94 printf "!CPU_MHz: %30s\n" $p_mhz 95 printf "!CPU_NAME: %30s\n" "$p_type" 96 printf "!IP_address: %30s\n" `getent hosts $hostname | awk '{print $1}'` 97 printf "!Run_by: %30s\n" $LOGNAME 98 printf "!Date: %30s\n" "`date '+%D %R'`" 99 printf "!Compiler: %30s\n" `bin/tattle -c` 100 printf "!Compiler Ver.:%30s\n" "`bin/tattle -v`" 101 printf "!sizeof(long): %30s\n" `bin/tattle -s` 102 printf "!extra_CFLAGS: %30s\n" "`bin/tattle -f`" 103 printf "!TimerRes: %30s\n" "`bin/tattle -r`" 104 105 mkdir -p $TMPROOT/bin 106 cp bin-$ARCH/exec_bin $TMPROOT/bin/$A 107 108 while read A B 109 do 110 # $A contains the command, $B contains the arguments 111 # we echo blank lines and comments 112 # we ship anything which fails to match *$1* (useful 113 # if we only want to test one case, but a nasty hack) 114 115 case $A in 116 ""|"#"*) 117 echo "$A $B" 118 continue 119 ;; 120 *$1*) 121 ;; 122 *) 123 continue 124 esac 125 126 if [ ! -f $TMPROOT/bin/$A ] 127 then 128 cp bin-$ARCH/$A $TMPROOT/bin/$A 129 fi 130 (cd $TMPROOT && eval "bin/$A $B") 131 done <<. 132 # 133 # Obligatory null system call: use very short time 134 # for default since SuSe implements this "syscall" in userland 135 # 136 getpid $OPTS -N "getpid" -I 5 137 138 getenv $OPTS -N "getenv" -s 100 -I 100 139 getenv $OPTS -N "getenvT2" -s 100 -I 100 -T 2 140 141 gettimeofday $OPTS -N "gettimeofday" 142 143 log $OPTS -N "log" -I 20 144 exp $OPTS -N "exp" -I 20 145 lrand48 $OPTS -N "lrand48" 146 147 memset $OPTS -N "memset_10" -s 10 -I 10 148 memset $OPTS -N "memset_256" -s 256 -I 20 149 memset $OPTS -N "memset_256_u" -s 256 -a 1 -I 20 150 memset $OPTS -N "memset_1k" -s 1k -I 100 151 memset $OPTS -N "memset_4k" -s 4k -I 250 152 memset $OPTS -N "memset_4k_uc" -s 4k -u -I 400 153 154 memset $OPTS -N "memset_10k" -s 10k -I 600 155 memset $OPTS -N "memset_1m" -s 1m -I 200000 156 memset $OPTS -N "memset_10m" -s 10m -I 2000000 157 memset $OPTS -N "memsetP2_10m" -s 10m -P 2 -I 2000000 158 159 memrand $OPTS -N "memrand" -s 128m -B 10000 160 cachetocache $OPTS -N "cachetocache" -s 100k -T 2 -I 200 161 162 isatty $OPTS -N "isatty_yes" 163 isatty $OPTS -N "isatty_no" -f $IFILE 164 165 malloc $OPTS -N "malloc_10" -s 10 -g 10 -I 50 166 malloc $OPTS -N "malloc_100" -s 100 -g 10 -I 50 167 malloc $OPTS -N "malloc_1k" -s 1k -g 10 -I 50 168 malloc $OPTS -N "malloc_10k" -s 10k -g 10 -I 50 169 malloc $OPTS -N "malloc_100k" -s 100k -g 10 -I 2000 170 171 malloc $OPTS -N "mallocT2_10" -s 10 -g 10 -T 2 -I 200 172 malloc $OPTS -N "mallocT2_100" -s 100 -g 10 -T 2 -I 200 173 malloc $OPTS -N "mallocT2_1k" -s 1k -g 10 -T 2 -I 200 174 malloc $OPTS -N "mallocT2_10k" -s 10k -g 10 -T 2 -I 200 175 malloc $OPTS -N "mallocT2_100k" -s 100k -g 10 -T 2 -I 10000 176 177 close $OPTS -N "close_bad" -B 32 -b 178 close $OPTS -N "close_tmp" -B 32 -f $TFILE 179 close $OPTS -N "close_usr" -B 32 -f $VFILE 180 close $OPTS -N "close_zero" -B 32 -f /dev/zero 181 182 memcpy $OPTS -N "memcpy_10" -s 10 -I 10 183 memcpy $OPTS -N "memcpy_1k" -s 1k -I 50 184 memcpy $OPTS -N "memcpy_10k" -s 10k -I 800 185 memcpy $OPTS -N "memcpy_1m" -s 1m -I 500000 186 memcpy $OPTS -N "memcpy_10m" -s 10m -I 5000000 187 188 strcpy $OPTS -N "strcpy_10" -s 10 -I 5 189 strcpy $OPTS -N "strcpy_1k" -s 1k -I 100 190 191 strlen $OPTS -N "strlen_10" -s 10 -I 5 192 strlen $OPTS -N "strlen_1k" -s 1k -I 100 193 194 strchr $OPTS -N "strchr_10" -s 10 -I 5 195 strchr $OPTS -N "strchr_1k" -s 1k -I 200 196 strcmp $OPTS -N "strcmp_10" -s 10 -I 10 197 strcmp $OPTS -N "strcmp_1k" -s 1k -I 200 198 199 strcasecmp $OPTS -N "scasecmp_10" -s 10 -I 50 200 strcasecmp $OPTS -N "scasecmp_1k" -s 1k -I 20000 201 202 strtol $OPTS -N "strtol" -I 20 203 204 getcontext $OPTS -N "getcontext" -I 100 205 setcontext $OPTS -N "setcontext" -I 100 206 207 mutex $OPTS -N "mutex_st" -I 10 208 mutex $OPTS -N "mutex_mt" -t -I 10 209 mutex $OPTS -N "mutex_T2" -T 2 -I 100 210 211 longjmp $OPTS -N "longjmp" -I 10 212 siglongjmp $OPTS -N "siglongjmp" -I 20 213 214 getrusage $OPTS -N "getrusage" -I 200 215 216 times $OPTS -N "times" -I 200 217 time $OPTS -N "time" -I 50 218 localtime_r $OPTS -N "localtime_r" -I 200 219 strftime $OPTS -N "strftime" -I 10000 220 221 mktime $OPTS -N "mktime" -I 500 222 mktime $OPTS -N "mktimeT2" -T 2 -I 1000 223 224 cascade_mutex $OPTS -N "c_mutex_1" -I 50 225 cascade_mutex $OPTS -N "c_mutex_10" -T 10 -I 5000 226 cascade_mutex $OPTS -N "c_mutex_200" -T 200 -I 2000000 227 228 cascade_cond $OPTS -N "c_cond_1" -I 100 229 cascade_cond $OPTS -N "c_cond_10" -T 10 -I 3000 230 cascade_cond $OPTS -N "c_cond_200" -T 200 -I 2000000 231 232 cascade_lockf $OPTS -N "c_lockf_1" -I 1000 233 cascade_lockf $OPTS -N "c_lockf_10" -P 10 -I 50000 234 cascade_lockf $OPTS -N "c_lockf_200" -P 200 -I 5000000 235 236 cascade_flock $OPTS -N "c_flock" -I 1000 237 cascade_flock $OPTS -N "c_flock_10" -P 10 -I 50000 238 cascade_flock $OPTS -N "c_flock_200" -P 200 -I 5000000 239 240 cascade_fcntl $OPTS -N "c_fcntl_1" -I 2000 241 cascade_fcntl $OPTS -N "c_fcntl_10" -P 10 -I 20000 242 cascade_fcntl $OPTS -N "c_fcntl_200" -P 200 -I 5000000 243 244 file_lock $OPTS -N "file_lock" -I 1000 245 246 getsockname $OPTS -N "getsockname" -I 100 247 getpeername $OPTS -N "getpeername" -I 100 248 249 chdir $OPTS -N "chdir_tmp" -I 2000 $TDIR1 $TDIR2 250 chdir $OPTS -N "chdir_usr" -I 2000 $VDIR1 $VDIR2 251 252 chdir $OPTS -N "chgetwd_tmp" -I 3000 -g $TDIR1 $TDIR2 253 chdir $OPTS -N "chgetwd_usr" -I 3000 -g $VDIR1 $VDIR2 254 255 realpath $OPTS -N "realpath_tmp" -I 3000 -f $TDIR1 256 realpath $OPTS -N "realpath_usr" -I 3000 -f $VDIR1 257 258 stat $OPTS -N "stat_tmp" -I 1000 -f $TFILE 259 stat $OPTS -N "stat_usr" -I 1000 -f $VFILE 260 261 fcntl $OPTS -N "fcntl_tmp" -I 100 -f $TFILE 262 fcntl $OPTS -N "fcntl_usr" -I 100 -f $VFILE 263 fcntl_ndelay $OPTS -N "fcntl_ndelay" -I 100 264 265 lseek $OPTS -N "lseek_t8k" -s 8k -I 50 -f $TFILE 266 lseek $OPTS -N "lseek_u8k" -s 8k -I 50 -f $VFILE 267 268 open $OPTS -N "open_tmp" -B 256 -f $TFILE 269 open $OPTS -N "open_usr" -B 256 -f $VFILE 270 open $OPTS -N "open_zero" -B 256 -f /dev/zero 271 272 dup $OPTS -N "dup" -B 512 273 274 socket $OPTS -N "socket_u" -B 256 275 socket $OPTS -N "socket_i" -B 256 -f PF_INET 276 277 socketpair $OPTS -N "socketpair" -B 256 278 279 setsockopt $OPTS -N "setsockopt" -I 200 280 281 bind $OPTS -N "bind" -B 100 282 283 listen $OPTS -N "listen" -B 100 284 285 connection $OPTS -N "connection" -B 256 286 287 poll $OPTS -N "poll_10" -n 10 -I 500 288 poll $OPTS -N "poll_100" -n 100 -I 1000 289 poll $OPTS -N "poll_1000" -n 1000 -I 5000 290 291 poll $OPTS -N "poll_w10" -n 10 -I 500 -w 1 292 poll $OPTS -N "poll_w100" -n 100 -I 2000 -w 10 293 poll $OPTS -N "poll_w1000" -n 1000 -I 40000 -w 100 294 295 select $OPTS -N "select_10" -n 10 -I 500 296 select $OPTS -N "select_100" -n 100 -I 1000 297 select $OPTS -N "select_1000" -n 1000 -I 5000 298 299 select $OPTS -N "select_w10" -n 10 -I 500 -w 1 300 select $OPTS -N "select_w100" -n 100 -I 2000 -w 10 301 select $OPTS -N "select_w1000" -n 1000 -I 40000 -w 100 302 303 semop $OPTS -N "semop" -I 200 304 305 sigaction $OPTS -N "sigaction" -I 100 306 signal $OPTS -N "signal" -I 1000 307 sigprocmask $OPTS -N "sigprocmask" -I 200 308 309 pthread_create $OPTS -N "pthread_8" -B 8 310 pthread_create $OPTS -N "pthread_32" -B 32 311 pthread_create $OPTS -N "pthread_128" -B 128 312 pthread_create $OPTS -N "pthread_512" -B 512 313 314 fork $OPTS -N "fork_10" -B 10 315 fork $OPTS -N "fork_100" -B 100 -C 100 316 fork $OPTS -N "fork_1000" -B 1000 -C 50 317 318 exit $OPTS -N "exit_10" -B 10 319 exit $OPTS -N "exit_100" -B 100 320 exit $OPTS -N "exit_1000" -B 1000 -C 50 321 322 exit $OPTS -N "exit_10_nolibc" -e -B 10 323 324 exec $OPTS -N "exec" -B 10 325 326 system $OPTS -N "system" -I 1000000 327 328 recurse $OPTS -N "recurse" -B 512 329 330 read $OPTS -N "read_t1k" -s 1k -f $TFILE 331 read $OPTS -N "read_t10k" -s 10k -f $TFILE 332 read $OPTS -N "read_t100k" -s 100k -f $TFILE 333 334 read $OPTS -N "read_u1k" -s 1k -f $VFILE 335 read $OPTS -N "read_u10k" -s 10k -f $VFILE 336 read $OPTS -N "read_u100k" -s 100k -f $VFILE 337 338 read $OPTS -N "read_z1k" -s 1k -f /dev/zero 339 read $OPTS -N "read_z10k" -s 10k -f /dev/zero 340 read $OPTS -N "read_z100k" -s 100k -f /dev/zero 341 read $OPTS -N "read_zw100k" -s 100k -w -f /dev/zero 342 343 write $OPTS -N "write_t1k" -s 1k -f $TFILE 344 write $OPTS -N "write_t10k" -s 10k -f $TFILE 345 write $OPTS -N "write_t100k" -s 100k -f $TFILE 346 347 write $OPTS -N "write_u1k" -s 1k -f $VFILE 348 write $OPTS -N "write_u10k" -s 10k -f $VFILE 349 write $OPTS -N "write_u100k" -s 100k -f $VFILE 350 351 write $OPTS -N "write_n1k" -s 1k -I 100 -B 0 -f /dev/null 352 write $OPTS -N "write_n10k" -s 10k -I 100 -B 0 -f /dev/null 353 write $OPTS -N "write_n100k" -s 100k -I 100 -B 0 -f /dev/null 354 355 writev $OPTS -N "writev_t1k" -s 1k -f $TFILE 356 writev $OPTS -N "writev_t10k" -s 10k -f $TFILE 357 writev $OPTS -N "writev_t100k" -s 100k -f $TFILE 358 359 writev $OPTS -N "writev_u1k" -s 1k -f $VFILE 360 writev $OPTS -N "writev_u10k" -s 10k -f $VFILE 361 writev $OPTS -N "writev_u100k" -s 100k -f $VFILE 362 363 writev $OPTS -N "writev_n1k" -s 1k -I 100 -B 0 -f /dev/null 364 writev $OPTS -N "writev_n10k" -s 10k -I 100 -B 0 -f /dev/null 365 writev $OPTS -N "writev_n100k" -s 100k -I 100 -B 0 -f /dev/null 366 367 pread $OPTS -N "pread_t1k" -s 1k -I 300 -f $TFILE 368 pread $OPTS -N "pread_t10k" -s 10k -I 1000 -f $TFILE 369 pread $OPTS -N "pread_t100k" -s 100k -I 10000 -f $TFILE 370 371 pread $OPTS -N "pread_u1k" -s 1k -I 300 -f $VFILE 372 pread $OPTS -N "pread_u10k" -s 10k -I 1000 -f $VFILE 373 pread $OPTS -N "pread_u100k" -s 100k -I 10000 -f $VFILE 374 375 pread $OPTS -N "pread_z1k" -s 1k -I 300 -f /dev/zero 376 pread $OPTS -N "pread_z10k" -s 10k -I 1000 -f /dev/zero 377 pread $OPTS -N "pread_z100k" -s 100k -I 2000 -f /dev/zero 378 pread $OPTS -N "pread_zw100k" -s 100k -w -I 10000 -f /dev/zero 379 380 pwrite $OPTS -N "pwrite_t1k" -s 1k -I 500 -f $TFILE 381 pwrite $OPTS -N "pwrite_t10k" -s 10k -I 1000 -f $TFILE 382 pwrite $OPTS -N "pwrite_t100k" -s 100k -I 10000 -f $TFILE 383 384 pwrite $OPTS -N "pwrite_u1k" -s 1k -I 500 -f $VFILE 385 pwrite $OPTS -N "pwrite_u10k" -s 10k -I 1000 -f $VFILE 386 pwrite $OPTS -N "pwrite_u100k" -s 100k -I 20000 -f $VFILE 387 388 pwrite $OPTS -N "pwrite_n1k" -s 1k -I 100 -f /dev/null 389 pwrite $OPTS -N "pwrite_n10k" -s 10k -I 100 -f /dev/null 390 pwrite $OPTS -N "pwrite_n100k" -s 100k -I 100 -f /dev/null 391 392 mmap $OPTS -N "mmap_z8k" -l 8k -I 1000 -f /dev/zero 393 mmap $OPTS -N "mmap_z128k" -l 128k -I 2000 -f /dev/zero 394 mmap $OPTS -N "mmap_t8k" -l 8k -I 1000 -f $TFILE 395 mmap $OPTS -N "mmap_t128k" -l 128k -I 1000 -f $TFILE 396 mmap $OPTS -N "mmap_u8k" -l 8k -I 1000 -f $VFILE 397 mmap $OPTS -N "mmap_u128k" -l 128k -I 1000 -f $VFILE 398 mmap $OPTS -N "mmap_a8k" -l 8k -I 200 -f MAP_ANON 399 mmap $OPTS -N "mmap_a128k" -l 128k -I 200 -f MAP_ANON 400 401 402 mmap $OPTS -N "mmap_rz8k" -l 8k -I 2000 -r -f /dev/zero 403 mmap $OPTS -N "mmap_rz128k" -l 128k -I 2000 -r -f /dev/zero 404 mmap $OPTS -N "mmap_rt8k" -l 8k -I 2000 -r -f $TFILE 405 mmap $OPTS -N "mmap_rt128k" -l 128k -I 20000 -r -f $TFILE 406 mmap $OPTS -N "mmap_ru8k" -l 8k -I 2000 -r -f $VFILE 407 mmap $OPTS -N "mmap_ru128k" -l 128k -I 20000 -r -f $VFILE 408 mmap $OPTS -N "mmap_ra8k" -l 8k -I 2000 -r -f MAP_ANON 409 mmap $OPTS -N "mmap_ra128k" -l 128k -I 20000 -r -f MAP_ANON 410 411 mmap $OPTS -N "mmap_wz8k" -l 8k -I 5000 -w -f /dev/zero 412 mmap $OPTS -N "mmap_wz128k" -l 128k -I 50000 -w -f /dev/zero 413 mmap $OPTS -N "mmap_wt8k" -l 8k -I 5000 -w -f $TFILE 414 mmap $OPTS -N "mmap_wt128k" -l 128k -I 50000 -w -f $TFILE 415 mmap $OPTS -N "mmap_wu8k" -l 8k -I 5000 -w -f $VFILE 416 mmap $OPTS -N "mmap_wu128k" -l 128k -I 500000 -w -f $VFILE 417 mmap $OPTS -N "mmap_wa8k" -l 8k -I 3000 -w -f MAP_ANON 418 mmap $OPTS -N "mmap_wa128k" -l 128k -I 50000 -w -f MAP_ANON 419 420 munmap $OPTS -N "unmap_z8k" -l 8k -I 500 -f /dev/zero 421 munmap $OPTS -N "unmap_z128k" -l 128k -I 500 -f /dev/zero 422 munmap $OPTS -N "unmap_t8k" -l 8k -I 500 -f $TFILE 423 munmap $OPTS -N "unmap_t128k" -l 128k -I 500 -f $TFILE 424 munmap $OPTS -N "unmap_u8k" -l 8k -I 500 -f $VFILE 425 munmap $OPTS -N "unmap_u128k" -l 128k -I 500 -f $VFILE 426 munmap $OPTS -N "unmap_a8k" -l 8k -I 500 -f MAP_ANON 427 munmap $OPTS -N "unmap_a128k" -l 128k -I 500 -f MAP_ANON 428 429 munmap $OPTS -N "unmap_rz8k" -l 8k -I 1000 -r -f /dev/zero 430 munmap $OPTS -N "unmap_rz128k" -l 128k -I 2000 -r -f /dev/zero 431 munmap $OPTS -N "unmap_rt8k" -l 8k -I 1000 -r -f $TFILE 432 munmap $OPTS -N "unmap_rt128k" -l 128k -I 3000 -r -f $TFILE 433 munmap $OPTS -N "unmap_ru8k" -l 8k -I 1000 -r -f $VFILE 434 munmap $OPTS -N "unmap_ru128k" -l 128k -I 3000 -r -f $VFILE 435 munmap $OPTS -N "unmap_ra8k" -l 8k -I 1000 -r -f MAP_ANON 436 munmap $OPTS -N "unmap_ra128k" -l 128k -I 2000 -r -f MAP_ANON 437 438 connection $OPTS -N "conn_connect" -B 256 -c 439 440 munmap $OPTS -N "unmap_wz8k" -l 8k -I 1000 -w -f /dev/zero 441 munmap $OPTS -N "unmap_wz128k" -l 128k -I 8000 -w -f /dev/zero 442 munmap $OPTS -N "unmap_wt8k" -l 8k -I 1000 -w -f $TFILE 443 munmap $OPTS -N "unmap_wt128k" -l 128k -I 10000 -w -f $TFILE 444 munmap $OPTS -N "unmap_wu8k" -l 8k -I 1000 -w -f $VFILE 445 munmap $OPTS -N "unmap_wu128k" -l 128k -I 50000 -w -f $VFILE 446 munmap $OPTS -N "unmap_wa8k" -l 8k -I 1000 -w -f MAP_ANON 447 munmap $OPTS -N "unmap_wa128k" -l 128k -I 10000 -w -f MAP_ANON 448 449 450 mprotect $OPTS -N "mprot_z8k" -l 8k -I 300 -f /dev/zero 451 mprotect $OPTS -N "mprot_z128k" -l 128k -I 500 -f /dev/zero 452 mprotect $OPTS -N "mprot_wz8k" -l 8k -I 500 -w -f /dev/zero 453 mprotect $OPTS -N "mprot_wz128k" -l 128k -I 1000 -w -f /dev/zero 454 mprotect $OPTS -N "mprot_twz8k" -l 8k -I 1000 -w -t -f /dev/zero 455 mprotect $OPTS -N "mprot_tw128k" -l 128k -I 2000 -w -t -f /dev/zero 456 mprotect $OPTS -N "mprot_tw4m" -l 4m -w -t -B 1 -f /dev/zero 457 458 pipe $OPTS -N "pipe_pst1" -s 1 -I 1000 -x pipe -m st 459 pipe $OPTS -N "pipe_pmt1" -s 1 -I 8000 -x pipe -m mt 460 pipe $OPTS -N "pipe_pmp1" -s 1 -I 8000 -x pipe -m mp 461 pipe $OPTS -N "pipe_pst4k" -s 4k -I 1000 -x pipe -m st 462 pipe $OPTS -N "pipe_pmt4k" -s 4k -I 8000 -x pipe -m mt 463 pipe $OPTS -N "pipe_pmp4k" -s 4k -I 8000 -x pipe -m mp 464 465 pipe $OPTS -N "pipe_sst1" -s 1 -I 1000 -x sock -m st 466 pipe $OPTS -N "pipe_smt1" -s 1 -I 8000 -x sock -m mt 467 pipe $OPTS -N "pipe_smp1" -s 1 -I 8000 -x sock -m mp 468 pipe $OPTS -N "pipe_sst4k" -s 4k -I 1000 -x sock -m st 469 pipe $OPTS -N "pipe_smt4k" -s 4k -I 8000 -x sock -m mt 470 pipe $OPTS -N "pipe_smp4k" -s 4k -I 8000 -x sock -m mp 471 472 pipe $OPTS -N "pipe_tst1" -s 1 -I 1000 -x tcp -m st 473 pipe $OPTS -N "pipe_tmt1" -s 1 -I 8000 -x tcp -m mt 474 pipe $OPTS -N "pipe_tmp1" -s 1 -I 8000 -x tcp -m mp 475 pipe $OPTS -N "pipe_tst4k" -s 4k -I 1000 -x tcp -m st 476 pipe $OPTS -N "pipe_tmt4k" -s 4k -I 8000 -x tcp -m mt 477 pipe $OPTS -N "pipe_tmp4k" -s 4k -I 8000 -x tcp -m mp 478 479 connection $OPTS -N "conn_accept" -B 256 -a 480 481 close_tcp $OPTS -N "close_tcp" -B 32 482 . 483