Bước nhảy vọt trong Windows


38

Một bước nhảy vọt thứ hai đã được thêm vào gần đây vào ngày 30 tháng 6 năm 2015 23:59:60 UTC.

Làm thế nào là bước nhảy vọt được thực hiện trong Windows (cụ thể là Windows 7)?


7
Máy tính để bàn (đặc biệt là máy tính giá rẻ) nổi tiếng là có đồng hồ không chính xác, do đó sử dụng NTP. Tắt NTP trong Windows trong một ngày và xem nó cách xa điện thoại di động của bạn (sử dụng NTP) bao xa. Bạn có thể ngạc nhiên khi nó đi xa.
Keltari

2
@Keltari Tôi không nghĩ điện thoại sử dụng NTP. Bằng chứng là điện thoại tự động tắt mạng di động ngay cả khi chúng không có kết nối dữ liệu (ví dụ: không có gói dữ liệu) nhưng NTP sẽ yêu cầu kết nối dữ liệu. Bạn có thể chạy NTP trên điện thoại. Có lẽ một số không có khả năng mạng di động (điện thoại không có SIM hoặc máy tính bảng) làm như vậy. Nhưng tất cả các trao đổi gói thường xuyên để đo độ lệch đồng hồ cẩn thận khi đối mặt với độ trễ có thể sẽ tốn nhiều pin hơn so với nhận đồng hồ từ mạng di động, ít chính xác hơn nhưng đủ tốt cho điện thoại.
Celada

Câu trả lời:


35

Cách dịch vụ Windows Time xử lý một bước nhảy vọt

Dịch vụ Windows Time không cho biết giá trị của Leap Indicator khi dịch vụ Windows Time nhận được gói bao gồm một bước nhảy vọt. (Chỉ báo Leap cho biết liệu một bước nhảy vọt sắp xảy ra sẽ được chèn hoặc xóa trong phút cuối cùng của ngày hiện tại.) Do đó, sau khi bước nhảy vọt thứ hai xảy ra, ứng dụng khách NTP đang chạy dịch vụ Windows Time nhanh hơn một giây so với thực tế thời gian. Sự khác biệt thời gian này được giải quyết ở lần đồng bộ hóa tiếp theo.


23
Nó không nhanh hơn một giây, mà là một giây phía trước.
Arturo Torres Sánchez

1
@ ArturoTorresSánchez Phụ thuộc vào việc bước nhảy vọt thứ hai đang được thêm hay xóa. Có thể là người viết văn bản này đã có một bước nhảy vọt thứ hai trong tâm trí. Những giây nhuận tiêu cực chưa xảy ra, nhưng chúng có thể và có lẽ được hỗ trợ bởi ntp.
Pepijn Schmitz

19
@ ArturoTorresSánchez: Một giây nhanh hơn và một giây phía trước là điều tương tự, ít nhất là trong tiếng Anh Mỹ. Nếu một đồng hồ ở phía trước, nó là nhanh.
Yorik

16
Và trong mọi trường hợp, "nhanh hơn" là một trích dẫn trực tiếp từ bài viết được liên kết. Vì vậy, bạn sẽ cần phải làm điều đó với Microsoft, không phải duDE.
GalacticCowboy

11
@GalacticCowboy, yeah, tôi biết đó là một trích dẫn trực tiếp. Nó chỉ làm phiền tôi. Đồng hồ nhanh hơn sẽ không đồng bộ với thời gian.
Arturo Torres Sánchez

35

Windows thường hoạt động như một máy khách NTP . Nó sẽ chỉ cập nhật thời gian cập nhật tiếp theo từ máy chủ NTP, trong đó rõ ràng có các phương pháp xử lý giây nhuận. Điều này sẽ xảy ra, miễn là hệ thống của bạn được thiết lập để đồng bộ hóa thời gian qua NTP . Nếu không, thì sẽ không có gì xảy ra vì Windows 7 không có chức năng tích hợp để xử lý các giây nhuận


11
"Windows 7 không có chức năng tích hợp để xử lý các giây nhuận" - ... cũng không thể, vì, không giống như ngày nhuận, các giây nhuận được quyết định tùy ý bởi một số ủy ban. Vì Windows 7 không thể đọc được tương lai, không có cách nào để xử lý nó mà không liên hệ với máy chủ.
BlueRaja - Daniel Pflughoeft

27
@BlueRaja Windows có thể "đọc tương lai", bằng cách sử dụng tzdata có sẵn công khai có chứa thông tin về giây nhuận trong tương lai. Đó là cách các hệ thống Unix quản lý để xử lý các bước nhảy vọt chính xác. Ngoài ra, các gói NTP cho biết khi nào có bước nhảy vọt trong 24 giờ tới. Windows 8.1 trở đi trong thực tế sử dụng tzdata trực tiếp.
Neil Mayhew

8
Nói cách khác, và để trả lời câu hỏi trực tiếp, họ không.
bản6

7

Họ không được thực hiện.

Cũng giống như một chiếc đồng hồ đeo tay, việc giữ thời gian trên PC bị câm. Như những người khác đã đề cập, Windows 7 sử dụng NTP để đồng bộ hóa thời gian của PC với một nguồn đã biết. Điều này tương đương với việc bạn điều chỉnh đồng hồ đeo tay của mình mọi lúc mọi nơi.

Tuy nhiên , những bước nhảy vọt thứ hai không trở thành một vấn đề nếu bạn có ý định ghi mã có liên quan đến ngày / giờ toán, nơi số giây giữa hai ngày là rất quan trọng, và nơi những tính toán phải phù hợp với một số loại hệ thống bên ngoài hoặc dữ liệu bước nhảy vọt thứ hai. Tôi đang vật lộn để nghĩ về bất kỳ kịch bản nào như vậy, nhưng tôi tưởng tượng có một số ngoài kia.


2
Phải có một cái ở đây ở đâu đó: Wired.com/2015/07/ trên
i_am_root

4

Windows chỉ tiếp tục tích tắc. Không có điều khoản cho giây nhuận trong dịch vụ thời gian Windows. Cũng cần lưu ý rằng không có hệ điều hành lớn nào có điều khoản cho những giây nhuận.

Thoạt nhìn, điều này nghe có vẻ lạ. Nếu bạn hiểu một bước nhảy vọt là gì và khi chúng được thêm vào, nó trở nên rất đơn giản.

Các Trái đất xoay và tham khảo Systems International Service giám sát chuyển động quay của trái đất cho những vi phạm. Một số yếu tố làm thay đổi vòng quay của trái đất. Chúng bao gồm ma sát thủy triều và sự tan chảy của các dải băng lục địa (thay đổi trọng lượng!). Tóm lại, trái đất đang chậm lại rất nhẹ .

Từ Wikipedia :

Các giây nhuận không đều nhau do tốc độ quay của Trái đất thay đổi không đều. Thật vậy, sự quay vòng của Trái đất khá khó đoán trong dài hạn, điều này giải thích tại sao những giây nhuận được công bố chỉ sáu tháng trước.

Vì không thường xuyên và được thông báo khi cần thiết , tất cả các hệ điều hành hiện đại đều dựa vào Giao thức thời gian mạng (NTP) để phục hồi từ bước nhảy vọt thứ hai. Đây là một vấn đề phổ biến và được biết đến mà không có giải pháp duyên dáng nào mà thị trường châu Á đã trì hoãn mở cửa trước năm phút để cho các máy tính có đủ thời gian để kiểm tra NTP để cập nhật thời gian trong lần nhảy vọt thứ hai.


3

Microsoft không quan tâm đến việc cung cấp thời gian siêu chính xác cho các máy khách Windows. Họ cắt góc và không xử lý các trường hợp đặc biệt như giây nhuận cho máy khách để bàn. May mắn thay, các máy chủ NTP giữ thời gian tốt hơn, do đó, hãy tiếp tục đồng bộ hóa!

Dịch vụ W32Time không phải là giải pháp NTP đầy đủ tính năng đáp ứng nhu cầu ứng dụng nhạy cảm với thời gian và không được Microsoft hỗ trợ như vậy.

Cách thức hoạt động của dịch vụ Windows Time


0

Như đã chỉ ra trong bài viết hỗ trợ Windows Hỗ trợ cho bước nhảy vọt thứ hai :

Windows Server 2019 và Windows 10 tháng 10 năm 2018 Update hỗ trợ các bước nhảy vọt trong nền tảng.

Bài viết hỗ trợ cũng giải thích cách các phiên bản trước trên Windows KHÔNG hỗ trợ giây nhuận. Đặc biệt:

Leap xử lý thứ hai không được xử lý riêng bởi hệ điều hành Windows (HĐH). Ví dụ: thông tin năm, tháng, ngày và thời gian theo định dạng sau không được HĐH Windows hỗ trợ:

yyyy / mm / dd 08:59:60

Do đó, 2012/7/1 08:59:60 được xử lý là 2012/7/1 09:00:00, theo định dạng ISO 8601.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.