Index: uspace/lib/posix/Makefile
===================================================================
--- uspace/lib/posix/Makefile	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/Makefile	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -41,4 +41,5 @@
 	ctype.c \
 	fcntl.c \
+	math.c \
 	stdio.c \
 	stdlib.c \
@@ -47,4 +48,5 @@
 	strings.c \
 	sys/stat.c \
+	sys/wait.c \
 	time.c \
 	unistd.c
Index: uspace/lib/posix/ctype.c
===================================================================
--- uspace/lib/posix/ctype.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/ctype.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -38,14 +38,72 @@
 #include "ctype.h"
 
+// TODO: propose for inclusion in libc
+
 /**
- * 
- * @param ch
+ * Checks whether character is a hexadecimal digit.
+ *
+ * @param c
  * @return
  */
-int posix_isxdigit(int ch)
+int posix_isxdigit(int c)
 {
-	return isdigit(ch) ||
-	    (ch >= 'a' && ch <= 'f') ||
-	    (ch >= 'A' && ch <= 'F');
+	return isdigit(c) ||
+	    (c >= 'a' && c <= 'f') ||
+	    (c >= 'A' && c <= 'F');
+}
+
+/**
+ * Checks whether character is a word separator.
+ *
+ * @param c
+ * @return
+ */
+int posix_isblank(int c)
+{
+	return c == ' ' || c == '\t';
+}
+
+/**
+ * Checks whether character is a control character.
+ *
+ * @param c
+ * @return
+ */
+int posix_iscntrl(int c)
+{
+	return c < 0x20 || c == 0x7E;
+}
+
+/**
+ * Checks whether character is any printing character except space.
+ *
+ * @param c
+ * @return
+ */
+int posix_isgraph(int c)
+{
+	return posix_isprint(c) && c != ' ';
+}
+
+/**
+ * Checks whether character is a printing character.
+ *
+ * @param c
+ * @return
+ */
+int posix_isprint(int c)
+{
+	return !posix_iscntrl(c);
+}
+
+/**
+ * Checks whether character is a punctuation.
+ *
+ * @param c
+ * @return
+ */
+int posix_ispunct(int c)
+{
+	return !isspace(c) && !isalnum(c);
 }
 
Index: uspace/lib/posix/ctype.h
===================================================================
--- uspace/lib/posix/ctype.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/ctype.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -40,8 +40,18 @@
 
 /* Classification of Characters */
-extern int posix_isxdigit(int ch);
+extern int posix_isxdigit(int c);
+extern int posix_isblank(int c);
+extern int posix_iscntrl(int c);
+extern int posix_isgraph(int c);
+extern int posix_isprint(int c);
+extern int posix_ispunct(int c);
 
 #ifndef LIBPOSIX_INTERNAL
 	#define isxdigit posix_isxdigit
+	#define isblank posix_isblank
+	#define iscntrl posix_iscntrl
+	#define isgraph posix_isgraph
+	#define isprint posix_isprint
+	#define ispunct posix_ispunct
 #endif
 
Index: uspace/lib/posix/limits.h
===================================================================
--- uspace/lib/posix/limits.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/limits.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -36,5 +36,5 @@
 #define POSIX_LIMITS_H_
 
-#include "libc/stdint.h"
+#include "stdint.h"
 #include "libc/sys/types.h"
 
Index: uspace/lib/posix/math.c
===================================================================
--- uspace/lib/posix/math.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
+++ uspace/lib/posix/math.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -0,0 +1,65 @@
+/*
+ * Copyright (c) 2011 Petr Koupy
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libposix
+ * @{
+ */
+/** @file
+ */
+
+#define LIBPOSIX_INTERNAL
+
+#include "internal/common.h"
+#include "math.h"
+
+/**
+ * 
+ * @param x
+ * @param exp
+ * @return
+ */
+double posix_ldexp(double x, int exp)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param num
+ * @param exp
+ * @return
+ */
+double posix_frexp(double num, int *exp)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/** @}
+ */
Index: uspace/lib/posix/math.h
===================================================================
--- uspace/lib/posix/math.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/math.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -36,5 +36,12 @@
 #define POSIX_MATH_H_
 
-/* Empty. Just to satisfy preprocessor. */
+/* Normalization Functions */
+extern double posix_ldexp(double x, int exp);
+extern double posix_frexp(double num, int *exp);
+
+#ifndef LIBPOSIX_INTERNAL
+	#define ldexp posix_ldexp
+	#define frexp posix_frexp
+#endif
 
 #endif /* POSIX_MATH_H_ */
Index: uspace/lib/posix/signal.h
===================================================================
--- uspace/lib/posix/signal.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/signal.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -56,4 +56,5 @@
 #define signal(sig,func) (errno = ENOTSUP, SIG_ERR)
 #define raise(sig) ((int) -1)
+#define kill(pid,sig) (errno = ENOTSUP, (int) -1)
 
 typedef int posix_sig_atomic_t;
Index: uspace/lib/posix/stdbool.h
===================================================================
--- uspace/lib/posix/stdbool.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
+++ uspace/lib/posix/stdbool.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -0,0 +1,52 @@
+/*
+ * Copyright (c) 2011 Jiri Zarevucky
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libposix
+ * @{
+ */
+/** @file
+ */
+
+#ifndef POSIX_STDBOOL_H_
+#define POSIX_STDBOOL_H_
+
+// TODO: propose for inclusion in libc and drop bool.h,
+//       it's a very silly incompatibility with standard C
+
+#ifdef LIBC_BOOL_H_
+	#error You can't include bool.h and stdbool.h at the same time.
+#endif
+#define LIBC_BOOL_H_
+
+#define bool _Bool
+#define true 1
+#define false 0
+#define __bool_true_false_are_defined 1
+
+#endif /* POSIX_STDBOOL_H_ */
+
Index: uspace/lib/posix/stdint.h
===================================================================
--- uspace/lib/posix/stdint.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdint.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -36,5 +36,55 @@
 #define POSIX_STDINT_H_
 
-#include "libc/stdint.h"
+#undef INT8_MAX
+#undef INT8_MIN
+#define INT8_MAX  127
+#define INT8_MIN  (-128)
+
+#undef UINT8_MAX
+#undef UINT8_MIN
+#define UINT8_MAX  255
+#define UINT8_MIN  0
+
+#undef INT16_MAX
+#undef INT16_MIN
+#define INT16_MAX  32767
+#define INT16_MIN  (-32768)
+
+#undef UINT16_MAX
+#undef UINT16_MIN
+#define UINT16_MAX  65535
+#define UINT16_MIN  0
+
+#undef INT32_MAX
+#undef INT32_MIN
+#define INT32_MAX  2147483647
+#define INT32_MIN  (-INT32_MAX - 1)
+
+#undef UINT32_MAX
+#undef UINT32_MIN
+#define UINT32_MAX  4294967295U
+#define UINT32_MIN  0U
+
+#undef INT64_MAX
+#undef INT64_MIN
+#define INT64_MAX  9223372036854775807LL
+#define INT64_MIN  (-INT64_MAX - 1LL)
+
+#undef UINT64_MAX
+#undef  UINT64_MIN
+#define UINT64_MAX  18446744073709551615ULL
+#define UINT64_MIN  0ULL
+
+#undef OFF64_MAX
+#undef OFF64_MIN
+#define OFF64_MAX  INT64_MAX
+#define OFF64_MIN  INT64_MIN
+
+#undef AOFF64_MAX
+#undef AOFF64_MIN
+#define AOFF64_MAX  UINT64_MAX
+#define AOFF64_MIN  UINT64_MIN
+
+#include "libc/sys/types.h"
 
 typedef int64_t posix_intmax_t;
Index: uspace/lib/posix/stdio.c
===================================================================
--- uspace/lib/posix/stdio.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdio.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -167,4 +167,17 @@
  * @return
  */
+int posix_vsprintf(char *s, const char *format, va_list ap)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param s
+ * @param format
+ * @param ...
+ * @return
+ */
 int posix_sscanf(const char *s, const char *format, ...)
 {
@@ -173,4 +186,26 @@
 }
 
+/**
+ *
+ * @param path
+ * @return
+ */
+int posix_remove(const char *path)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param s
+ * @return
+ */
+char *posix_tmpnam(char *s)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
 /** @}
  */
Index: uspace/lib/posix/stdio.h
===================================================================
--- uspace/lib/posix/stdio.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdio.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -39,4 +39,5 @@
 #include "libc/stdio.h"
 #include "sys/types.h"
+#include "libc/stdarg.h"
 
 /* Character Input/Output */
@@ -60,5 +61,12 @@
 /* Formatted Input/Output */
 extern int posix_sprintf(char *restrict s, const char *restrict format, ...);
+extern int posix_vsprintf(char *restrict s, const char *restrict format, va_list ap);
 extern int posix_sscanf(const char *restrict s, const char *restrict format, ...);
+
+/* Deleting Files */
+extern int posix_remove(const char *path);
+
+/* Temporary Files */
+extern char *posix_tmpnam(char *s);
 
 #ifndef LIBPOSIX_INTERNAL
@@ -73,5 +81,10 @@
 
 	#define sprintf posix_sprintf
+	#define vsprintf posix_vsprintf
 	#define sscanf posix_sscanf
+
+	#define remove posix_remove
+
+	#define tmpnam posix_tmpnam
 #endif
 
Index: uspace/lib/posix/stdlib.c
===================================================================
--- uspace/lib/posix/stdlib.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdlib.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -40,5 +40,5 @@
 
 /**
- *
+ * 
  * @param array
  * @param count
@@ -46,4 +46,30 @@
  * @param compare
  */
+int posix_atexit(void (*func)(void))
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param array
+ * @param count
+ * @param size
+ * @param compare
+ */
+int posix_abs(int i)
+{
+	// TODO
+	not_implemented();
+}
+
+/**
+ *
+ * @param array
+ * @param count
+ * @param size
+ * @param compare
+ */
 void posix_qsort(void *array, size_t count, size_t size,
     int (*compare)(const void *, const void *))
@@ -70,4 +96,16 @@
  * @return
  */
+int posix_putenv(char *string)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param name
+ * @param resolved
+ * @return
+ */
 char *posix_realpath(const char *name, char *resolved)
 {
@@ -113,4 +151,56 @@
 }
 
+/**
+ *
+ * @param size
+ * @return
+ */
+void *posix_malloc(size_t size)
+{
+	return malloc(size);
+}
+
+/**
+ *
+ * @param nelem
+ * @param elsize
+ * @return
+ */
+void *posix_calloc(size_t nelem, size_t elsize)
+{
+	return calloc(nelem, elsize);
+}
+
+/**
+ *
+ * @param ptr
+ * @param size
+ * @return
+ */
+void *posix_realloc(void *ptr, size_t size)
+{
+	return realloc(ptr, size);
+}
+
+/**
+ *
+ * @param ptr
+ */
+void posix_free(void *ptr)
+{
+	free(ptr);
+}
+
+/**
+ * 
+ * @param tmpl
+ * @return
+ */
+char *posix_mktemp(char *tmpl)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
 /** @}
  */
Index: uspace/lib/posix/stdlib.h
===================================================================
--- uspace/lib/posix/stdlib.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdlib.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -49,4 +49,8 @@
 #define EXIT_SUCCESS 0
 #define _Exit exit
+extern int posix_atexit(void (*func)(void));
+
+/* Absolute Value */
+extern int posix_abs(int i);
 
 /* Array Sort Function */
@@ -56,4 +60,5 @@
 /* Environment Access */
 extern char *posix_getenv(const char *name);
+extern int posix_putenv(char *string);
 
 /* Symbolic Links */
@@ -68,7 +73,22 @@
 extern int posix_atoi(const char *str);
 
+/* Memory Allocation */
+extern void *posix_malloc(size_t size);
+extern void *posix_calloc(size_t nelem, size_t elsize);
+extern void *posix_realloc(void *ptr, size_t size);
+extern void posix_free(void *ptr);
+
+/* Legacy Declarations */
+extern char *posix_mktemp(char *tmpl);
+
 #ifndef LIBPOSIX_INTERNAL
+	#define atexit posix_atexit
+
+	#define abs posix_abs
+
 	#define qsort posix_qsort
+
 	#define getenv posix_getenv
+
 	#define realpath posix_realpath
 	
@@ -78,4 +98,11 @@
 	
 	#define atoi posix_atoi
+
+	#define malloc posix_malloc
+	#define calloc posix_calloc
+	#define realloc posix_realloc
+	#define free posix_free
+
+	#define mktemp posix_mktemp
 #endif
 
Index: uspace/lib/posix/stdlib/strtold.c
===================================================================
--- uspace/lib/posix/stdlib/strtold.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/stdlib/strtold.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -41,5 +41,5 @@
 #include <errno.h> // TODO: use POSIX errno
 #include "../libc/bool.h"
-#include "../libc/stdint.h"
+#include "../stdint.h"
 #include "../stdlib.h"
 #include "../strings.h"
Index: uspace/lib/posix/string.h
===================================================================
--- uspace/lib/posix/string.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/string.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -103,5 +103,7 @@
 
 /* Legacy declarations */
+#ifndef POSIX_STRINGS_H_
 extern int posix_ffs(int i);
+#endif
 
 #ifndef LIBPOSIX_INTERNAL
Index: uspace/lib/posix/strings.h
===================================================================
--- uspace/lib/posix/strings.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/strings.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -37,6 +37,8 @@
 #define POSIX_STRINGS_H_
 
+#ifndef POSIX_STRING_H_
 /* Search Functions */
 extern int posix_ffs(int i);
+#endif
 
 /* String/Array Comparison */
Index: uspace/lib/posix/sys/wait.c
===================================================================
--- uspace/lib/posix/sys/wait.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
+++ uspace/lib/posix/sys/wait.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2011 Petr Koupy
+ * Copyright (c) 2011 Jiri Zarevucky
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libposix
+ * @{
+ */
+/** @file
+ */
+
+#define LIBPOSIX_INTERNAL
+
+#include "../internal/common.h"
+#include "wait.h"
+
+/**
+ * 
+ * @param stat_ptr
+ * @return
+ */
+posix_pid_t posix_wait(int *stat_ptr)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param pid
+ * @param stat_ptr
+ * @param options
+ * @return
+ */
+posix_pid_t posix_waitpid(posix_pid_t pid, int *stat_ptr, int options)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/** @}
+ */
+
Index: uspace/lib/posix/sys/wait.h
===================================================================
--- uspace/lib/posix/sys/wait.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
+++ uspace/lib/posix/sys/wait.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2011 Petr Koupy
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/** @addtogroup libposix
+ * @{
+ */
+/** @file
+ */
+
+#ifndef POSIX_SYS_WAIT_H_
+#define POSIX_SYS_WAIT_H_
+
+#include "types.h"
+
+extern posix_pid_t posix_wait(int *stat_ptr);
+extern posix_pid_t posix_waitpid(posix_pid_t pid, int *stat_ptr, int options);
+
+#ifndef LIBPOSIX_INTERNAL
+	#define wait posix_wait
+	#define waitpid	posix_waitpid
+#endif
+
+#endif /* POSIX_SYS_WAIT_H_ */
+
+/** @}
+ */
Index: uspace/lib/posix/time.c
===================================================================
--- uspace/lib/posix/time.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/time.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -87,4 +87,14 @@
 }
 
+/**
+ * 
+ * @return
+ */
+posix_clock_t posix_clock(void)
+{
+	// TODO
+	not_implemented();
+}
+
 /** @}
  */
Index: uspace/lib/posix/time.h
===================================================================
--- uspace/lib/posix/time.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/time.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -55,4 +55,6 @@
 };
 
+typedef long posix_clock_t;
+
 /* Broken-down Time */
 extern struct posix_tm *posix_localtime(const time_t *timep);
@@ -63,6 +65,11 @@
 extern size_t posix_strftime(char *restrict s, size_t maxsize, const char *restrict format, const struct posix_tm *restrict tm);
 
+/* CPU Time */
+extern posix_clock_t posix_clock(void);
+
 #ifndef LIBPOSIX_INTERNAL
 	#define tm posix_tm
+
+	#define clock_t posix_clock_t
 
 	#define localtime posix_localtime
@@ -71,4 +78,6 @@
 	#define ctime posix_ctime
 	#define strftime posix_strftime
+
+	#define clock posix_clock
 #endif
 
Index: uspace/lib/posix/unistd.c
===================================================================
--- uspace/lib/posix/unistd.c	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/unistd.c	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -38,4 +38,5 @@
 #include "internal/common.h"
 #include "unistd.h"
+#include <task.h>
 
 /* Array of environment variable strings (NAME=VALUE). */
@@ -43,12 +44,13 @@
 
 /**
- * 
+ * Dummy function. Always returns false, because there is no easy way to find
+ * out under HelenOS.
+ *
  * @param fd
- * @return
+ * @return Always false.
  */
 int posix_isatty(int fd)
 {
-	// TODO
-	not_implemented();
+	return false;
 }
 
@@ -60,4 +62,13 @@
 {
 	return getpagesize();
+}
+
+/**
+ * 
+ * @return
+ */
+posix_pid_t posix_getpid(void)
+{
+	return task_get_id();
 }
 
@@ -105,4 +116,61 @@
 }
 
+/**
+ * 
+ * @param path
+ * @param name
+ * @return
+ */
+long posix_pathconf(const char *path, int name)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @return
+ */
+posix_pid_t posix_fork(void)
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param path
+ * @param argv
+ * @return
+ */
+int posix_execv(const char *path, char *const argv[])
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param file
+ * @param argv
+ * @return
+ */
+int posix_execvp(const char *file, char *const argv[])
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
+/**
+ * 
+ * @param fildes
+ * @return
+ */
+int posix_pipe(int fildes[2])
+{
+	// TODO: low priority, just a compile-time dependency of binutils
+	not_implemented();
+}
+
 /** @}
  */
Index: uspace/lib/posix/unistd.h
===================================================================
--- uspace/lib/posix/unistd.h	(revision 4d4988ed64e25f70ccfc9f9bcd6850a87a04b88b)
+++ uspace/lib/posix/unistd.h	(revision 021c50855b87b33bffd6e20a77228f51864ffa10)
@@ -58,5 +58,5 @@
 
 /* Process Identification */
-#define getpid task_get_id
+extern posix_pid_t posix_getpid(void);
 extern posix_uid_t posix_getuid(void);
 extern posix_gid_t posix_getgid(void);
@@ -112,4 +112,15 @@
 	_PC_VDISABLE
 };
+extern long posix_pathconf(const char *path, int name);
+
+/* Creating a Process */
+extern posix_pid_t posix_fork(void);
+
+/* Executing a File */
+extern int posix_execv(const char *path, char *const argv[]);
+extern int posix_execvp(const char *file, char *const argv[]);
+
+/* Creating a Pipe */
+extern int posix_pipe(int fildes[2]);
 
 #ifndef LIBPOSIX_INTERNAL
@@ -121,4 +132,5 @@
 	#define getpagesize posix_getpagesize
 
+	#define getpid posix_getpid
 	#define getuid posix_getuid
 	#define getgid posix_getgid
@@ -127,4 +139,13 @@
 
 	#define sysconf posix_sysconf
+
+	#define pathconf posix_pathconf
+
+	#define fork posix_fork
+
+	#define execv posix_execv
+	#define execvp posix_execvp
+
+	#define pipe posix_pipe
 #endif
 
