Unix timestamp इस मंगलवार से 17 से शुरू होगा
(unixtimestamp.com)- Unix timestamp का 1.7 अरब की रेंज में प्रवेश करना यह दिखाता है कि 1 जनवरी 1970 UTC के बाद से इतने सेकंड जमा हो चुके हैं; उदाहरण मान
1782553539के रूप में दिखाया गया है - conversion tool timestamp को GMT, user timezone और relative time में बदलता है और seconds, milliseconds, microseconds, nanoseconds units को support करता है
- यह उसी समय को ISO 8601 और कई RFC formats में भी साथ दिखाता है, जिससे systems के बीच date representation के फर्क को समझना आसान होता है
- Unix timestamp स्थान से स्वतंत्र होकर एक ही समय-बिंदु को दर्शाता है, इसलिए distributed applications में date information की tracking और sorting के लिए उपयोगी है
- 19 जनवरी 2038 को 32-bit overflow समस्या बनेगा, इसलिए applications को नया timestamp convention अपनाना होगा या 64-bit systems पर migrate करना होगा
Unix timestamp का आधार और conversion का तरीका
- Unix timestamp समय को सेकंड में संचित मान के रूप में संभालने का तरीका है
- इसका reference point 1 जनवरी 1970 UTC का Unix Epoch है
- किसी खास तारीख और Unix Epoch के बीच बीते सेकंड की संख्या ही timestamp value बनती है
- यह मान उपयोगकर्ता पृथ्वी पर कहीं भी हो, उसी समय-बिंदु को दर्शाता है
- पेज का conversion tool timestamp input और date/time input, दोनों को support करता है
- timestamp को seconds, milliseconds, microseconds, nanoseconds units में input किया जा सकता है
- date/time में year, month, day, 24-hour format hour, minute, second भरकर उसे Unix timestamp में convert किया जा सकता है
- result को GMT, user timezone और relative time format में देखा जा सकता है
साथ में दिखाए जाने वाले standard time formats
- मौजूदा epoch example कई standard time formats में भी दिया गया है
समय इकाई रूपांतरण और 2038 की समस्या
- पेज इंसानों के पढ़ने योग्य time units को Unix timestamp के सेकंड में बदलकर दिखाता है
- 1 घंटा:
3600सेकंड - 1 दिन:
86400सेकंड - 1 सप्ताह:
604800सेकंड - 1 महीना, 30.44 दिन के आधार पर:
2629743सेकंड - 1 वर्ष, 365.24 दिन के आधार पर:
31556926सेकंड
- 1 घंटा:
- 19 जनवरी 2038 को 32-bit overflow की वजह से Unix timestamp काम करना बंद कर देगा
- उससे पहले लाखों applications को नया timestamp convention अपनाना होगा
- या 64-bit systems पर migrate होकर timestamp के उपयोग की अवधि और बढ़ानी होगी
1 टिप्पणियां
Hacker News की राय
10 करोड़ सेकंड बहुत जल्दी निकल जाते हैं
संदर्भ के लिए, Unix timestamp 1600000034 के समय New York Times का फ्रंट पेज यह था:
https://web.archive.org/web/20200913122714/https://www.nytim...
और 1500000301, 1400000634, 1300007806 के समय क्रमशः ये थे:
https://web.archive.org/web/20170714024501/http://www.nytime...
https://web.archive.org/web/20140513170354/http://www.nytime...
https://web.archive.org/web/20110313091646/http://www.nytime...
Unix timestamp 1 600 000 000 भी बहुत पुरानी बात नहीं थी; वह 2020-09-13 12:26:40 UTC था
उस समय की HN चर्चा यहां है: https://news.ycombinator.com/item?id=24452885
उस event की याद में लिखा मेरा blog post यहां है: https://susam.net/maze/unix-timestamp-1600000000.html
100 000 000 सेकंड लगभग 3 साल 2 महीने होते हैं, इसलिए ऐसे events हर कुछ साल में एक बार दिख जाते हैं
मेरे हिसाब से सबसे शानदार event अभी साढ़े 9 साल दूर Unix timestamp 2 000 000 000 होगा: 2033-05-18 03:33:20 UTC. ऐसी चीज़ लगभग 33 साल 8 महीने में सिर्फ एक बार होती है
Python में 1700000000 ऐसे दिखता है:
$ python3 -q
GNU date(Linux):
$ date -ud @1700000000
Tue Nov 14 22:13:20 UTC 2023
BSD date(macOS, FreeBSD, OpenBSD आदि):
$ date -ur 1700000000
Tue 14 Nov 2023 22:13:20 UTC
codebase का कुछ हिस्सा संभालने लगा तो उन files से काफी काम पड़ा; वे सभी 800–900 मिलियन रेंज के नंबर थे
एक समय ऐसा आया कि उस range के नंबर देखते ही मुझे कुछ हफ्तों की गलती के भीतर तुरंत अंदाज़ा हो जाता था कि लगभग कौन-सा साल और महीना है
अजीब माहौल अजीब superpowers पैदा कर देता है
[0] https://en.wikipedia.org/wiki/Multi-user_dungeon
किस्मत अच्छी रही तो शायद 3333333333 भी खुद देख सकूं। वह जबरदस्त दिन होगा
perfect shirt पर नज़र रखने के लिए https://datetime.store/ खोलने का यह बिल्कुल सही समय है
“बॉस! हम पर DDoS हो रहा है!”
“नहीं, बेटा, बस मंगलवार है”
सोच रहा हूं कि क्या उस समय को print करने वाली shirt भी मिल सकती है
999,999,999 से 1 billion पर जाने का पल देखने के लिए देर तक जागता रहा, और सोचा, “इस हफ्ते को मैं जिंदगी भर याद रखूंगा”
60 घंटे बाद पूरी दुनिया उस हफ्ते को याद रखेगी, यह नहीं पता था
system epoch के बाद के सेकंडों को string के रूप में store करता था, लेकिन यह मानकर चल रहा था कि वे 9 digits में फिट होंगे
1000000000 होते ही उसने आखिरी digit काटना शुरू कर दिया, इसलिए वह Sat 1973-03-03 01:46:40 PST पर लौट गया और असली समय की 10% speed से आगे बढ़ने लगा। इसे काफी जल्दी ठीक कर दिया गया
epoch event को भी उसने जरूर cover किया होगा
2009 में Boston के एक hotel lobby में हुई 1234567890 meetup में गया था
derivatives tech support के head ने बताया कि वह पल आने वाला है, तो मैंने shell खोला और
watchcommand तथा epoch seconds में output देने वालीdatecommand चलाकर उस पल को देखाफिर वापस काम पर लौट गया
miss न हो जाए, इसलिए ऊपर वाला arrow और Enter लगातार दबाता रहा
Vinge की A Deepness in the Sky में मेरी पसंदीदा चीज़ों में से एक decimal time का इस्तेमाल है: ksec, Msec जैसी units
Earth time और decimal time के conversion को दिखाने वाला एक शानदार log scale भी है
मोटे-मोटे हिसाब में यह उम्मीद से ज़्यादा बार काम आता है
Tom Duff के observation की वजह से मुझे पहले से पता था कि Gsec लगभग एक सदी का एक-तिहाई होता है
नहीं लगता कि हम जल्द ही आम तौर पर ऐसे system पर shift करेंगे। Biological rhythms से जुड़ी units बहुत सुविधाजनक हैं
फिर भी space में इंसानों की बात करते समय यह ज़्यादा बार न दिखना थोड़ा हैरान करता है
[0] "How many seconds are there in a year? If I tell you there are 3.155 x 10^7, you won't even try to remember it. On the other hand, who could forget that, to within half a percent, pi seconds is a nanocentury." --Tom Duff
19 जनवरी 2038 तक 5,148 दिन बचे हैं
अगर मैं तब तक जिंदा रहा, तो उसके अगले दिन मेरा 65वां जन्मदिन होगा। यानी digital Armageddon के ठीक समय पर पहुंचूंगा
decimal notation बदलने के पल की तुलना में, अपेक्षाकृत ऊंचे स्थान वाले bit के 0 से 1 में बदलने के पल को celebrate करना ज़्यादा उचित है
मुझे 100 million seconds की unit पसंद है
यह 1 साल से लंबी और 10 साल से छोटी है। 1.6e8 का दौर pandemic था। 1.7e8 क्या लेकर आएगा?
अच्छा लगता है कि दूसरे लोग भी ऐसी चीज़ों को लेकर excited होते हैं। UNIX Timeval के fans को यह
tftool आज़माना चाहिए [1]एक दोस्त ने C/Lex/Yacc में जो बनाया था, उसे मैं साढ़े 15 साल तक रोज़ इस्तेमाल करता रहा, फिर वह मज़ा शेयर करने के लिए उसे Golang + Homebrew में port कर दिया
[1] https://github.com/neomantra/tf
brew tap neomantra/homebrew-tap
brew install tf
ऐसे round numbers print करके देखे।
tf10 digits पर auto-detect करता है, इसलिएseqभी वहीं से शुरू किया