diff -u -N -P libMicro-0.4.0/bench libMicro/bench
--- libMicro-0.4.0/bench	2007-07-03 00:17:45.000000000 +0300
+++ libMicro/bench	2008-04-15 01:09:59.766249931 +0300
@@ -56,7 +56,9 @@
 VDIR2=$VARROOT/1/2/3/4/5/6/7/8/9/0
 
 
-OPTS="-E -C 200 -L -S -W"
+#OPTS="-E -C 200 -L -S -W"
+echo "FIXME: adding -1 to the original opts, (possible pthread issue?)"
+OPTS="-1 -E -C 200 -L -S -W"
 
 dd if=/dev/zero of=$TFILE bs=1024k count=10 2>/dev/null
 dd if=/dev/zero of=$VFILE bs=1024k count=10 2>/dev/null
@@ -65,7 +67,7 @@
 
 touch $IFILE
 
-ARCH=`arch -k`
+ARCH=`uname -m`
 
 # produce benchmark header for easier comparisons
 
diff -u -N -P libMicro-0.4.0/bench.sh libMicro/bench.sh
--- libMicro-0.4.0/bench.sh	2007-07-03 00:17:45.000000000 +0300
+++ libMicro/bench.sh	1970-01-01 02:00:00.000000000 +0200
@@ -1,482 +0,0 @@
-#!/bin/sh
-#
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms
-# of the Common Development and Distribution License
-# (the "License").  You may not use this file except
-# in compliance with the License.
-#
-# You can obtain a copy of the license at
-# src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing
-# permissions and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL
-# HEADER in each file and include the License file at
-# usr/src/OPENSOLARIS.LICENSE.  If applicable,
-# add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your
-# own identifying information: Portions Copyright [yyyy]
-# [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
-#
-
-bench_version=0.4.0
-libmicro_version=`bin/tattle -V`
-
-case $libmicro_version in
-$bench_version)
-	;;
-*)
-	echo "ERROR: libMicro version doesn't match 'bench' script version"
-	exit 1
-esac
-
-TMPROOT=/tmp/libmicro.$$
-VARROOT=/var/tmp/libmicro.$$
-mkdir -p $TMPROOT
-mkdir -p $VARROOT
-trap "rm -rf $TMPROOT $VARROOT" 0 2
-
-TFILE=$TMPROOT/data
-IFILE=$TMPROOT/ifile
-TDIR1=$TMPROOT/0/1/2/3/4/5/6/7/8/9
-TDIR2=$TMPROOT/1/2/3/4/5/6/7/8/9/0
-VFILE=$VARROOT/data
-VDIR1=$VARROOT/0/1/2/3/4/5/6/7/8/9
-VDIR2=$VARROOT/1/2/3/4/5/6/7/8/9/0
-
-
-OPTS="-E -C 200 -L -S -W"
-
-dd if=/dev/zero of=$TFILE bs=1024k count=10 2>/dev/null
-dd if=/dev/zero of=$VFILE bs=1024k count=10 2>/dev/null
-mkdir -p $TDIR1 $TDIR2
-mkdir -p $VDIR1 $VDIR2
-
-touch $IFILE
-
-ARCH=`arch -k`
-
-# produce benchmark header for easier comparisons
-
-hostname=`uname -n`
-
-if [ -f /usr/sbin/psrinfo ]; then
-	p_count=`psrinfo|wc -l`
-	p_mhz=`psrinfo -v | awk '/operates/{print $6 "MHz"; exit }'`
-	p_type=`psrinfo -vp 2>/dev/null | awk '{if (NR == 3) {print $0; exit}}'` 
-fi
-
-if [ -f /proc/cpuinfo ]; then
-	p_count=`egrep processor /proc/cpuinfo | wc -l`
-	p_mhz=`awk -F: '/cpu MHz/{printf("%5.0f00Mhz\n",$2/100); exit}' /proc/cpuinfo`
-	p_type=`awk -F: '/model name/{print $2; exit}' /proc/cpuinfo`
-fi
-
-printf "!Libmicro_#:   %30s\n" $libmicro_version
-printf "!Options:      %30s\n" "$OPTS"
-printf "!Machine_name: %30s\n" $hostname
-printf "!OS_name:      %30s\n" `uname -s`
-printf "!OS_release:   %30s\n" `uname -r`
-printf "!OS_build:     %30.18s\n" "`uname -v`"
-printf "!Processor:    %30s\n" `uname -m`
-printf "!#CPUs:        %30s\n" $p_count
-printf "!CPU_MHz:      %30s\n" $p_mhz
-printf "!CPU_NAME:     %30s\n" "$p_type"
-printf "!IP_address:   %30s\n" `getent hosts $hostname | awk '{print $1}'`
-printf "!Run_by:       %30s\n" $LOGNAME
-printf "!Date:	       %30s\n" "`date '+%D %R'`"
-printf "!Compiler:     %30s\n" `bin/tattle -c`
-printf "!Compiler Ver.:%30s\n" "`bin/tattle -v`"
-printf "!sizeof(long): %30s\n" `bin/tattle -s`
-printf "!extra_CFLAGS: %30s\n" "`bin/tattle -f`"
-printf "!TimerRes:     %30s\n" "`bin/tattle -r`"
- 
-mkdir -p $TMPROOT/bin
-cp bin-$ARCH/exec_bin $TMPROOT/bin/$A
-
-while read A B
-do
-	# $A contains the command, $B contains the arguments
-	# we echo blank lines and comments
-	# we ship anything which fails to match *$1* (useful
-	# if we only want to test one case, but a nasty hack)
-
-	case $A in
-	""|"#"*)
-		echo "$A $B"
-		continue
-		;;
-	*$1*)
-		;;
-	*)
-		continue
-	esac
-
-	if [ ! -f $TMPROOT/bin/$A ]
-	then
-		cp bin-$ARCH/$A $TMPROOT/bin/$A
-	fi
-	(cd $TMPROOT && eval "bin/$A $B")
-done <<.
-#
-# Obligatory null system call: use very short time
-# for default since SuSe implements this "syscall" in userland
-#
-getpid		$OPTS -N "getpid" -I 5
-		 
-getenv		$OPTS -N "getenv"	-s 100 -I 100	 
-getenv		$OPTS -N "getenvT2"	-s 100 -I 100	-T 2 
-
-gettimeofday	$OPTS -N "gettimeofday"          
-
-log		$OPTS -N "log"	-I 20		 
-exp		$OPTS -N "exp"	-I 20		 
-lrand48		$OPTS -N "lrand48"
-
-memset		$OPTS -N "memset_10"	-s 10	-I 10 
-memset		$OPTS -N "memset_256"	-s 256	-I 20
-memset		$OPTS -N "memset_256_u"	-s 256	 -a 1 -I 20 
-memset		$OPTS -N "memset_1k"	-s 1k	 -I 100
-memset		$OPTS -N "memset_4k"    -s 4k    -I 250
-memset		$OPTS -N "memset_4k_uc" -s 4k    -u -I 400
-
-memset		$OPTS -N "memset_10k"	-s 10k	-I 600	 
-memset		$OPTS -N "memset_1m"	-s 1m	-I 200000
-memset		$OPTS -N "memset_10m"	-s 10m -I 2000000 
-memset		$OPTS -N "memsetP2_10m"	-s 10m -P 2 -I 2000000 
-
-memrand		$OPTS -N "memrand"	-s 128m -B 10000
-cachetocache	$OPTS -N "cachetocache" -s 100k -T 2 -I 200
-
-isatty		$OPTS -N "isatty_yes"   
-isatty		$OPTS -N "isatty_no"  -f $IFILE
-
-malloc		$OPTS -N "malloc_10"    -s 10    -g 10 -I 50
-malloc		$OPTS -N "malloc_100"   -s 100   -g 10 -I 50
-malloc		$OPTS -N "malloc_1k"    -s 1k    -g 10 -I 50
-malloc		$OPTS -N "malloc_10k"   -s 10k   -g 10 -I 50
-malloc		$OPTS -N "malloc_100k"  -s 100k  -g 10 -I 2000
-
-malloc		$OPTS -N "mallocT2_10"    -s 10   -g 10 -T 2 -I 200
-malloc		$OPTS -N "mallocT2_100"   -s 100  -g 10 -T 2 -I 200
-malloc		$OPTS -N "mallocT2_1k"    -s 1k   -g 10 -T 2 -I 200
-malloc		$OPTS -N "mallocT2_10k"   -s 10k  -g 10 -T 2 -I 200
-malloc		$OPTS -N "mallocT2_100k"  -s 100k -g 10 -T 2 -I 10000
-
-close		$OPTS -N "close_bad"		-B 32		-b
-close		$OPTS -N "close_tmp"		-B 32		-f $TFILE
-close		$OPTS -N "close_usr"		-B 32		-f $VFILE
-close		$OPTS -N "close_zero"		-B 32		-f /dev/zero
-
-memcpy		$OPTS -N "memcpy_10"	-s 10	-I 10 
-memcpy		$OPTS -N "memcpy_1k"	-s 1k	-I 50
-memcpy		$OPTS -N "memcpy_10k"	-s 10k	-I 800
-memcpy		$OPTS -N "memcpy_1m"	-s 1m   -I 500000
-memcpy		$OPTS -N "memcpy_10m"	-s 10m  -I 5000000
-
-strcpy		$OPTS -N "strcpy_10"	-s 10   -I 5 
-strcpy		$OPTS -N "strcpy_1k"	-s 1k   -I 100
-
-strlen		$OPTS -N "strlen_10"	-s 10   -I 5
-strlen		$OPTS -N "strlen_1k"	-s 1k   -I 100
-
-strchr		$OPTS -N "strchr_10"	-s 10   -I 5
-strchr		$OPTS -N "strchr_1k"	-s 1k   -I 200
-strcmp		$OPTS -N "strcmp_10"	-s 10   -I 10
-strcmp		$OPTS -N "strcmp_1k"	-s 1k   -I 200
-
-strcasecmp	$OPTS -N "scasecmp_10"	-s 10 -I 50
-strcasecmp	$OPTS -N "scasecmp_1k"	-s 1k -I 20000
-
-strtol		$OPTS -N "strtol"      -I 20      
-
-getcontext	$OPTS -N "getcontext"  -I 100
-setcontext	$OPTS -N "setcontext"  -I 100
-
-mutex		$OPTS -N "mutex_st"	-I 10
-mutex		$OPTS -N "mutex_mt"	-t -I 10	
-mutex		$OPTS -N "mutex_T2"     -T 2  -I 100
-
-longjmp		$OPTS -N "longjmp"	-I 10
-siglongjmp	$OPTS -N "siglongjmp"	-I 20
-
-getrusage	$OPTS -N "getrusage"	-I 200
-
-times		$OPTS -N "times"	-I 200
-time		$OPTS -N "time"		-I 50
-localtime_r	$OPTS -N "localtime_r"	-I 200  
-strftime	$OPTS -N "strftime" -I 10000  
-
-mktime		$OPTS -N "mktime"       -I 500   
-mktime		$OPTS -N "mktimeT2" -T 2 -I 1000 
-
-cascade_mutex	$OPTS -N "c_mutex_1"	-I 50
-cascade_mutex	$OPTS -N "c_mutex_10"	-T 10 -I 5000
-cascade_mutex	$OPTS -N "c_mutex_200"	-T 200	-I 2000000
-
-cascade_cond	$OPTS -N "c_cond_1"	-I 100
-cascade_cond	$OPTS -N "c_cond_10"	-T 10	-I 3000
-cascade_cond	$OPTS -N "c_cond_200"	-T 200	-I 2000000
-
-cascade_lockf	$OPTS -N "c_lockf_1"	-I 1000	
-cascade_lockf	$OPTS -N "c_lockf_10"	-P 10 -I 50000
-cascade_lockf	$OPTS -N "c_lockf_200"	-P 200 -I 5000000
-
-cascade_flock	$OPTS -N "c_flock"	-I 1000	
-cascade_flock	$OPTS -N "c_flock_10"	-P 10   -I 50000
-cascade_flock	$OPTS -N "c_flock_200"	-P 200	-I 5000000
-
-cascade_fcntl	$OPTS -N "c_fcntl_1"	-I 2000 	
-cascade_fcntl	$OPTS -N "c_fcntl_10"	-P 10 -I 20000
-cascade_fcntl	$OPTS -N "c_fcntl_200"	-P 200	-I 5000000
-
-file_lock	$OPTS -N "file_lock"   -I 1000         
-
-getsockname	$OPTS -N "getsockname"	-I 100
-getpeername	$OPTS -N "getpeername"	-I 100
-
-chdir		$OPTS -N "chdir_tmp"	-I 2000		$TDIR1 $TDIR2
-chdir		$OPTS -N "chdir_usr"	-I 2000		$VDIR1 $VDIR2
-
-chdir		$OPTS -N "chgetwd_tmp"	-I 3000	-g $TDIR1 $TDIR2
-chdir		$OPTS -N "chgetwd_usr"	-I 3000	-g $VDIR1 $VDIR2
-
-realpath	$OPTS -N "realpath_tmp" -I 3000		-f $TDIR1
-realpath	$OPTS -N "realpath_usr"	-I 3000	-f $VDIR1
-
-stat		$OPTS -N "stat_tmp" -I 1000		-f $TFILE
-stat		$OPTS -N "stat_usr" -I 1000		-f $VFILE
-
-fcntl		$OPTS -N "fcntl_tmp"	-I 100	-f $TFILE
-fcntl		$OPTS -N "fcntl_usr"	-I 100	-f $VFILE
-fcntl_ndelay	$OPTS -N "fcntl_ndelay"	-I 100	
-
-lseek		$OPTS -N "lseek_t8k"	-s 8k	-I 50	-f $TFILE
-lseek		$OPTS -N "lseek_u8k"	-s 8k	-I 50	-f $VFILE
-
-open		$OPTS -N "open_tmp"		-B 256		-f $TFILE
-open		$OPTS -N "open_usr"		-B 256		-f $VFILE
-open		$OPTS -N "open_zero"		-B 256		-f /dev/zero
-
-dup		$OPTS -N "dup"			-B 512   
-
-socket		$OPTS -N "socket_u"		-B 256
-socket		$OPTS -N "socket_i"		-B 256		-f PF_INET
-
-socketpair	$OPTS -N "socketpair"		-B 256
-
-setsockopt	$OPTS -N "setsockopt"		-I 200
-
-bind		$OPTS -N "bind"			-B 100
-
-listen		$OPTS -N "listen"		-B 100
-
-connection	$OPTS -N "connection"		-B 256 
-
-poll		$OPTS -N "poll_10"	-n 10	-I 500
-poll		$OPTS -N "poll_100"	-n 100	-I 1000
-poll		$OPTS -N "poll_1000"	-n 1000	-I 5000
-
-poll		$OPTS -N "poll_w10"	-n 10	-I 500		-w 1
-poll		$OPTS -N "poll_w100"	-n 100	-I 2000		-w 10
-poll		$OPTS -N "poll_w1000"	-n 1000	-I 40000	-w 100
-
-select		$OPTS -N "select_10"	-n 10	-I 500
-select		$OPTS -N "select_100"	-n 100	-I 1000
-select		$OPTS -N "select_1000"	-n 1000	-I 5000
-
-select		$OPTS -N "select_w10"	-n 10	-I 500		-w 1
-select		$OPTS -N "select_w100"	-n 100	-I 2000		-w 10
-select		$OPTS -N "select_w1000"	-n 1000	-I 40000        -w 100
-
-semop		$OPTS -N "semop" -I 200
-
-sigaction	$OPTS -N "sigaction" -I 100
-signal		$OPTS -N "signal" -I 1000
-sigprocmask	$OPTS -N "sigprocmask" -I 200
-
-pthread_create  $OPTS -N "pthread_8"		-B 8
-pthread_create  $OPTS -N "pthread_32"		-B 32
-pthread_create  $OPTS -N "pthread_128"		-B 128
-pthread_create  $OPTS -N "pthread_512"		-B 512
-
-fork		$OPTS -N "fork_10"		-B 10
-fork		$OPTS -N "fork_100"		-B 100  -C 100
-fork		$OPTS -N "fork_1000"		-B 1000 -C 50
-
-exit		$OPTS -N "exit_10"		-B 10
-exit		$OPTS -N "exit_100"		-B 100
-exit		$OPTS -N "exit_1000"		-B 1000 -C 50
-
-exit		$OPTS -N "exit_10_nolibc"	-e -B 10
-
-exec		$OPTS -N "exec" -B 10
-
-system		$OPTS -N "system" -I 1000000
-
-recurse		$OPTS -N "recurse"		-B 512
-
-read		$OPTS -N "read_t1k"	-s 1k			-f $TFILE
-read		$OPTS -N "read_t10k"	-s 10k			-f $TFILE
-read		$OPTS -N "read_t100k"	-s 100k			-f $TFILE
-
-read		$OPTS -N "read_u1k"	-s 1k			-f $VFILE
-read		$OPTS -N "read_u10k"	-s 10k			-f $VFILE
-read		$OPTS -N "read_u100k"	-s 100k			-f $VFILE
-
-read		$OPTS -N "read_z1k"	-s 1k			-f /dev/zero 
-read		$OPTS -N "read_z10k"	-s 10k			-f /dev/zero 
-read		$OPTS -N "read_z100k"	-s 100k			-f /dev/zero 
-read		$OPTS -N "read_zw100k"	-s 100k	         -w	-f /dev/zero 
-
-write		$OPTS -N "write_t1k"	-s 1k			-f $TFILE
-write		$OPTS -N "write_t10k"	-s 10k			-f $TFILE
-write		$OPTS -N "write_t100k"	-s 100k			-f $TFILE
-
-write		$OPTS -N "write_u1k"	-s 1k			-f $VFILE
-write		$OPTS -N "write_u10k"	-s 10k			-f $VFILE
-write		$OPTS -N "write_u100k"	-s 100k			-f $VFILE
-
-write		$OPTS -N "write_n1k"	-s 1k	-I 100 -B 0	-f /dev/null 
-write		$OPTS -N "write_n10k"	-s 10k	-I 100 -B 0	-f /dev/null 
-write		$OPTS -N "write_n100k"	-s 100k	-I 100 -B 0	-f /dev/null 
-
-writev		$OPTS -N "writev_t1k"	-s 1k			-f $TFILE
-writev		$OPTS -N "writev_t10k"	-s 10k		        -f $TFILE
-writev		$OPTS -N "writev_t100k"	-s 100k			-f $TFILE
-
-writev		$OPTS -N "writev_u1k"	-s 1k			-f $VFILE
-writev		$OPTS -N "writev_u10k"	-s 10k			-f $VFILE
-writev		$OPTS -N "writev_u100k"	-s 100k			-f $VFILE
-
-writev		$OPTS -N "writev_n1k"	-s 1k	-I 100 -B 0	-f /dev/null 
-writev		$OPTS -N "writev_n10k"	-s 10k	-I 100 -B 0	-f /dev/null 
-writev		$OPTS -N "writev_n100k"	-s 100k	-I 100 -B 0	-f /dev/null 
-
-pread		$OPTS -N "pread_t1k"	-s 1k	-I 300		-f $TFILE
-pread		$OPTS -N "pread_t10k"	-s 10k	-I 1000		-f $TFILE
-pread		$OPTS -N "pread_t100k"	-s 100k	-I 10000	-f $TFILE
-
-pread		$OPTS -N "pread_u1k"	-s 1k	-I 300		-f $VFILE
-pread		$OPTS -N "pread_u10k"	-s 10k	-I 1000		-f $VFILE
-pread		$OPTS -N "pread_u100k"	-s 100k	-I 10000	-f $VFILE
-
-pread		$OPTS -N "pread_z1k"	-s 1k	-I 300		-f /dev/zero 
-pread		$OPTS -N "pread_z10k"	-s 10k	-I 1000		-f /dev/zero 
-pread		$OPTS -N "pread_z100k"	-s 100k	-I 2000	-f /dev/zero 
-pread		$OPTS -N "pread_zw100k"	-s 100k	-w -I 10000	-f /dev/zero 
-
-pwrite		$OPTS -N "pwrite_t1k"	-s 1k	-I 500		-f $TFILE
-pwrite		$OPTS -N "pwrite_t10k"	-s 10k	-I 1000		-f $TFILE
-pwrite		$OPTS -N "pwrite_t100k"	-s 100k	-I 10000	-f $TFILE
-
-pwrite		$OPTS -N "pwrite_u1k"	-s 1k	-I 500		-f $VFILE
-pwrite		$OPTS -N "pwrite_u10k"	-s 10k	-I 1000		-f $VFILE
-pwrite		$OPTS -N "pwrite_u100k"	-s 100k	-I 20000	-f $VFILE
-
-pwrite		$OPTS -N "pwrite_n1k"	-s 1k	-I 100		-f /dev/null 
-pwrite		$OPTS -N "pwrite_n10k"	-s 10k	-I 100		-f /dev/null 
-pwrite		$OPTS -N "pwrite_n100k"	-s 100k	-I 100		-f /dev/null 
-
-mmap		$OPTS -N "mmap_z8k"	-l 8k   -I 1000		-f /dev/zero
-mmap		$OPTS -N "mmap_z128k"	-l 128k	-I 2000		-f /dev/zero
-mmap		$OPTS -N "mmap_t8k"	-l 8k	-I 1000		-f $TFILE
-mmap		$OPTS -N "mmap_t128k"	-l 128k	-I 1000		-f $TFILE
-mmap		$OPTS -N "mmap_u8k"	-l 8k	-I 1000		-f $VFILE
-mmap		$OPTS -N "mmap_u128k"	-l 128k	-I 1000		-f $VFILE
-mmap		$OPTS -N "mmap_a8k"	-l 8k	-I 200		-f MAP_ANON
-mmap		$OPTS -N "mmap_a128k"	-l 128k	-I 200		-f MAP_ANON
-
-
-mmap		$OPTS -N "mmap_rz8k"	-l 8k	-I 2000 -r	-f /dev/zero
-mmap		$OPTS -N "mmap_rz128k"	-l 128k	-I 2000 -r	-f /dev/zero
-mmap		$OPTS -N "mmap_rt8k"	-l 8k	-I 2000 -r	-f $TFILE
-mmap		$OPTS -N "mmap_rt128k"	-l 128k	-I 20000 -r	-f $TFILE
-mmap		$OPTS -N "mmap_ru8k"	-l 8k	-I 2000 -r	-f $VFILE
-mmap		$OPTS -N "mmap_ru128k"	-l 128k	-I 20000 -r	-f $VFILE
-mmap		$OPTS -N "mmap_ra8k"	-l 8k	-I 2000 -r	-f MAP_ANON
-mmap		$OPTS -N "mmap_ra128k"	-l 128k	-I 20000 -r	-f MAP_ANON
-
-mmap		$OPTS -N "mmap_wz8k"	-l 8k	-I 5000 -w	-f /dev/zero
-mmap		$OPTS -N "mmap_wz128k"	-l 128k	-I 50000 -w	-f /dev/zero
-mmap		$OPTS -N "mmap_wt8k"	-l 8k	-I 5000 -w	-f $TFILE
-mmap		$OPTS -N "mmap_wt128k"	-l 128k	-I 50000 -w	-f $TFILE
-mmap		$OPTS -N "mmap_wu8k"	-l 8k	-I 5000 -w	-f $VFILE
-mmap		$OPTS -N "mmap_wu128k"	-l 128k	-I 500000 -w	-f $VFILE
-mmap		$OPTS -N "mmap_wa8k"	-l 8k	-I 3000 -w	-f MAP_ANON
-mmap		$OPTS -N "mmap_wa128k"	-l 128k	-I 50000 -w	-f MAP_ANON
-
-munmap		$OPTS -N "unmap_z8k"	-l 8k   -I 500		-f /dev/zero
-munmap		$OPTS -N "unmap_z128k"	-l 128k	-I 500		-f /dev/zero
-munmap		$OPTS -N "unmap_t8k"	-l 8k	-I 500		-f $TFILE
-munmap		$OPTS -N "unmap_t128k"	-l 128k	-I 500		-f $TFILE
-munmap		$OPTS -N "unmap_u8k"	-l 8k	-I 500		-f $VFILE
-munmap		$OPTS -N "unmap_u128k"	-l 128k	-I 500		-f $VFILE
-munmap		$OPTS -N "unmap_a8k"	-l 8k	-I 500		-f MAP_ANON
-munmap		$OPTS -N "unmap_a128k"	-l 128k	-I 500		-f MAP_ANON
-
-munmap		$OPTS -N "unmap_rz8k"	-l 8k	-I 1000	-r	-f /dev/zero
-munmap		$OPTS -N "unmap_rz128k"	-l 128k	-I 2000 -r	-f /dev/zero
-munmap		$OPTS -N "unmap_rt8k"	-l 8k	-I 1000	-r	-f $TFILE
-munmap		$OPTS -N "unmap_rt128k"	-l 128k	-I 3000	-r	-f $TFILE
-munmap		$OPTS -N "unmap_ru8k"	-l 8k	-I 1000	-r	-f $VFILE
-munmap		$OPTS -N "unmap_ru128k"	-l 128k	-I 3000	-r	-f $VFILE
-munmap		$OPTS -N "unmap_ra8k"	-l 8k	-I 1000	-r	-f MAP_ANON
-munmap		$OPTS -N "unmap_ra128k"	-l 128k	-I 2000	-r	-f MAP_ANON
-
-connection	$OPTS -N "conn_connect"		-B 256 	-c
-
-munmap		$OPTS -N "unmap_wz8k"	-l 8k	-I 1000	-w	-f /dev/zero
-munmap		$OPTS -N "unmap_wz128k"	-l 128k	-I 8000	-w	-f /dev/zero
-munmap		$OPTS -N "unmap_wt8k"	-l 8k	-I 1000	-w	-f $TFILE
-munmap		$OPTS -N "unmap_wt128k"	-l 128k	-I 10000	-w	-f $TFILE
-munmap		$OPTS -N "unmap_wu8k"	-l 8k	-I 1000	-w	-f $VFILE
-munmap		$OPTS -N "unmap_wu128k"	-l 128k	-I 50000	-w	-f $VFILE
-munmap		$OPTS -N "unmap_wa8k"	-l 8k	-I 1000	-w	-f MAP_ANON
-munmap		$OPTS -N "unmap_wa128k"	-l 128k	-I 10000	-w	-f MAP_ANON
-
-
-mprotect	$OPTS -N "mprot_z8k"	-l 8k  -I 300			-f /dev/zero
-mprotect	$OPTS -N "mprot_z128k"	-l 128k	-I 500		-f /dev/zero
-mprotect	$OPTS -N "mprot_wz8k"	-l 8k	-I 500	-w	-f /dev/zero
-mprotect	$OPTS -N "mprot_wz128k"	-l 128k	-I 1000	-w	-f /dev/zero
-mprotect	$OPTS -N "mprot_twz8k"  -l 8k   -I 1000 -w -t   -f /dev/zero
-mprotect	$OPTS -N "mprot_tw128k" -l 128k -I 2000 -w -t   -f /dev/zero
-mprotect	$OPTS -N "mprot_tw4m"   -l 4m   -w -t -B 1  -f /dev/zero
-
-pipe		$OPTS -N "pipe_pst1"	-s 1	-I 1000	-x pipe -m st
-pipe		$OPTS -N "pipe_pmt1"	-s 1	-I 8000	-x pipe -m mt
-pipe		$OPTS -N "pipe_pmp1"	-s 1	-I 8000	-x pipe -m mp
-pipe		$OPTS -N "pipe_pst4k"	-s 4k	-I 1000	-x pipe -m st
-pipe		$OPTS -N "pipe_pmt4k"	-s 4k	-I 8000	-x pipe -m mt
-pipe		$OPTS -N "pipe_pmp4k"	-s 4k	-I 8000	-x pipe -m mp
-
-pipe		$OPTS -N "pipe_sst1"	-s 1	-I 1000	-x sock -m st
-pipe		$OPTS -N "pipe_smt1"	-s 1	-I 8000	-x sock -m mt
-pipe		$OPTS -N "pipe_smp1"	-s 1	-I 8000	-x sock -m mp
-pipe		$OPTS -N "pipe_sst4k"	-s 4k	-I 1000	-x sock -m st
-pipe		$OPTS -N "pipe_smt4k"	-s 4k	-I 8000	-x sock -m mt
-pipe		$OPTS -N "pipe_smp4k"	-s 4k	-I 8000	-x sock -m mp
-
-pipe		$OPTS -N "pipe_tst1"	-s 1	-I 1000	-x tcp  -m st
-pipe		$OPTS -N "pipe_tmt1"	-s 1	-I 8000	-x tcp  -m mt
-pipe		$OPTS -N "pipe_tmp1"	-s 1	-I 8000	-x tcp  -m mp
-pipe		$OPTS -N "pipe_tst4k"	-s 4k	-I 1000	-x tcp  -m st
-pipe		$OPTS -N "pipe_tmt4k"	-s 4k	-I 8000	-x tcp  -m mt
-pipe		$OPTS -N "pipe_tmp4k"	-s 4k	-I 8000	-x tcp  -m mp
-
-connection	$OPTS -N "conn_accept"		-B 256      -a
-
-close_tcp	$OPTS -N "close_tcp"		-B 32  
-.
diff -u -N -P libMicro-0.4.0/cascade_flock.c libMicro/cascade_flock.c
--- libMicro-0.4.0/cascade_flock.c	2007-07-03 00:17:45.000000000 +0300
+++ libMicro/cascade_flock.c	2008-04-12 13:46:19.257917741 +0300
@@ -46,6 +46,7 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <fcntl.h>
+#include <sys/file.h>
 
 #include "libmicro.h"
 
diff -u -N -P libMicro-0.4.0/config_libmicro.h libMicro/config_libmicro.h
--- libMicro-0.4.0/config_libmicro.h	1970-01-01 02:00:00.000000000 +0200
+++ libMicro/config_libmicro.h	2007-11-28 23:24:06.000000000 +0200
@@ -0,0 +1,12 @@
+#ifndef CONFIG_LIBMICRO_H
+#define CONFIG_LIBMICRO_H
+
+#ifndef O_NDELAY
+#define O_NDELAY O_NONBLOCK
+#endif
+
+#ifndef PF_UNIX
+#define PF_UNIX	AF_UNIX
+#endif
+
+#endif CONFIG_LIBMICRO_H
diff -u -N -P libMicro-0.4.0/Jamfile libMicro/Jamfile
--- libMicro-0.4.0/Jamfile	1970-01-01 02:00:00.000000000 +0200
+++ libMicro/Jamfile	2008-04-15 00:51:10.894589317 +0300
@@ -0,0 +1,358 @@
+SubDir HAIKU_TOP src tests system benchmarks libMicro ;
+
+SEARCH_SOURCE = [ FDirName $(SUBDIR) ] ;
+
+# filter warnings we don't want here
+TARGET_WARNING_CCFLAGS = [ FFilter $(TARGET_WARNING_CCFLAGS)
+	: -Wall -Wmissing-prototypes -Wsign-compare ] ;
+
+UseHeaders [ FDirName $(SUBDIR) $(SUBDIR) $(SUBDIR) $(SUBDIR) $(SUBDIR) headers posix ] : true ;
+UseHeaders [ FDirName $(SUBDIR) ] : true ;
+
+SubDirHdrs $(HAIKU_TOP) src tests system benchmarks libMicro ;
+SubDirCcFlags -nostdinc ;
+SubDirCcFlags -D_REENTRANT ;
+
+SubDirCcFlags -include $(SUBDIR)/config_libmicro.h ;
+
+StaticLibrary libmicro.a :
+	libmicro.c
+	libmicro_main.c
+	benchmark_init.c
+	benchmark_fini.c
+	benchmark_initrun.c
+	benchmark_finirun.c
+	benchmark_initbatch.c
+	benchmark_finibatch.c
+	benchmark_initworker.c
+	benchmark_finiworker.c
+	benchmark_optswitch.c
+	benchmark_result.c
+;
+
+StaticLibrary libelided.a :
+	elided.c ;
+
+BinCommand <libmicro>bind : 
+	bind.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand atomic : 
+	: libelided.a libroot.so ;
+
+BinCommand cachetocache : 
+	: libelided.a libroot.so ;
+
+BinCommand cascade_mutex : 
+	cascade_mutex.c
+	: libmicro.a libroot.so ;
+
+BinCommand cascade_cond : 
+	cascade_cond.c
+	: libmicro.a libroot.so ;
+
+BinCommand cascade_lockf : 
+	cascade_lockf.c
+	: libmicro.a libroot.so ;
+
+BinCommand cascade_fcntl : 
+	cascade_fcntl.c
+	: libmicro.a libroot.so ;
+
+BinCommand cascade_flock : 
+	cascade_flock.c
+	: libmicro.a libroot.so ;
+
+BinCommand chdir : 
+	chdir.c
+	: libmicro.a ;
+
+BinCommand close : 
+	close.c
+	: libmicro.a libroot.so ;
+
+BinCommand close_tcp : 
+	close_tcp.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand connection : 
+	connection.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand dup : 
+	dup.c
+	: libmicro.a libroot.so ;
+
+BinCommand exec_bin : 
+	exec_bin.c
+	: libmicro.a libroot.so ;
+
+BinCommand exec : 
+	exec.c
+	: libmicro.a libroot.so ;
+
+BinCommand exit : 
+	exit.c
+	: libmicro.a libroot.so ;
+
+BinCommand exp : 
+	exp.c
+	: libmicro.a libroot.so ;
+
+BinCommand fcntl : 
+	fcntl.c
+	: libmicro.a libroot.so ;
+
+BinCommand fcntl_ndelay : 
+	fcntl_ndelay.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand file_lock : 
+	file_lock.c
+	: libmicro.a libroot.so ;
+
+BinCommand fork : 
+	fork.c
+	: libmicro.a libroot.so ;
+
+# atm unsupported
+BinCommand getcontext : 
+	: libelided.a libroot.so ;
+
+BinCommand getenv : 
+	getenv.c
+	: libmicro.a libroot.so ;
+
+BinCommand gettimeofday : 
+	gettimeofday.c
+	: libmicro.a libroot.so ;
+
+BinCommand <libmicro>getpeername : 
+	getpeername.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand getpid : 
+	getpid.c
+	: libmicro.a libroot.so ;
+
+BinCommand getrusage : 
+	getrusage.c
+	: libmicro.a libroot.so ;
+
+BinCommand getsockname : 
+	getsockname.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand isatty : 
+	isatty.c
+	: libmicro.a libroot.so ;
+
+BinCommand listen : 
+	listen.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand localtime_r : 
+	localtime_r.c
+	: libmicro.a libroot.so ;
+
+BinCommand <libmicro>log : 
+	log.c
+	: libmicro.a libroot.so ;
+
+BinCommand longjmp : 
+	longjmp.c
+	: libmicro.a libroot.so ;
+
+BinCommand lrand48 : 
+	lrand48.c
+	: libmicro.a libroot.so ;
+
+BinCommand lseek : 
+	lseek.c
+	: libmicro.a libroot.so ;
+
+BinCommand malloc : 
+	malloc.c
+	: libmicro.a libroot.so ;
+
+BinCommand memcpy : 
+	memcpy.c
+	: libmicro.a libroot.so ;
+
+BinCommand memmove : 
+	memmove.c
+	: libmicro.a libroot.so ;
+
+BinCommand memrand : 
+	memrand.c
+	: libmicro.a libroot.so ;
+
+BinCommand memset : 
+	memset.c
+	: libmicro.a libroot.so ;
+
+BinCommand mktime : 
+	mktime.c
+	: libmicro.a libroot.so ;
+
+# atm unsupported
+BinCommand mprotect : 
+	: libelided.a libroot.so ;
+
+# atm unsupported
+BinCommand mmap : 
+	: libelided.a libroot.so ;
+
+# atm unsupported
+BinCommand msync : 
+	: libelided.a libroot.so ;
+
+# atm unsupported
+BinCommand munmap : 
+	: libelided.a libroot.so ;
+
+# atm unsupported
+BinCommand mutex : 
+	: libelided.a libroot.so ;
+
+BinCommand nop : 
+	nop.c
+	: libmicro.a libroot.so ;
+
+BinCommand <libmicro>open : 
+	open.c
+	: libmicro.a libroot.so ;
+
+BinCommand pipe : 
+	pipe.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand poll : 
+	poll.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand pread : 
+	pread.c
+	: libmicro.a libroot.so ;
+
+# atm unsupported
+# needs pthread_attr_setstacksize
+BinCommand pthread_create : 
+	: libelided.a libroot.so ;
+
+BinCommand pwrite : 
+	pwrite.c
+	: libmicro.a libroot.so ;
+
+BinCommand read : 
+	read.c
+	: libmicro.a libroot.so ;
+
+BinCommand realpath : 
+	realpath.c
+	: libmicro.a libroot.so ;
+
+BinCommand recurse : 
+	recurse.c
+	recurse2.c
+	: libmicro.a libroot.so ;
+
+BinCommand select : 
+	select.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+# atm unsupported
+BinCommand semop : 
+	: libelided.a libroot.so ;
+
+# atm unsupported
+BinCommand setcontext : 
+	: libelided.a libroot.so ;
+
+BinCommand setsockopt : 
+	setsockopt.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand sigaction : 
+	sigaction.c
+	: libmicro.a libroot.so ;
+
+BinCommand siglongjmp : 
+	siglongjmp.c
+	: libmicro.a libroot.so ;
+
+BinCommand signal : 
+	signal.c
+	: libmicro.a libroot.so ;
+
+BinCommand sigprocmask : 
+	sigprocmask.c
+	: libmicro.a libroot.so ;
+
+
+BinCommand <libmicro>socket :  
+	socket.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+search on socket.c = [ FDirName $(SUBDIR) ] ;
+
+
+BinCommand socketpair : 
+	socketpair.c
+	: libmicro.a $(TARGET_NETWORK_LIBS) ;
+
+BinCommand <libmicro>stat : 
+	stat.c
+	: libmicro.a libroot.so ;
+
+BinCommand strcasecmp : 
+	strcasecmp.c
+	: libmicro.a libroot.so ;
+
+BinCommand strchr : 
+	strchr.c
+	: libmicro.a libroot.so ;
+
+BinCommand strcmp : 
+	strcmp.c
+	: libmicro.a libroot.so ;
+
+BinCommand strcpy : 
+	strcpy.c
+	: libmicro.a libroot.so ;
+
+BinCommand strftime : 
+	strftime.c
+	: libmicro.a libroot.so ;
+
+BinCommand strlen : 
+	strlen.c
+	: libmicro.a libroot.so ;
+
+BinCommand strtol : 
+	strtol.c
+	: libmicro.a libroot.so ;
+
+BinCommand system : 
+	system.c
+	: libmicro.a libroot.so ;
+
+BinCommand time : 
+	time.c
+	: libmicro.a libroot.so ;
+
+BinCommand times : 
+	times.c
+	: libmicro.a libroot.so ;
+
+BinCommand write : 
+	write.c
+	: libmicro.a libroot.so ;
+
+BinCommand writev : 
+	writev.c
+	: libmicro.a libroot.so ;
+
+BinCommand tattle : 
+	tattle.c
+	: libmicro.a libroot.so ;
diff -u -N -P libMicro-0.4.0/libmicro.c libMicro/libmicro.c
--- libMicro-0.4.0/libmicro.c	2007-07-03 00:17:45.000000000 +0300
+++ libMicro/libmicro.c	2008-04-15 15:20:47.440535771 +0300
@@ -34,8 +34,8 @@
 
 #include <sys/types.h>
 #include <sys/time.h>
-#include <sys/ipc.h>
-#include <sys/sem.h>
+/* #include <sys/ipc.h> */
+/* #include <sys/sem.h> */
 #include <sys/mman.h>
 #include <sys/wait.h>
 #include <ctype.h>
Οι υποκατάλογοι libMicro-0.4.0/.svn και libMicro/.svn είναι ταυτόσημοι
diff -u -N -P libMicro-0.4.0/tattle.h libMicro/tattle.h
--- libMicro-0.4.0/tattle.h	1970-01-01 02:00:00.000000000 +0200
+++ libMicro/tattle.h	2007-12-15 20:57:07.000000000 +0200
@@ -0,0 +1,6 @@
+#warning "this file originally is created by make"
+#warning "so our version should be generated by jam at compiled time"
+#warning "see Makefile.com line 106"
+char * compiler_version = "2.95.3-beos-060710";
+char * CC = "gcc";
+char * extra_compiler_flags = "";
diff -u -N -P libMicro-0.4.0/wrapper.sh libMicro/wrapper.sh
--- libMicro-0.4.0/wrapper.sh	2007-07-03 00:17:45.000000000 +0300
+++ libMicro/wrapper.sh	1970-01-01 02:00:00.000000000 +0200
@@ -1,37 +0,0 @@
-#!/bin/sh
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms
-# of the Common Development and Distribution License
-# (the "License").  You may not use this file except
-# in compliance with the License.
-#
-# You can obtain a copy of the license at
-# src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing
-# permissions and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL
-# HEADER in each file and include the License file at
-# usr/src/OPENSOLARIS.LICENSE.  If applicable,
-# add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your
-# own identifying information: Portions Copyright [yyyy]
-# [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
-# Use is subject to license terms.
-#
-
-
-BASENAME=`basename $0`
-DIRNAME=`dirname $0`
-ARCH=`uname -m`
-
-exec $DIRNAME/../bin-$ARCH/$BASENAME "$@"
