Unix Epoch: Tại sao ngày 1 tháng 1 năm 1970?

Unix Epoch là điểm xuất phát cho tất cả các timestamp Unix. Hiểu nguồn gốc của nó giải thích một số đặc điểm của hệ thống timestamp.

Lựa chọn ngày

Unix Epoch được thiết lập là 00:00:00 UTC ngày 1 tháng 1 năm 1970 bởi các nhà phát triển hệ điều hành Unix ban đầu tại Bell Labs vào đầu những năm 1970. Lựa chọn là tùy ý nhưng thực tế. Hệ thống Unix đang được phát triển vào cuối những năm 1960 và đầu những năm 1970. Các lập trình viên cần một điểm tham chiếu cho các phép tính thời gian. Ngày 1 tháng 1 năm 1970 là một ngày tròn gần với khi hệ thống đang được phát triển. Việc sử dụng 1970 nghĩa là hầu hết các ngày mà hệ thống sẽ gặp sẽ là số dương, đơn giản hóa tính toán. Timestamp âm vẫn hoạt động cho các ngày trước 1970 nhưng ít phổ biến hơn.

Tại sao UTC?

UTC (Coordinated Universal Time) là tiêu chuẩn thời gian chính xác trên thế giới. Việc sử dụng UTC làm cơ sở đảm bảo timestamp không mơ hồ trên các múi giờ. Nếu Epoch đã được định nghĩa trong múi giờ địa phương, cùng timestamp sẽ có nghĩa là thời gian khác nhau ở các địa điểm khác nhau. UTC cung cấp một điểm tham chiếu toàn cầu. Các múi giờ địa phương được áp dụng khi chuyển đổi timestamp sang ngày/giờ có thể đọc được cho người dùng, nhưng giá trị timestamp chính nó luôn tương đối với UTC.

Ảnh hưởng hiện đại

Ngày nay, hầu như mỗi hệ thống máy tính sử dụng Unix Epoch làm điểm tham chiếu của họ. Điện thoại thông minh, máy chủ web, cơ sở dữ liệu—tất cả đếm giây từ ngày 1 tháng 1 năm 1970. Tiêu chuẩn hóa này làm cho khả năng tương thích giữa các hệ thống dễ dàng. Timestamp có ý nghĩa như nhau cho tất cả mọi người, bất kể nền tảng hoặc ngôn ngữ lập trình. Một số hệ thống cũ sử dụng các epoch khác nhau (Windows sử dụng 1 tháng 1 năm 1601, ví dụ), nhưng Unix Epoch đã trở thành tiêu chuẩn de facto cho các ứng dụng hiện đại.

Thử công cụ

Chuyển Đổi Timestamp

Chuyển Đổi Timestamp