That's way easier to fix, though. You just need to fix the kernel's internal structures to keep track of time using two numbers. Y2K was a problem because everyone had to fix their code, not just OSs.
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
};