diff --git a/tests/sizeof_tcb/Makefile b/tests/sizeof_tcb/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..72f8fb352020b9e6e06ff7da1cb88cf1d2c04009
--- /dev/null
+++ b/tests/sizeof_tcb/Makefile
@@ -0,0 +1,4 @@
+APPLICATION = sizeof_tcb
+include ../Makefile.tests_common
+
+include $(RIOTBASE)/Makefile.include
diff --git a/tests/sizeof_tcb/main.c b/tests/sizeof_tcb/main.c
new file mode 100644
index 0000000000000000000000000000000000000000..f1b7ef9ef774865cf2da624e79d6b88928773de2
--- /dev/null
+++ b/tests/sizeof_tcb/main.c
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2014 René Kijewski <rene.kijewski@fu-berlin.de>
+ *
+ * This file is subject to the terms and conditions of the GNU Lesser
+ * General Public License v2.1. See the file LICENSE in the top level
+ * directory for more details.
+ */
+
+/**
+ * @ingroup tests
+ * @{
+ *
+ * @file
+ * @brief  Print the size of tcb_t.
+ *
+ * @author René Kijewski <rene.kijewski@fu-berlin.de>
+ *
+ * @}
+ */
+
+#include <stdio.h>
+#include <stddef.h>
+
+#include "tcb.h"
+
+#define P(NAME) printf("\t%-*s%4zu%4zu\n", 11, #NAME, sizeof(((tcb_t *) 0)->NAME), offsetof(tcb_t, NAME));
+
+int main(void)
+{
+    puts("\tmember, sizeof, offsetof");
+
+    printf("sizeof(tcb_t): %zu\n", sizeof(tcb_t));
+
+    P(sp);
+    P(status);
+    P(pid);
+    P(priority);
+    P(rq_entry);
+    P(wait_data);
+    P(msg_waiters);
+    P(msg_queue);
+    P(msg_array);
+    P(name);
+    P(stack_start);
+
+#ifdef DEVELHELP
+    P(stack_size);
+#endif
+
+    puts("Done.");
+    return 0;
+}