aboutsummaryrefslogtreecommitdiff
path: root/open_issues/performance/io_system/test-mach.c
diff options
context:
space:
mode:
authorArne Babenhauserheide <arne_bab@web.de>2011-11-05 18:29:51 +0100
committerArne Babenhauserheide <arne_bab@web.de>2011-11-05 18:29:51 +0100
commitae2fb6ad10b538d428ff0dd7138ae1cf02b1862a (patch)
tree4a66b774bf493e95fc2961236de0ee84b4646362 /open_issues/performance/io_system/test-mach.c
parent42dc7198bbea79f4abe15d40804f539ffed1b05b (diff)
parent2e315ef11db39e8ee0a0decc054801521ee049dd (diff)
downloadweb-ae2fb6ad10b538d428ff0dd7138ae1cf02b1862a.tar.gz
web-ae2fb6ad10b538d428ff0dd7138ae1cf02b1862a.tar.bz2
web-ae2fb6ad10b538d428ff0dd7138ae1cf02b1862a.zip
fix merge conflict
Diffstat (limited to 'open_issues/performance/io_system/test-mach.c')
-rw-r--r--open_issues/performance/io_system/test-mach.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/open_issues/performance/io_system/test-mach.c b/open_issues/performance/io_system/test-mach.c
new file mode 100644
index 00000000..90337346
--- /dev/null
+++ b/open_issues/performance/io_system/test-mach.c
@@ -0,0 +1,19 @@
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <fcntl.h>
+#include <mach/mach.h>
+#define N 1000000
+int main(void) {
+ struct timeval tv1, tv2;
+ int i;
+ task_t task;
+ task = mach_task_self();
+ mach_port_urefs_t refs;
+ gettimeofday(&tv1, NULL);
+ for (i = 0; i < N; i++) {
+ mach_port_get_refs(task, task, MACH_PORT_RIGHT_RECEIVE, &refs);
+ }
+ gettimeofday(&tv2, NULL);
+ printf("%fµs\n", (float)((tv2.tv_sec-tv1.tv_sec) * 1000000 + tv2.tv_usec - tv1.tv_usec)/N);
+ return 0;
+}