मेरे पास एक विंडोज 7 और दो लिनक्स (Ubuntu 16.04) कंप्यूटर (W1, L1 & L2) वाईफाई के माध्यम से जुड़े हुए हैं - एक वायर्ड कनेक्शन दुर्भाग्य से संभव नहीं है। लिनक्स कंप्यूटर समय सिंक्रनाइज़ेशन के लिए क्रोनी चलाते हैं, L1 को L2 पर स्रोत के रूप में सेट किया जाता है, जो पूरी तरह से ठीक काम करता है। घड़ियों को जितना संभव हो उतना करीब होना चाहिए, एक 50 एमएस ऑफसेट पहले से ही समस्याएं पैदा करना शुरू कर देगा। लेकिन वर्णक्रम का उपयोग कर लिनक्स सिस्टम के लिए यह कोई समस्या नहीं है। अब मुझे W1 से L1 तक का समय भी समेटना होगा और दुर्भाग्य से विंडोज के लिए कोई कालक्रम उपलब्ध नहीं है। इसलिए मैंने इस स्क्रिप्ट को यहाँ L1 IP के साथ सहकर्मी के रूप में लिया: https://gist.github.com/thedom85/dbeb58627adfb3d5c3af एक बार सिंक्रनाइज़ेशन काम करता है, लेकिन कुछ खामियां हैं:
- अब तक सबसे अधिक समस्याग्रस्त: विंडोज सिस्टम पर समय लिनक्स के समय से बहुत तेजी से दूर चला जाता है। बहाव औसतन लगभग 10 मिनट प्रति 10 मिनट है। आसान समाधान - अक्सर घड़ियों को फिर से सिंक्रनाइज़ करना - समस्या 2 और 3 के कारण काम नहीं करता है
- विंडोज सिस्टम पर सिंक तभी सफल होता है जब टाइम मास्टर के लिए एक प्रमुख समय ऑफसेट हो। अगर यह सिर्फ कुछ सेकंड है कोई सिंक नहीं होता है।
- विंडोज सिस्टम पर सिंक केवल स्क्रिप्ट चलाने के बाद लागू होता है, फिर वाईफाई से डिस्कनेक्ट करके फिर से कनेक्ट होता है। घड़ी उसी क्षण कूद जाती है जब कनेक्शन फिर से स्थापित हो जाता है।
क्या इन समस्याओं को हल करने के लिए कोई तरीका है या बेहतर तरीके हैं? दुर्भाग्य से मैं सिर्फ सभी घड़ियों को कुछ उच्च सटीकता वाले इंटरनेट टाइमिंग सर्वरों या जीपीएस समय के लिए सक्षम नहीं कर सकता, क्योंकि कम से कम विंडोज सिस्टम इंटरनेट से जुड़ा नहीं है और लिनक्स सिस्टम भी उनके इंटरनेट कनेक्शन पर भरोसा नहीं कर सकते हैं। पहले मुझे लगा कि समस्या 1 के कारण एल 1 घड़ी को दूर करने वाली क्रॉनिक हो सकती है, लेकिन प्रारंभिक सिंक के बाद क्रोन को निष्क्रिय करने से इस समस्या पर कोई प्रभाव नहीं पड़ता है।
यहाँ कुछ चित्र समस्या दर्शा रहे हैं। W1 लगातार L2 को वर्तमान L1 समय के साथ संदेश भेजता है, L2 आगमन पर अपना टाइमस्टैम्प जोड़ता है और प्लॉट दोनों टाइमस्टैम्प के बीच अंतर को दिखाता है जैसा कि L2 द्वारा देखा गया है।

संपादित करें: एल 1 और एल 2 दोनों बैटरी संचालित हैं - दोनों एक ही स्रोत द्वारा। पूरी तरह से CMOS बैटरी RTC के लिए ज़िम्मेदार होनी चाहिए क्योंकि मुझे नहीं लगा कि इससे कोई समस्या हो सकती है। हालांकि यह पता चला कि यह है। AC (इसलिए AC -> AC / DC कनवर्टर -> कंप्यूटर को बैटरी के बजाय -> DC / DC कनवर्टर -> कंप्यूटर) द्वारा इन कंप्यूटरों को पावर देने से बहाव काफी कम हो जाता है। लेकिन यह अभी भी पर्याप्त नहीं है:

EDIT2: सॉल्यूशन / वर्कअराउंड
I ने गंदे विंडोज टाइम सर्विस (w32time) को निष्क्रिय कर दिया और इसके बदले लिनक्स एनटीपी प्रोग्राम का एक पोर्ट स्थापित किया । काफी आक्रामक पोल रेट सेटिंग्स के साथ यह ठीक काम करता है:

SetSystemTime()पूर्ण उप-संकल्प के साथ कॉल करता है । चूंकि आपने मूल रूप से stackoverflow.com पर पोस्ट किया है , मुझे लगता है कि आप प्रोग्रामिंग को संभालने में सक्षम होंगे।