על חותמות זמן של Unix
חותמת זמן של Unix (הידועה גם כ-Epoch time) היא מספר השניות שחלפו מאז ה-1 בינואר 1970 בחצות UTC. כך רוב מערכות התוכנה שומרות זמן, כמספר יחיד ללא תלות באזור זמן או בפורמט תצוגה.
טוב לדעת
- שניות הן תקן ברירת המחדל; JavaScript משתמשת במילי-שניות, ולכן הערכים בה גדולים פי אלף.
- הערך נשמר תמיד ב-UTC — הזמן המקומי המוצג נקבע לפי הגדרות המכשיר שלכם.
- מספרים שליליים מייצגים תאריכים שקדמו לשנת 1970.
- חותמת זמן של 32 סיביות (עם סימן) תגיע לקיבולת המקסימלית שלה ב-19 בינואר 2038; המעבר ל-64 סיביות פותר את הבעיה.
שניות או מילי-שניות?
מספר בן 10 ספרות מציין שניות; מספר בן 13 ספרות מציין מילי-שניות. העמוד מזהה אוטומטית את הערך שהדבקתם ומציג את שניהם.
למה חותמת הזמן מציגה הפרש של כמה שעות?
ברוב המקרים מדובר בהבדלי אזורי זמן (Timezone). חותמת הזמן מחושבת ב-UTC; אם משווים אותה לשעון המקומי, ההפרש הוא אזור הזמן שלכם.
מהי בעיית שנת 2038?
מערכות ששומרות את חותמת הזמן כמספר שלם של 32 סיביות (signed) יחוו גלישת מספרים (overflow) ב-19 בינואר 2038 ויחזרו לשנת 1901. מעבר לאחסון ב-64 סיביות מבטל מגבלה זו.