Epoch time is the current time in number of seconds from the start of a certain date or point-in-time. For Unix system, 00:00:00 1st January 1970 UTC is the starting point. Different system may have designated different starting reference point.
Origin of Epoch Time
With the development of Unix system, for the system to be able to `count` time, there need to be a starting point for the computer to take the reference from. With Unix system developed in the 1960s to 1970s, an arbitrary date 00:00:00 UTC on 1 January 1970 is selected as the starting reference.
Current Unix Time: here
There are many systems developed by various companies that have pick their own Epoch. For some reason, most of them are all starting from 00:00:00 UTC.
Let’s look at some of the common ones below.
|1st January, 1601
|1st January, 1970
|1st January, 1904
|Digital Equipment Corporation’s Virtual Memory System (VMS)
|17th November, 1858
|1st January, 2001
To view the full list of Epoch from all the notable sources, can refer to Wiki info page here.
As we have already see that Epoch Time is a number of seconds passed with reference to the starting date, this `number of seconds` is represented by a string of bits to form the number.
Taking Unix system as an example, most of the current system is still in 32-bit. Hence, the largest date it can count till is 19th January 2038. One of the solution is to have all the system runs on 64-bit before 2038 to be able to continue counting for a much longer period.
We have touch on the concept of Epoch and understand that it is the number of seconds from a starting date or point-in-time. There is no right or wrong on what date is selected but we need to have time