لماذا 1 يناير 1970؟
كلّ أنظمة Unix (وأحفادها: Linux، macOS، Android، iOS) تخزّن الوقت كعدد الثواني منذ منتصف ليل 1 يناير 1970 UTC. هذه اللحظة تسمّى «Unix epoch».
السبب ليس فلسفياً — هو عملي بحت. عندما صُمّم Unix في مختبرات Bell أواخر الستّينات، اختار المهندسون نقطة بداية قريبة (لا يهدرون الأرقام على ماضٍ لا يحتاجونه) وقابلة للحساب البسيط بـ 32 بت.
الثواني أم الملّي ثانية؟
أنظمة Unix الأصليّة تستخدم الثواني (10 خانات اليوم: 1700000000 = 14 نوفمبر 2023). أمّا JavaScript ومعظم لغات الويب الحديثة تستخدم الملّي ثانية (13 خانة: 1700000000000).
قاعدة سريعة: إذا كان الرقم 10 خانات → ثوانٍ. إذا 13 خانة → ملّي ثانية. أداتنا تكشف ذلك تلقائياً (أيّ رقم أكبر من 10¹² = ملّي ثانية).
ISO 8601: التنسيق العالمي المقروء
الـ epoch رقم لا يُقرأ بشريّاً. لذلك نحوّله إلى ISO 8601: 2024-01-15T10:30:00Z. الحرف T فاصل بين التاريخ والوقت، الحرف Z يعني «Zulu» — أي UTC.
للمنطقة الزمنيّة المحلّيّة: 2024-01-15T13:30:00+03:00 (السعوديّة، +3 ساعات عن UTC). هذا التنسيق مرتّب أبجدياً بنفس ترتيب زمني — مما يسهّل الفرز.
مشكلة 2038: الـY2K القادم
أنظمة 32-بت تخزّن Unix time كعدد صحيح مُوقَّع 32 بت. أقصى قيمة: 2,147,483,647 ثانية = 03:14:07 UTC، 19 يناير 2038. بعدها يفيض المؤشّر ويعود إلى 1901.
الحل: التحوّل إلى 64-بت. الأنظمة الحديثة (Linux kernel 5.6+) تستخدم 64 بت ويمكنها التعبير عن أوقات حتى عام 292 مليار في المستقبل. لكن أنظمة embedded قديمة في بنوك ومصانع لا تزال 32-بت — والوقت يدقّ.
استخدامات يوميّة
قواعد البيانات: تخزين الوقت كـ epoch أسرع وأخفّ من النصّ. حقل BIGINT = 8 بايت مقابل ~25 بايت لـ ISO string.
الـ APIs: معظم الـ JWT tokens، Stripe، AWS، وغيرها تستخدم Unix time. عند فحص لماذا فشل توقيع JWT، تحقّق من حقول iat وexp — هي ثوانٍ من 1970.
تنسيق logs: نظام Linux journalctl، Docker logs، Kubernetes — كلّها تختم بـ epoch. التحويل اليدوي يضيع الوقت. أداة تحويل سريعة في المتصفّح توفّر دقائق يومياً.
أدوات ذات صلة
أدوات أخرى مجانية على ArabToolBox، كلها تعمل في متصفّحك بدون تسجيل.
- تحويل هجري ميلاديتقويم أم القرى الرسمي + Excel + فروقات + ICS
- أيام العمل (السعودية)احسب أيام العمل بين تاريخين مع استبعاد الإجازات الرسمية
- الساعة العالمية — العواصم العربيةوقت كل العواصم العربية في شاشة واحدة + DST
- حاسبة المواعيد النهائيةاحسب الأيام المتبقية لأي موعد + تنبيه ICS
- حاسبة العمر (هجري + ميلادي)احسب عمرك بالسنوات الهجرية والميلادية + الفروقات
- مخطط مواعيد الاجتماعاتأوجد أفضل وقت اجتماع لفرق موزعة بين دول عربية متعددة