Unix ã¿ã€ã ã¹ã¿ã³ããšã¯ïŒå®å šã¬ã€ã
Unix ã¿ã€ã ã¹ã¿ã³ããšã¯ïŒ
Unix ã¿ã€ã ã¹ã¿ã³ãïŒPOSIX æéãŸãã¯ãšããã¯ã¿ã€ã ãšãåŒã°ããŸãïŒã¯ãUnix ãšãã㯠â 1970 幎 1 æ 1 æ¥ 00:00:00 UTC â ããçµéããç§æ°ãæ°ããæå»è¿œè·¡ã·ã¹ãã ã§ããããç§ãé€ããŸãã
ã¿ã€ã ãŸãŒã³ã«ãã£ãŠç°ãªã人éãèªããæ¥ä»ïŒ"July 19, 2026, 3:30 PM EST"ïŒãšã¯ç°ãªããUnix ã¿ã€ã ã¹ã¿ã³ãã¯å°çäžã®ã©ãã§ãåãç¬éã衚ãåäžã®æŽæ°ã§ããããšãã°ãã¿ã€ã ã¹ã¿ã³ã 1785292800 ã¯ããã¥ãŒãšãŒã¯ã«ããŠããã³ãã³ã«ããŠãæ±äº¬ã«ããŠããç¹å®ã®ç¬éã«å¯Ÿå¿ããŸãã
Unix ã¿ã€ã ã¹ã¿ã³ãã¯ãçŸä»£ã®ã³ã³ãã¥ãŒãã£ã³ã°ã«ãããæå»åŠçã®åºç€ã§ãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãããã°ã©ãã³ã°èšèªãããŒã¿ããŒã¹ããã¡ã€ã«ã·ã¹ãã ã¯ãã¹ãŠãå éšã§ãã®ã·ã³ãã«ãªæŽæ°è¡šçŸã«äŸåããŠããŸãã
Unix ãšããã¯: ãªã 1970 幎 1 æ 1 æ¥ãªã®ãïŒ
1970 幎 1 æ 1 æ¥ãããšããã¯ãïŒéå§ç¹ïŒãšããŠéžãã ã®ã¯ãæ£æçãªãã®ã§ã¯ãããŸããã§ãããããã€ãã®å®çšçãªèæ ®äºé ããã®æ±ºå®ã«ã€ãªãããŸãã:
- åæã® Unix éçº: Unix ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã¯ã1960 幎代åŸåãã 1970 幎代ååã«ãããŠãã«ç ç©¶æã§éçºãããŸãããæå»ã·ã¹ãã ã 1970 幎代ååã«æšæºåãããæç¹ã§ã1970 幎 1 æ 1 æ¥ã¯æç¢ºã§æè¿ã®åºæºç¹ã§ããã
- ã·ã³ãã«ã: åæã® Unix ã·ã¹ãã ã§ã¯ãæå»ã¯ç§ãæ°ãã 32 ããã笊å·ä»ãæŽæ°ãšããŠä¿åãããŠããŸãããæè¿ã®æ¥ä»ã䜿çšããããšã§ãå°æ¥ã«åããŠè¡šçŸå¯èœãªç¯å²ãæå€§åãããŸããã
- å äŸ: ãšããã¯ã¯æåã® POSIX æšæºã§æ£åŒåãããUnix ç³»ã·ã¹ãã ã®æ®éçãªåºæºãšãªããŸããã
ãã以åã® Unix ç³»ã·ã¹ãã ã§ã¯ç°ãªããšããã¯æ¥ä»ã䜿çšãããŠããŸãããã1970 幎ã®ãšããã¯ãåã¡æ®ãããã以æ¥ãã¹ãŠã® POSIX æºæ ã·ã¹ãã ã®æšæºãšãªã£ãŠããŸãã
ã¿ã€ã ã¹ã¿ã³ãå€ã®ä»çµã¿
æ žãšãªãèãæ¹ã¯åçŽã§ã:
- ã¿ã€ã ã¹ã¿ã³ã
0ã¯ãæ£ç¢ºã«1970 幎 1 æ 1 æ¥ 00:00:00 UTC ãæå³ããŸã - ã¿ã€ã ã¹ã¿ã³ã
86400ïŒ60 à 60 à 24ïŒã¯ã1970 幎 1 æ 2 æ¥ 00:00:00 UTC ãæå³ããŸã - ã¿ã€ã ã¹ã¿ã³ã
-3600ã¯ã1969 幎 12 æ 31 æ¥ 23:00:00 UTC ãæå³ããŸãïŒè² ã®ã¿ã€ã ã¹ã¿ã³ãã¯ãšããã¯ããåã®æ¥ä»ã衚ããŸãïŒ
èšç®åŒã¯åçŽã§ã:
timestamp = seconds since 1970-01-01 00:00:00 UTC
ããªç§ã¿ã€ã ã¹ã¿ã³ã
ç¹ã« JavaScript ã Web API ãªã©ãå€ãã®ææ°ã·ã¹ãã ã¯ç§ã§ã¯ãªãããªç§ã䜿çšããŸããããªç§ã¿ã€ã ã¹ã¿ã³ãã¯ãåã«ç§ããŒã¹ã®å€ã« 1000 ãæãããã®ã§ã:
- JavaScript ã®
Date.now()ã¯ããªç§ãè¿ããŸã - Python ã®
time.time()ã¯å°æ°ããªç§ãå«ãæµ®åå°æ°ç¹æ°ãšããŠç§ãè¿ããŸã
倿ããåã«å¿ ãã·ã¹ãã ã䜿çšãã粟床ã確èªããŠãã ãããæ··åšããããšãæ°å幎ãããæ¥ä»ã«ãªãå¯èœæ§ããããŸãã
2038 幎åé¡
2038 幎åé¡ïŒãUnix ãã¬ãã¢ã ãã°ããŸãã¯ãY2K38ããšãåŒã°ããŸãïŒã¯ãã¿ã€ã ã¹ã¿ã³ãã32 ããã笊å·ä»ãæŽæ°ãšããŠä¿åããã·ã¹ãã ã«åœ±é¿ããæå»è¡šçŸã®åé¡ã§ãã
32 ããã笊å·ä»ãæŽæ°ã¯ãçŽ -21 åãã +21 åãŸã§ã®å€ãä¿æã§ããŸãã衚çŸå¯èœãª Unix ã¿ã€ã ã¹ã¿ã³ãã®æå€§å€ã¯ 2147483647 ã§ãããã¯ä»¥äžã«å¯Ÿå¿ããŸã:
- 2038 幎 1 æ 19 æ¥ 03:14:07 UTC
ãã® 1 ç§åŸãå€ã¯ -2147483648 ã«ãªãŒããŒãããŒããããã¯1901 幎 12 æ 13 æ¥ã衚ããŸã â ã·ã¹ãã ãçŸåšã®æå»ã 20 äžçŽåé ã®æ¥ä»ãšããŠè§£éããåå ã«ãªããŸãã
圱é¿ãåããã·ã¹ãã ã¯ïŒ
- 32 ãããããã»ããµãæèŒããçµã¿èŸŒã¿ããã€ã¹ãš IoT ããŒããŠã§ã¢
- å€ãçµã¿èŸŒã¿ Linux ã«ãŒãã«
- 32 ãããæŽæ°ã®æå»ã«ã©ã ã䜿çšããã¬ã¬ã·ãŒããŒã¿ããŒã¹
- æå»ã 32 ãããæŽæ°ãšããŠä¿åãããã¡ã€ã«ã·ã¹ãã ãšãã€ããªåœ¢åŒ
ä¿®æ£æ¹æ³
ææ°ã®ã·ã¹ãã ã¯ãæå»ä¿åã®ããã«ã»ãšãã©64 ãããæŽæ°ã«ç§»è¡ããŠããŸãã64 ããã笊å·ä»ãæŽæ°ã¯ãå°æ¥ã®çŽ2,920 å幎ãŸã§è¡šããŸã â å®çšçã«ã¯äºå®äžç¡éã§ãã
- 64 ãããããŒããŠã§ã¢äžã®æè¿ã®ã»ãšãã©ã® Linux ãã£ã¹ããªãã¥ãŒã·ã§ã³ã¯ãã§ã«å®å šã§ã
- Linux ã«ãŒãã«ã¯ã64 ãããã·ã¹ãã äžã§äœå¹Žã 64 ãããã® time_t ã䜿çšããŠããŸã
- ã«ãŒãã« 5.6 以éã§ã¯ã32 ãããã¢ãŒããã¯ãã£åãã® 64 ããã time_t ãµããŒããå°å ¥ãããŸãã
- PythonãGoãJava ãªã©ã®ããã°ã©ãã³ã°èšèªã¯å éšã§ 64 ãããæŽæ°ã䜿çšããŸã
çµã¿èŸŒã¿ã·ã¹ãã ãã¬ã¬ã·ãŒãœãããŠã§ã¢ã管çããŠããå Žåã¯ã仿¥ã®ãã¡ã« time_t ã®ãµã€ãºã確èªãã䟡å€ããããŸãã
UTC ãš Unix ã¿ã€ã ã¹ã¿ã³ããšã®é¢ä¿
Unix ã¿ã€ã ã¹ã¿ã³ãã¯æ¬è³ªçã«ã¿ã€ã ãŸãŒã³ã«äŸåããŸãã â åžžã« UTC ãåç §ããŸãã
UTC ãšã¯ïŒ
åå®äžçæïŒUTCïŒã¯ãäžçãæèšãšæå»ã調æŽããäž»èŠãªæå»æšæºã§ããããã¯ã°ãªãããžæšæºæïŒGMTïŒã«ä»£ããåœéæšæºãšãªããååæèšã«ãã£ãŠç¶æãããŠããŸãã
Unix ã¿ã€ã ã¹ã¿ã³ãã«ãšã£ãŠ UTC ãéèŠãªçç±
- Unix ã¿ã€ã ã¹ã¿ã³ã㯠UTC ã§å®çŸ©ãããŠãããããã¿ã€ã ã¹ã¿ã³ãã¯äžçäžã§åãç¬éã衚ããŸã
- Unix ã¿ã€ã ã¹ã¿ã³ããããŒã«ã«æå»ã«å€æããããšã¯ãçŽç²ã«è¡šç€ºå±€ã®åé¡ã§ã
- ã¿ã€ã ã¹ã¿ã³ãèªäœã«ã¯ã¿ã€ã ãŸãŒã³æ å ±ãä¿åãããªããããã·ã¹ãã ã¯ã·ã³ãã«ã§ç§»æ€å¯èœã«ä¿ãããŸã
ãã®èšèšã«ãããäžçäžã®èª°ãšã§ã Unix ã¿ã€ã ã¹ã¿ã³ããå ±æã§ããåæ¹ãææ§ããªãèªåã®ããŒã«ã«æå»ã«å€æã§ããŸãã
ãããç§: çšãªäŸå€
Unix ã¿ã€ã ã¹ã¿ã³ãã¯çè«äžãšããã¯ããã®ç§æ°ãæ°ããŸããããããç§ãç¡èŠããŸãããããç§ã远å ãããæ¥ã§ããUnix æéã§ã¯æ£ç¢ºã« 86400 ç§ã§ããã€ãŸãããããç§ã®éãUnix ã¿ã€ã ã¹ã¿ã³ãã¯é²ãŸãããããç§ã¯å®è³ªçã«ã«ãŠã³ãããæ¶ããŸãã
ãã®åçŽåã«ãã£ãŠã·ã¹ãã ã¯å®çšçã«ä¿ãããŸãããUnix ã¿ã€ã ã¹ã¿ã³ããååæèšãããããã«ä¹é¢ããããšãæå³ããŸãããã®å·®ã¯ãæ¥åžžçãªã¢ããªã±ãŒã·ã§ã³ã§ã¯ã»ãšãã©åé¡ã«ãªããªãã»ã©å°ãããã®ã§ãã
äžè¬çãªã¿ã€ã ã¹ã¿ã³ãã®ç¯å²
| ã¿ã€ã ã¹ã¿ã³ã | 人éãèªããæ¥ä» | æå³ | |-----------|---------------------|--------------| | 0 | 1970-01-01 00:00:00 UTC | Unix ãšãã㯠| | 86400 | 1970-01-02 00:00:00 UTC | ãšããã¯ã® 1 æ¥åŸ | | 946684800 | 2000-01-01 00:00:00 UTC | 2000 幎 | | 1234567890 | 2009-02-13 23:31:30 UTC | èŠãããããã¿ãŒã³ | | 1785292800 | 2026-07-19 00:00:00 UTC | 仿¥ã®ãšãã㯠| | 2147483647 | 2038-01-19 03:14:07 UTC | 32 ãããã®æå€§å€ |
ãŸãšã
Unix ã¿ã€ã ã¹ã¿ã³ãã¯ãæå»ãåäžã®æŽæ°ãšããŠè¡šããæŽç·Žãããç§»æ€å¯èœãªæ¹æ³ã§ãããã®èšèš â 1970 幎 1 æ 1 æ¥ UTC ããã®ç§æ°ãæ°ããããš â ã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãããŒã¿ããŒã¹ãããã°ã©ãã³ã°èšèªã暪æããŠãæ®éçãªæå»æšæºãšãªã£ãŠããŸããã¬ã¬ã·ãŒã·ã¹ãã ã«ã¯ 2038 幎åé¡ãè¿«ã£ãŠããŸããã64 ãããæå»ãžã®ç§»è¡ãé²ãã§ããããšã§ãUnix ã¿ã€ã ã¹ã¿ã³ãã¯ä»åŸäœäžä»£ã«ãããã£ãŠã³ã³ãã¥ãŒãã£ã³ã°ã®æå»ç®¡çã®åºç€ã§ããç¶ããã§ãããã
Unix ã¿ã€ã ã¹ã¿ã³ããå®éã«æ±ã£ãŠã¿ãŸãããïŒåœç€Ÿã® Unix ã¿ã€ã ã¹ã¿ã³ã倿ããŒã« ã䜿çšããŠãã¿ã€ã ã¹ã¿ã³ããšäººéãèªããæ¥ä»ã®éã§å³åº§ã«å€æã§ããŸãã