I don't know the answer for sure. But here is what I believe is happening:
ls uses the stat() system call to figure out information about a file. From the stat(2) man page:
Code:
time_t st_atime; /* time of last access */
So the last access time of a file is returned as a value of type time_t. What is time_t? From the types.h(OP) man page:
Code:
time_t Used for time in seconds.
So if I am correct, then the problem is that ls is told the time only as precise as seconds. And I am not sure how to get around this.
But hopefully this helps you understand what's going on.