חותמת זמן של יוניקס ממיר
המירו חותמות זמן מיומנים לזמן קריא, ואז החזירו תאריכים לשניות או אלפיות שנייה בלי לחשב בראש.
יסודות חותמת זמן
מהי חותמת זמן של יוניקס?
חותמת זמן של Unix מודדת את הזמן מאז 1 בינואר 1970 בשעה 00:00:00 UTC. המספר עצמו ניטרלי לאזור זמן, אבל ברגע שמציגים אותו לבני אדם, יומנים, לוחות בקרה, מסדי נתונים ודפדפנים עשויים לעבד אותו לפי אזורים מקומיים שונים.
יחידות נפוצות
| יחידה | אורך אופייני | דוגמה |
|---|---|---|
| שניות | 10 ספרות | 1716300000 |
| אלפיות שנייה | 13 ספרות | 1716300000000 |
מושגי זמן
מהי בעיית Y2038?
מערכות המשתמשות במספרים שלמים חתומים של 32 סיביות עבור חותמות זמן של Unix עולות על גדותיה בינואר 2038. מערכות מודרניות של 64 סיביות נמנעות ממגבלה זו.
UTC לעומת זמן מקומי
אחסן והשווה חותמות זמן ב-UTC במידת האפשר. המר לזמן מקומי רק בקצה המוצר, כגון תצוגת ממשק משתמש, דוחות או יצוא.
ISO 8601
פורמט חותמת זמן קריא כגון 2024-05-21T14:30:00Z. הוא נמצא בשימוש נרחב בממשקי API, מסדי נתונים, יומנים ומערכות מבוזרות מכיוון שהוא יכול לכלול מידע על אזור זמן.
שניות מול אלפיות שניות
ערכים בני עשר ספרות הם בדרך כלל שניות. ערכים של 13 ספרות הם בדרך כלל אלפיות שניות. ערבוב של השניים הוא אחד מבאגי חותמת הזמן הנפוצים ביותר.
התייחסות להמרה נפוצה
| משך | שניות | אלפיות שנייה |
|---|---|---|
| דקה אחת | 60 | 60,000 |
| שעה אחת | 3,600 | 3,600,000 |
| יום אחד | 86,400 | 86,400,000 |
| שנה אחת (365 ימים) | 31,536,000 | 31,536,000,000 |