أداة الطابع الزمني

أداة تحويل الطابع الزمني عبر الإنترنت، تدعم التحويل بين طابع Unix الزمني والتاريخ والوقت مع دعم مناطق زمنية متعددة

الطابع الزمني الحالي

طابع زمني إلى تاريخ

ستظهر نتيجة التحويل هنا

تاريخ إلى طابع زمني

ستظهر نتيجة التحويل هنا

معرفة الطابع الزمني

أساس حساب الوقت


أولًا: الطابع الزمني لنظام Unix: "اللغة العالمية" للوقت

التعريف:
يمثل الطابع الزمني لنظام Unix (Unix Timestamp) عدد الثواني المنقضية منذ 1 يناير 1970، 00:00:00 بالتوقيت العالمي المنسق (UTC) (باستثناء الثواني الكبيسة). وهو معيار لتمثيل الوقت في أنظمة الحاسوب مستقل عن المنصة والمنطقة الزمنية.

مصادر التعريف الموثوقة:

  • وفقًا لمعيار POSIX (IEEE Std 1003.1-2017)[1]، يُعرَّف الطابع الزمني لنظام Unix بأنه "ثوانٍ منذ الحقبة (Epoch)".
  • تحدد صفحة دليل time.h في لينكس[2] نوع بياناته بأنه time_t (عادةً عدد صحيح موقّع بعرض 32 أو 64 بت).

الخصائص الأساسية:

  1. الاستقلال عن المنطقة الزمنية: الطوابع الزمنية لنظام Unix متطابقة عالميًا في اللحظة نفسها.
    مثال: كل من 2023-10-01 08:00:00 (UTC+8) و2023-10-01 00:00:00 UTC لهما الطابع 1696118400.
  2. إهمال الثواني الكبيسة: يستبعد ضبط الثواني الكبيسة، ما ينتج عنه فرق يقارب 27 ثانية عن التوقيت الذري الدولي (TAI) (حتى 2023)[3].
  3. قيد 32 بت: ستفيض الطوابع الزمنية ذات 32 بت إلى الصفر في 19 يناير 2038 (مشكلة "عام 2038")[4].

ثانيًا: GMT مقابل UTC: من الرصد الفلكي إلى الساعات الذرية

على الرغم من استخدامهما بالتبادل غالبًا، فإن GMT (توقيت غرينتش) وUTC (التوقيت العالمي المنسق) يختلفان جوهريًا:

الجانب GMT (توقيت غرينتش) UTC (التوقيت العالمي المنسق)
التعريف يعتمد على دوران الأرض (الرصد الفلكي) يعتمد على الساعات الذرية (اهتزاز ذرة السيزيوم)، يحافظ على فرق أقل من 0.9 ثانية عن GMT
الضبط لا معايرة دورية متزامن مع دوران الأرض عبر الثواني الكبيسة[5]
الجهة عرّفه مرصد غرينتش في الأصل، ويُستخدم الآن كمعرف منطقة زمنية (UTC+0) تديره ITU[6] وBIPM[7]

حقائق أساسية:

  • تراجع GMT: حلّ UTC محل GMT كمعيار الوقت الدولي في 1972[8]، رغم أن "GMT" ما زالت تُستخدم على نطاق واسع للدلالة على منطقة UTC+0.
  • قواعد اختصارات المناطق الزمنية: وفقًا لقاعدة بيانات IANA للمناطق الزمنية[9]، يمثل كل من Etc/UTC وEtc/GMT انحرافًا صفريًا، لكن الأخير يستخدم إشارات معكوسة (مثلًا، GMT+1 تعني في الواقع UTC-1).

ثالثًا: تحويل المنطقة الزمنية: من الطابع الزمني إلى التوقيت المحلي

صيغة تحويل الطابع الزمني إلى التوقيت المحلي:
الوقت المحلي = الطابع الزمني لنظام Unix + انحراف المنطقة الزمنية + تعويض الثواني الكبيسة

الأدوات والمعايير الموثوقة:

  1. قاعدة بيانات IANA للمناطق الزمنية (المعروفة سابقًا بقاعدة بيانات أولسون)[9]:
    • تحتوي على قواعد المناطق الزمنية العالمية (مثلًا، يمثل America/New_York UTC-5/UTC-4)
    • مدمجة افتراضيًا في أنظمة لينكس وmacOS وجافا
  2. معيار ISO 8601[10]:
    • يحدد صيغة الوقت YYYY-MM-DDTHH:mm:ss±HH:mm (مثلًا، 2023-10-01T08:00:00-04:00)
  3. RFC 3339[11]:
    • يحدد صيغة الوقت على الإنترنت (متوافقة مع ISO 8601)، ويتطلب انحراف منطقة زمنية صريحًا

مثال برمجي (Python):

import datetime

timestamp = 1696118400
# التحويل إلى UTC
utc_time = datetime.datetime.utcfromtimestamp(timestamp)  # 2023-10-01 00:00:00
# التحويل إلى التوقيت الشرقي (UTC-4)
local_time = datetime.datetime.fromtimestamp(timestamp, datetime.timezone(datetime.timedelta(hours=-4)))  # 2023-10-01 04:00:00-04:00

رابعًا: الثواني الكبيسة: "معالجة الاستثناءات" في الطابع الزمني

آلية الثواني الكبيسة:

  • تحدد الخدمة الدولية لدوران الأرض (IERS)[5] إدراج الثواني الكبيسة بناءً على تغيرات دوران الأرض (عادةً في نهاية يونيو أو 31 ديسمبر)
  • حتى 2023، يبلغ الفرق التراكمي للثواني الكبيسة بين UTC وTAI 37 ثانية[3]
توافق الأنظمة: النظام/اللغة معالجة الثواني الكبيسة التوثيق الرسمي
لينكس يدعم نواة النظام إدراج الثواني الكبيسة، ويتطلب إعدادًا يدويًا معالجة الثواني الكبيسة في نواة لينكس
جافا تتجاهل واجهة java.time الثواني الكبيسة وثائق Oracle لجافا
NTP العام من Google يستخدم استراتيجية "تلطيخ الثواني" (leap smearing) أثناء إدراج الثواني الكبيسة تلطيخ الثواني في Google

خامسًا: مراجع موثوقة


سادسًا: الخلاصة

  • الطابع الزمني لنظام Unix أساسي للبرمجة عبر المناطق الزمنية؛ انتبه إلى مشكلة الفيضان في 2038.
  • UTC هو المعيار الدولي الحديث، بينما GMT يُستخدم فقط كمعرف منطقة زمنية (UTC+0).
  • تعتمد تحويلات المناطق الزمنية على قاعدة بيانات IANA، وينبغي الرجوع إلى نشرات IERS لمعالجة الثواني الكبيسة.

فهم هذه المفاهيم يضمن تحكمًا دقيقًا في منطق الوقت في الأنظمة الحرجة مثل المعاملات المالية ومزامنة السجلات.

المراجع

[1] معيار POSIX للوقت: IEEE Std 1003.1-2017
[2] صفحة دليل time.h في لينكس: شغّل man 3 time في الطرفية
[3] نشرة BIPM للثواني الكبيسة: تاريخ TAI-UTC
[5] الخدمة الدولية لدوران الأرض (IERS): إعلانات الثواني الكبيسة
[6] الاتحاد الدولي للاتصالات (ITU): تعريف UTC
[9] قاعدة بيانات IANA للمناطق الزمنية: المستودع الرسمي
[11] صيغة وقت RFC 3339: مواصفات RFC 3339