Re: gettimeofday call

From: Jan Engelhardt
Date: Sat Mar 26 2005 - 12:43:26 EST


>> I suppose that calling gettimeofday() repeatedly (to add a timestamp to
>> some data) within the kernel is cheaper than doing it in userspace, is it?
>
> Well, the following daemon works on most archs that support mmap at only
[...]

Ah, it does not need to be that complex.

Just comparing two approaches:

--1--
/* KERNEL: Calling read() on a character device */
static int u_read(...) {
...
gettimeofday(tv);
enqueue_in_buffer(tv);
...
}

+nothing needed in userspace

--2--
/* KERNEL: No gettimeofday */

Userspace:
while(read(fd, buf, sizeof(buf)) {
gettimeofday(&buf.tv);
...
}


(In either case, at some point, userspace has a timestamp.)
I think that -1- is faster it does not require an additional syscall from
userspace to sys_gettimeofday().


Jan Engelhardt
--
No TOFU for me, please.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/