Unix நேரம், ISO 8601 எழுத்துமுறை
SI-க்கு வெளியான அலகு · அளவை: 1970 முதல் முழு எண் நொடிகளாகக் குறிக்கப்படும் ஒரு கணம்
2038 ஜனவரி 19 அன்று உலக நேரப்படி மூன்று மணி பதினான்கு நிமிடம் ஏழு நொடியில், முப்பத்திரண்டு பிட் அகலமுள்ள நொடி எண்ணி 2 147 483 647-ஐ அடையும் — அது தன்னுள் கொள்ளக்கூடிய மிகப் பெரிய எண். அடுத்த துடிப்பு மேல் பிட்டை உயர்த்தும், அதே இரும எழுத்து இனி எதிர்மறையாகப் படிக்கப்படும்: இந்த எண்ணிக்கையாலேயே நேரத்தைக் காக்கும் கடிகாரங்கள் 2038-இல் அல்ல, 1901 திசம்பரில் இருக்கும். இது தொலைவான எதிர்காலத்தின் வேடிக்கை அன்று — ஒரு தொழிற்துறை கட்டுப்பாட்டி அல்லது நீர் அளவி மீதமுள்ள பன்னிரண்டு ஆண்டுகளை விட நீண்ட காலம் உழைக்கிறது.
இந்த எண்ணிக்கை மிக எளிமையாகக் கட்டப்பட்டுள்ளது: நொடிகள் 1970 ஜனவரி 1 நள்ளிரவிலிருந்து தொடர்ச்சியாக ஓடுகின்றன, அதில் ஒரு நாள் எப்போதும் சரியாக 86 400 நொடிகளைக் கொண்டிருக்கிறது. அந்த எளிமையே அதன் இரு தனிச்சிறப்புகளுக்கும் ஊற்று. ஒருபுறம், எண்ணிலிருந்து உடனே நாட்காட்டித் தேதி கிடைக்கிறது, மறுபுறமும் அப்படியே; ஆகவே ஒவ்வொரு நிகழ்வுப் பதிவேடும், ஒவ்வொரு தரவுத் தளமும், ஒவ்வொரு கோப்பு அமைப்பும் நேரத்தை அதனாலேயே காக்கின்றன. மறுபுறம், மிகை நொடியை இத்தகைய எண்ணிக்கையில் வெளிப்படுத்தவே முடியாது; அதாவது பெயருக்கு மாறாக அது நொடிகளை அல்ல, பின்னங்களுடன் கூடிய நாட்களையே எண்ணுகிறது, உண்மையில் UTC எழுத்துமுறையின் நேர்கோட்டுச் சார்பே அன்றி கழிந்த நேரத்தின் எண்ணி அல்ல.
01 · வரையறை
Unix நேரம் என்பது ஒருங்கிணைந்த உலக நேரப்படி 1970 ஜனவரி 1 நள்ளிரவிலிருந்து கழிந்த நொடிகளின் எண்ணிக்கை; ஒவ்வொரு நாளும் சரியாக 86 400 நொடிகளைக் கொண்டிருக்கிறது என்ற நிபந்தனையுடன். ISO 8601 எழுத்துமுறை அதையே வேறு விதமாகச் சொல்கிறது: நாட்காட்டித் தேதி, நாளின் நேரம், தொடக்க நெட்டாங்கிலிருந்து இடப்பெயர்வு ஆகியவற்றால்; புலங்கள் கண்டிப்பாகப் பருமையிலிருந்து நுண்மைக்குச் செல்கின்றன.
86 400 நொடிகள் என்ற நிபந்தனை சிறு விவரம் அல்ல, வரையறையில் மிக அடிப்படையானது. புவியின் சுழற்சிப் பணியகம் அறிவிக்கும் மிகை நொடியை இந்த எண்ணிக்கை உள்வாங்க இயலாது; ஆகவே செருகும் கணத்தில் அமைப்பு ஒரே மதிப்பை இருமுறை திரும்பச் சொல்கிறது, அல்லது கடிகாரத்தைப் பின்னே தள்ளுகிறது. இதிலிருந்து ஒரு முக்கியமான கருத்து வருகிறது: இரு நிகழ்வுகளுக்கு இடையே ஒரு செருகல் விழுந்திருந்தால், இரு unix எண்களின் வேறுபாடு அவற்றுக்கு இடையே உண்மையில் கழிந்த நொடிகளின் எண்ணிக்கை அல்ல — அணு அளவுகோலிலிருந்து விலகல் ஏற்கெனவே இருபத்தேழு நொடிகளாகக் குவிந்துவிட்டது.
எல்லையோ வரையறையைச் சாராது, சேமிப்பின் அகலத்தையே சார்ந்தது. குறியுடன் கூடிய முப்பத்திரண்டு பிட் தரும் மிகப் பெரிய மதிப்பு 2 147 483 647, அது 2038 ஜனவரி 19-இல் விழுகிறது; அடுத்த கூட்டல் மேல் பிட்டை ஒன்றாக மாற்றி எண்ணை எதிர்மறையாக்கி, கடிகாரத்தை 1901 திசம்பர் 13-க்கு வீசுகிறது. அறுபத்திநான்கு பிட் அந்த எல்லையை இருநூற்றுத் தொண்ணூற்றிரண்டு ஆயிரம் கோடி ஆண்டுகள் முன்னே தள்ளுகிறது, ஆயினும் அதே அறுபத்திநான்கு பிட்டில் முழு நானோ நொடிகள் 2262-இலேயே தீர்ந்துவிடுகின்றன.
தரநிலைப்படி எழுதுதல் வேறொரு பணியைத் தீர்க்கிறது — சேமிப்பை அல்ல, பரிமாற்றத்தை — ஆகவே அதில் எண்ணிடம் அறவே இல்லாதவை எடை பெறுகின்றன: மணி இடப்பெயர்வு, தேதிக்கும் நேரத்துக்கும் இடையிலான பிரிப்பான், மேலும் சரங்களின் நீளம் சமமாக இருக்கும்போது அகர வரிசை கால வரிசையுடன் ஒத்துப்போகும் என்ற விதி. இந்தக் கடைசிப் பண்பே இந்த வடிவத்தைக் கோப்புப் பெயர்களிலும் பதிவேடுகளிலும் வரிசைப்படுத்தலின் அடித்தளமாக்கியது.
நகர்த்தியால் நேரத்தைக் கொண்டு செல்லுங்கள், பதிவகம் நிரம்புவதைப் பாருங்கள்: பிட்கள் வலமிருந்து இடமாக ஒளிர்கின்றன, மேல் பிட், அதாவது குறிப் பிட், இருளாக இருக்கும் வரை எண் நேர்மறை, தேதி வளர்கிறது. எண்ணி 2 147 483 647-ஐத் தாண்டியதுமே மேல் பிட் சிவப்பாக எரிகிறது, எண் முழுவதும் எதிர்மறையாகிறது, கடிகாரம் 1901-க்குத் தாவுகிறது.
பச்சை நேர்கோடு அணு அளவுகோல்; அங்கே ஒவ்வொரு நொடியும் உண்மையிலேயே ஒரு நொடி. சிவப்புப் படிக்கோடு Unix நேரம்; ஒவ்வொரு செருகலின்போதும் ஒரே முத்திரையை இருமுறை தருவதால் கோடு அவ்விடத்திலேயே நின்றுவிடுகிறது. விலகல் ஏற்கெனவே இருபத்தேழு நொடிகள், அது வளர்ந்துகொண்டே இருக்கிறது; ஆகவே இந்த எண்ணிக்கை நாட்காட்டித் தேதிக்கு உதவும், இயற்பியலில் கால அளவீட்டுக்கு உதவாது.
02 · மாற்றம்
நேர முத்திரையையோ தேதியையோ இடுங்கள்
எண்ணிக்கையின் எல்லா மடங்குகளுக்கும் இடையே — நொடி, மில்லி, மைக்ரோ, நானோ — மாற்றங்கள் துல்லியமானவை, ஏனெனில் அவை ஒரு காரணியால் மட்டுமே வேறுபடுகின்றன. தோராயமானது ஒரே ஒரு வரி: அணு அளவுகோலுக்கு மாற்ற, கொடுக்கப்பட்ட கணம் வரை எத்தனை மிகை நொடிகள் குவிந்துள்ளன என்பதை அறிய வேண்டும்.
தரநிலைப்படி சரத்தைப் பகுப்பதை இந்தத் தாள் Z எழுத்துடன் கூடிய விரிவான எழுத்துமுறையில் செய்கிறது; பிரிப்பான்கள் இல்லாத அடிப்படை வடிவம் நுண்ணமைப்புகளுக்கு நகர்த்தப்பட்டுள்ளது.
2038-இன் சிக்கல் தரநிலையில் இல்லை, கருவிகளிலும் பழைய குறியீட்டிலும் உள்ளது: முப்பத்திரண்டு பிட் முத்திரைகள் அளவிகளின் உள்ளமை நிரலிலும், தொழிற்துறை கட்டுப்பாட்டிகளிலும், கோப்பு அமைப்புகளின் வடிவங்களிலும், புலம் ஏற்கெனவே நான்கு பைட்டாக அறிவிக்கப்பட்ட தரவுத் தளங்களிலும் அமர்ந்துள்ளன. மூலத்தில் வகையை மாற்றுவது எளிதுதான்; மீதமுள்ள பன்னிரண்டு ஆண்டுகளில் பொருத்தப்பட்ட பல மில்லியன் சாதனங்களைப் பார்த்துச் செல்வதோ 2000-க்கு முன் நின்ற அதே வகைப் பணி.
| மதிப்பு | குறிப்பு | ||
|---|---|---|---|
| {u} | {name} | {value} | {note} |
03 · அளவின் படிநிலைகள்
மடக்கை அளவுகோல்: ஒரு நொடியிலிருந்து அறுபத்திநான்கு பிட்டின் எல்லை வரை04 · அளவைக் கருவிகள்
நிகழ்வுக்கு நேர முத்திரை எதனால் இடப்படுகிறது
மின்கலத்துடன் கூடிய தனிச் சில்லு, சாதனம் அணைந்திருக்கும்போதும் எண்ணிக்கையைத் தொடர்கிறது. அது வழக்கமாக unix முத்திரையை அல்ல, நாட்காட்டியின் புலங்களைத் தனித்தனியே சேமிக்கிறது; அதன் ஆண்டுப் புலத்தின் அகலம் அதற்கே உரியது, ஆகவே பழைய பலகைகளில் 2038 பற்றிய பேச்சு பெரும்பாலும் இந்தக் கேள்வியிலிருந்தே தொடங்கும்: சில்லு தானே எந்த ஆண்டு வரை எண்ணுகிறது.
NTP நெறிமுறை இயந்திரத்தின் கடிகாரத்தைப் பொது நேரத்துக்குச் சில மில்லி நொடித் துல்லியத்தில் கொண்டுவருகிறது; அதுவே செருகலை ஒரு நாள் முன்னதாகத் தனிக் கொடியால் எச்சரிக்கிறது. அதற்கும் தன் எல்லை உண்டு, அது முன்னதாகவே வருகிறது: எண்ணிக்கை 1900 முதல் குறியற்ற முப்பத்திரண்டு பிட்டில் ஓடி 2036 பிப்ரவரியில் நிரம்பி வழியும்.
பதிவேட்டில் முத்திரை எண்ணாலோ தரநிலைப்படி சரத்தாலோ எழுதப்படுகிறது; இரண்டாவது சரியாக ஒரே காரணத்தால் சிறந்தது: சம நீள சரங்களில் அகர வரிசை கால வரிசையுடன் ஒத்துப்போகிறது, ஆகவே பதிவுகள் தேதியைப் பகுக்காமலேயே வரிசைப்படுகின்றன. இதனாலேயே இந்த வடிவம் கணிப்புத் தொழில்நுட்பத்துக்கு வெகு அப்பால் பரவியது.
ஒரு சாதனம் 2038-க்குத் தயாரா என்பதை ஒரே வழியில்தான் சோதிக்க முடியும் — அதன் கடிகாரத்தை அந்த அபாய எல்லைக்கு அப்பால் நகர்த்தி, பதிவேடுகள், சான்றிதழ்கள், இடைவெளிக் கணக்கு ஆகியவற்றுக்கு என்ன ஆகிறது என்று பார்ப்பது. இவ்வாறே கட்டணக் கணக்கிலும், அணுகல் கட்டுப்பாட்டு அமைப்புகளிலும், சாவிகளின் செல்லுபடிக் காலத்திலும் ஏற்கெனவே செயலிழப்புகள் கண்டறியப்பட்டுள்ளன; அங்கே எதிர்காலத் தேதி கூட்டலால் உருவாகி, எல்லைக்கு வெகு முன்பே நிரம்பி வழிகிறது.
05 · எழுத்து விதிகள்
பருமையிலிருந்து நுண்மைக்கு, எப்போதும் இடப்பெயர்வுடன்
தரநிலை புலங்களை இறங்கு வரிசையில், ஆண்டை நான்கு இலக்கங்களில், தேதிப் பிரிப்பானாக இணைப்புக் கோட்டை, நேரத்துக்கு முன் T எழுத்தை வேண்டுகிறது; மணி இடப்பெயர்வு தொடக்க நெட்டாங்குக்கு Z எழுத்தாலோ, கூட்டல்-கழித்தல் மணி நிமிடங்களாகவோ காட்டப்படுகிறது. unix முத்திரை முழு எண்ணாக, இலக்கப் பிரிப்பின்றி எழுதப்படுகிறது; மடங்கை எப்போதும் தெளிவுபடுத்த வேண்டும், ஏனெனில் ஆயிரம் காரணி நொடிகளை மில்லி நொடிகளிலிருந்து பிரிக்கிறது, எண்ணின் அளவைப் பார்த்தால் இரண்டும் எளிதில் குழம்பும்.
முதல் எழுத்துமுறை வெவ்வேறு நாடுகளில் வெவ்வேறாகப் படிக்கப்படுகிறது, ஆகவே தரவுப் பரிமாற்றத்தில் ஏற்கத்தக்கது அன்று. இரண்டாவது பிரிப்பானையும் இடப்பெயர்வையும் விட்டுவிடுகிறது, ஆகவே கணம் இருபுறமும் ஒரு நாள் அளவுக்கு நிச்சயமற்றதாக இருக்கிறது. மூன்றாவது முன் பூச்சியங்களை இழக்கிறது, ஆகவே சரங்கள் அகர வரிசையில் நிற்பதில்லை — ஆனால் இந்த வடிவம் மதிக்கப்படுவதே அந்தப் பண்பாலேயே. நான்காவது unix எண்ணிக்கையை அணு அளவுகோலுக்குச் சமமாக்குகிறது, ஆனால் அவற்றுக்கிடையே குவிந்த இருபத்தேழு நொடி செருகல்கள் கிடக்கின்றன.
06 · அண்டை அலகுகள்
அருகிலேயே அதே கொள்கையின்படி கட்டப்பட்ட, ஆனால் வேறு தொடக்கத்திலிருந்து செல்லும் எல்லா எண்ணிக்கைகளும் நிற்கின்றன: NTP நேரம் 1900 முதல், யூலியன் நாள் நம் சகாப்தத்துக்கு முந்தைய 4713 நண்பகல் முதல், செயற்கைக்கோள் அமைப்பின் அளவுகோல் 1980 ஜனவரி முதல். அவை சகாப்தத்திலும் அலகிலும் மட்டுமே வேறுபடுகின்றன, ஆகவே ஒரு மாறிலியைக் கழித்தே மாற்றப்படுகின்றன.
குறியுள்ள நொடிகள்
அதன் எல்லை 2036-லேயே வந்துவிடுகிறது
மிகை நொடிகள் நேர்மையாக எண்ணப்பட்டன
Simetrium ஏடுகளில் அருகில் உள்ளவை யூலியன் நாள், அதிலிருந்தே மாற்று மாறிலி எடுக்கப்பட்டது, UTC, TAI, UT1 அளவுகோல்கள், காணாமற்போன மிகை நொடிகளை விளக்குபவை, வினாடி எண்ணிக்கையின் அலகாக, மேலும் பிட், அதன் அகலமே எல்லையைத் தீர்மானிக்கிறது.
07 · வரலாற்றுப் பகுதி
பிட் பற்றாக்குறையால் தேர்ந்தெடுக்கப்பட்ட சகாப்தம்
முதல் Unix கையேட்டில் நேரம் 1971 தொடக்கத்திலிருந்து நொடியின் அறுபதில் ஒரு பங்காக எண்ணப்பட்டது; முப்பத்திரண்டு பிட்டில் அத்தகைய எண்ணிக்கை இரண்டாண்டையே கொண்டது. அவை மிக விரைவாகத் தீர்ந்ததால் அமைப்பின் ஒவ்வொரு வெளியீட்டிலும் சகாப்தத்தை நகர்த்த வேண்டியிருக்கும் நிலை வந்தது; ஆகவே நொடியின் பின்னங்களைக் கைவிட்டு முழு நொடிகள் எடுக்கப்பட்டன.
முழு நொடிகளுக்கு மாறியதால் உருவாக்கியவர்கள் நூற்று முப்பத்தாறு ஆண்டுக் கையிருப்பைப் பெற்றனர்; தொடக்கத்தைத் தேவையால் அல்ல, வசதியால் தேர்ந்தெடுக்க முடிந்தது. எடுக்கப்பட்டது 1970 ஜனவரி 1 — கடந்த காலத்தில் மிக அண்மையான நிறைவான தேதி, இயந்திரப் பதிவுகள் எப்படியும் அங்கு எட்டவில்லை — அன்றிலிருந்து ஒருமுறைகூட மாற்றப்படவில்லை, அமைப்பு பலமுறை அடியிலிருந்து மீண்டும் எழுதப்பட்டபோதும்.
பன்னாட்டுத் தரப்படுத்தல் நிறுவனம் விலகிச் சென்ற தேசிய வடிவங்களை ஒன்றாகச் சேர்த்து, அதன் அடித்தளத்தில் எளிய விதியை வைத்தது: புலங்கள் பருமையிலிருந்து நுண்மைக்குச் செல்கின்றன, அனைத்தும் முன் பூச்சியங்களுடன். பக்கவிளைவு நோக்கத்தை விட முக்கியமாயிற்று — அத்தகைய சரங்கள் எண்களைப் போலவே வரிசைப்படுகின்றன, ஆகவே அந்த வடிவம் கோப்புப் பெயர்களிலும், பதிவேடுகளிலும், பரிமாற்ற நெறிமுறைகளிலும் பரவியது.
மேசை அமைப்புகளும் சேவையக அமைப்புகளும் அறுபத்திநான்கு பிட்டுக்கு நெடுங்காலம் முன்பே மாறிவிட்டன; அங்கே எல்லை எந்த நியாயமான அடிவானத்துக்கும் அப்பால் தள்ளப்பட்டுள்ளது. ஆபத்து வேறிடத்தில் தங்கியது: இருபது ஆண்டு ஆயுளுள்ள கருவிகளின் உள்ளமை நிரலில், புலம் நான்கு பைட்டாக அறிவிக்கப்பட்ட கோப்பு வடிவங்களில், எதிர்காலக் கெடுக்களின் கணக்கில் — இன்றைய தேதியுடன் பதினைந்து ஆண்டுகளைக் கூட்டியதுமே அவை இன்றே நிரம்பி வழிகின்றன.
பெயருக்கு மாறாக நொடிகளை எண்ணாத எண்ணிக்கை
Unix நேரத்தின் வரையறை நொடிகளை எண்ணுவது போலக் கேட்கிறது, ஆனால் நாளுக்கு நிறைவான 86 400 நொடிகள் என்ற கோரிக்கை அதை வேறொன்றாக்குகிறது: UTC எழுத்துமுறையின் நேர்கோட்டுச் சார்பு, கழிந்த நேரத்தின் அளவீடு அன்று. புவியின் சுழற்சிப் பணியகம் செருகலை அறிவிக்கும் ஒவ்வொரு முறையும் எண்ணிக்கை ஒரே மதிப்பை இருமுறை திரும்பச் சொல்ல வேண்டும் அல்லது பின்னே தாவ வேண்டும்; இரு முத்திரைகளின் வேறுபாட்டிலிருந்து அந்த நொடியே தொலைந்துபோகிறது. அரை நூற்றாண்டில் இத்தகைய இழப்புகள் இருபத்தேழு குவிந்துள்ளன; ஆகவே உண்மையான காலம் தேவைப்படும் பணிகளில் இதை அல்ல, அணு அளவுகோலையே எடுக்கிறார்கள்.
இரண்டாவது தனிச்சிறப்பு வரையறையில் அறவே இல்லை, சேமிப்பு முறையிலேயே உள்ளது; இதுவே அதை நம் பட்டியலில் இயற்கையோ உடன்பாடோ அல்ல, இயந்திரச் சொல்லின் அகலமே நிர்ணயித்த ஒரே எல்லையாக்குகிறது. யூலியன் நாள் ஒருபோதும் முடிவதில்லை, ஏனெனில் அது ஓர் எண்; Unix நேரம் 2038 ஜனவரி 19-இல் முடிகிறது, ஏனெனில் அது நான்கு பைட் புலம். ஓர் அளவைக்கும் அதன் குறிப்புக்கும் இடையிலான வேறுபாடு அளவையியலாளர்களை வழக்கமாகக் குறைவாகவே ஈர்க்கும்; இங்கே அதுவே அனைத்தையும் தீர்மானிக்கிறது.
பட்டியல் · அளவை அலகுகள்
ஒவ்வோர் அளவைக்கும் ஓர் ஏடு
SI-இன் ஏழு அடிப்படை அலகுகள், சொந்தப் பெயருள்ள இருபத்திரண்டு பெறுதி அலகுகள், மேலும் தொகுதிக்கு வெளியிலுள்ள அவ்வளவுகள் — அவை இல்லாமல் தொழில்நுட்பமும் நாட்காட்டியும் இயங்கா.