runtime: fix Plan 9 build

This change adds the osyield and usleep
functions and code to read the number of
processors from /dev/sysstat.

I also changed SysAlloc to return nil
when brk fails (it was returning -1).

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5177049
diff --git a/src/pkg/runtime/plan9/386/sys.s b/src/pkg/runtime/plan9/386/sys.s
index 1cb570b..a15362f 100644
--- a/src/pkg/runtime/plan9/386/sys.s
+++ b/src/pkg/runtime/plan9/386/sys.s
@@ -14,9 +14,21 @@
 	INT     $64
 	RET
 
+// TODO(ality): remove use of deprecated system calls
+
+TEXT runtime·read(SB),7,$0
+	MOVL	$15, AX
+	INT		$64
+	RET
+
 TEXT runtime·write(SB),7,$0
-	MOVL    $20, AX
-	INT     $64
+	MOVL	$20, AX
+	INT		$64
+	RET
+
+TEXT runtime·close(SB),7,$0
+	MOVL	$4, AX
+	INT		$64
 	RET
 
 TEXT runtime·exits(SB),7,$0
@@ -29,6 +41,11 @@
 	INT     $64
 	RET
 
+TEXT runtime·sleep(SB),7,$0
+	MOVL    $17, AX
+	INT     $64
+	RET
+
 TEXT runtime·plan9_semacquire(SB),7,$0
 	MOVL	$37, AX
 	INT	$64