توقيت النظام

أمر التاريخ في يونكس

في مجال الحوسبة ، يمثل وقت النظام مفهوم نظام الكمبيوتر لنقطة زمنية معينة .

يُقاس وقت النظام بواسطة ساعة النظام ، والتي تُنفذ عادةً كعدّ بسيط لعدد النبضات التي انقضت منذ تاريخ بداية عشوائي يُسمى الحقبة . على سبيل المثال، تُشفّر أنظمة يونكس والأنظمة المتوافقة مع معيار POSIX وقت النظام (" وقت يونكس ") على أنه عدد الثواني المنقضية منذ بداية حقبة يونكس في 1 يناير 1970 الساعة 00:00:00 بالتوقيت العالمي المنسق ، مع استثناءات للثواني الكبيسة . توفر الأنظمة التي تنفذ إصدارات 32 بت و 64 بت من واجهة برمجة تطبيقات Windows ، مثل Windows 9x و Windows NT ، وقت النظام على النحو التالي: SYSTEMTIME ، ممثلاً بقيمة السنة/الشهر/اليوم/الساعة/الدقيقة/الثانية/المللي ثانية، و FILETIME ، ممثلاً بعدد دقات 100 نانوثانية منذ 1 يناير 1601 00:00:00 بالتوقيت العالمي المنسق كما هو محسوب في التقويم الغريغوري الاستباقي .

يمكن تحويل وقت النظام إلى وقت التقويم ، وهو شكلٌ أكثر ملاءمةً للفهم البشري. على سبيل المثال، يُترجم وقت نظام يونكس، أي 1,000,000,000 ثانية منذ بداية الحقبة، إلى وقت التقويم 9 سبتمبر 2001، الساعة 01:46:40 بالتوقيت العالمي المنسق . قد تتعامل الإجراءات الفرعية في المكتبة التي تُجري هذه التحويلات أيضًا مع تعديلات المناطق الزمنية ، والتوقيت الصيفي ، والثواني الكبيسة، وإعدادات اللغة الخاصة بالمستخدم . كما تُوفّر المكتبة عادةً إجراءات لتحويل أوقات التقويم إلى أوقات النظام.

ستعاني العديد من التطبيقات التي تخزن حاليًا أوقات النظام كقيم عددية صحيحة من 32 بت من مشاكل مثل مشكلة عام 2038 الوشيكة . ستتجاوز هذه القيم الزمنية سعة البتات المتاحة بعد انتهاء حقبة وقت النظام، مما يؤدي إلى أخطاء في البرامج والأجهزة . ستحتاج هذه الأنظمة إلى نوع من الإصلاح، على غرار الجهود المبذولة لحل مشكلة عام 2000 السابقة . وستكون هذه أيضًا مشكلة أكبر بكثير بالنسبة لتنسيقات ملفات البيانات الحالية التي تحتوي على طوابع زمنية للنظام مخزنة كقيم من 32 بت.

قياسات زمنية أخرى

يرتبط وقت المعالجة ارتباطًا وثيقًا بوقت النظام ، وهو عبارة عن إجمالي وقت وحدة المعالجة المركزية الذي تستهلكه عملية قيد التنفيذ . ويمكن تقسيمه إلى وقت وحدة المعالجة المركزية للمستخدم ووقت وحدة المعالجة المركزية للنظام ، حيث يمثلان الوقت المستغرق في تنفيذ كود المستخدم وكود نواة النظام ، على التوالي. أما أوقات المعالجة فهي عبارة عن مجموع الوقت الذي تستغرقه تعليمات وحدة المعالجة المركزية أو دورات الساعة ، وعادةً لا ترتبط ارتباطًا مباشرًا بوقت النظام الفعلي .

تحتفظ أنظمة الملفات بسجل لأوقات إنشاء الملفات وتعديلها و/أو الوصول إليها عن طريق تخزين الطوابع الزمنية في كتلة التحكم في الملف ( أو inode ) لكل ملف ودليل .

تاريخ

لم تكن معظم أجهزة الكمبيوتر الشخصية من الجيل الأول تحتفظ بسجل للتاريخ والوقت. وشمل ذلك الأنظمة التي تعمل بنظام التشغيل CP/M ، بالإضافة إلى النماذج الأولى من أجهزة Apple II و BBC Micro و Commodore PET ، وغيرها. كانت لوحات الأجهزة الطرفية الإضافية التي تتضمن رقائق ساعة الوقت الحقيقي مع بطارية احتياطية مدمجة متوفرة لأجهزة IBM PC و XT ، لكن جهاز IBM AT كان أول جهاز كمبيوتر شخصي متاح على نطاق واسع مزود بأجهزة التاريخ/الوقت مدمجة في اللوحة الأم . قبل الانتشار الواسع لشبكات الكمبيوتر ، كانت معظم أنظمة الكمبيوتر الشخصي التي تحتفظ بسجل لوقت النظام تفعل ذلك فقط بالنسبة للتوقيت المحلي ، دون مراعاة اختلاف المناطق الزمنية .

بفضل التكنولوجيا الحالية، تحتفظ معظم أجهزة الكمبيوتر الحديثة بالتوقيت المدني المحلي، وكذلك العديد من الأجهزة المنزلية والشخصية الأخرى مثل أجهزة الفيديو ، وأجهزة تسجيل الفيديو الرقمية ، وأجهزة استقبال التلفزيون الكبلي ، وأجهزة المساعد الرقمي الشخصي ، وأجهزة النداء ، والهواتف المحمولة ، وأجهزة الفاكس ، وأجهزة الرد الآلي على المكالمات الهاتفية ، والكاميرات ، وكاميرات الفيديو ، ومكيفات الهواء المركزية ، وأفران الميكروويف .

لا تحتوي وحدات التحكم الدقيقة العاملة ضمن الأنظمة المدمجة (مثل Raspberry Pi و Arduino وغيرها من الأنظمة المماثلة ) دائمًا على مكونات داخلية لتتبع الوقت. تعمل العديد من أنظمة التحكم هذه دون معرفة الوقت الخارجي. أما تلك التي تتطلب هذه المعلومة، فتقوم عادةً بتهيئة وقتها الأساسي عند إعادة التشغيل عن طريق الحصول على الوقت الحالي من مصدر خارجي، مثل خادم الوقت أو ساعة خارجية، أو عن طريق مطالبة المستخدم بإدخال الوقت الحالي يدويًا.

تطبيق

تُنفَّذ ساعة النظام عادةً كمؤقت فاصل زمني قابل للبرمجة يُقاطع وحدة المعالجة المركزية دوريًا، والتي بدورها تبدأ بتنفيذ روتين خدمة مقاطعة المؤقت. يُضيف هذا الروتين عادةً نبضة واحدة إلى ساعة النظام (عداد بسيط) ويتولى مهام الصيانة الدورية الأخرى ( المقاطعة ، وما إلى ذلك) قبل العودة إلى المهمة التي كانت وحدة المعالجة المركزية تُنفذها قبل المقاطعة.

استرجاع وقت النظام الحالي

توضح الجداول التالية طرق استرجاع وقت النظام الحالي في أنظمة التشغيل ولغات البرمجة والتطبيقات المختلفة. القيم المميزة بعلامة (*) تعتمد على النظام وقد تختلف بين التطبيقات . جميع التواريخ مُعطاة وفقًا للتقويم الميلادي أو التقويم الميلادي المُسبق .

لا تعني دقة قياس الوقت في أي نظام بالضرورة دقة هذه القياسات. فعلى سبيل المثال، قد يُرجع النظام الوقت الحالي كقيمة مُقاسة بالمايكروثانية، ولكنه في الواقع قادر على تمييز نبضات الساعة الفردية بتردد 100  هرتز فقط (10  مللي ثانية).

أنظمة التشغيل

نظام التشغيلأمر أو وظيفةدقةحقبة أو نطاق
أندرويدjava.lang.System.currentTimeMillis()1 مللي ثانية1 يناير 1970
نظام الإدخال والإخراج الأساسي ( IBM PC )INT 1Ah, AH=00h[ 1 ]54.9254 مللي ثانية 18.2065  هرتزمنتصف ليل اليوم الحالي
INT 1Ah، AH=02h [ 2 ]ثانية واحدةمنتصف ليل اليوم الحالي
INT 1Ah، AH=04h [ 3 ]يوم واحدمن 1 يناير 1980 إلى 31 ديسمبر 1999 أو 31 ديسمبر 2079 (حسب النظام)
سي بي/إم بلسكتلة التحكم في النظام: [ 4 ]scb$base+58h ، الأيام منذ 31 ديسمبر 1977 scb$base+5Ah، الساعة (BCD) scb$base+5Bh، الدقيقة (BCD) scb$base+5Ch، الثانية (BCD)ثانية واحدةمن 31 ديسمبر 1977 إلى 5 يونيو 2157
دالة BDOS 69h> ( T_GET): [ 5 ]word ، الأيام منذ 1 يناير 1978 byte، الساعة (BCD) byte، الدقيقة (BCD) byte، الثانية (BCD)
نظام التشغيل DOS ( مايكروسوفت )C:\>DATEC:\>TIME10 مللي ثانية1 يناير 1980 إلى 31 ديسمبر 2099
INT 21h، AH=2Ch SYSTEM TIME [ 6 ]INT 21h ، AH=2Ah SYSTEM DATE [ 7 ]
ماك ، iOS ، iPadOS ، tvOS ، watchOS ، VisionOS ( Apple )CFAbsoluteTimeGetCurrent()[ 8 ]< 1 مللي ثانية [ 9 ] [ ملاحظة 1 ]1 يناير 2001 ±10000 سنة [ 9 ] [ ملاحظة 1 ]
أوبن في إم إسSYS$GETTIM()100 نانوثانية [ 10 ]17 نوفمبر 1858 إلى 31 يوليو 31086 [ 11 ]
gettimeofday()1 ميكروثانية [ 12 ]1 يناير 1970 إلى 7 فبراير 2106 [ 13 ]
clock_gettime()1 نانوثانية [ 12 ]
z/OSSTCK[ 14 ] : 7-1872 12 ميكروثانية 244.14 بيكوثانية [ 14 ] : 4–45، 4–461 يناير 1900 إلى 17 سبتمبر 2042 بالتوقيت العالمي [ 15 ]
STCKE1 يناير 1900 إلى 36765 ميلادي [ 16 ]
يونكس ، بوزيكس (انظر أيضًا دوال التاريخ والوقت في لغة C )$ datetime()ثانية واحدة(*) 32 بت time_t: من 1 يناير 1970 إلى 19 يناير 2038، 64 بت time_t: من 1 يناير 1970 إلى 4 ديسمبر 292,277,026,596 ميلادي
gettimeofday()1 ميكروثانية
clock_gettime()1 نانوثانية
نظام التشغيل OS/2DosGetDateTime()10 مللي ثانية1 يناير 1980 إلى 31 ديسمبر 2079 [ 17 ]
ويندوزGetSystemTime()1 مللي ثانيةمن 1 يناير 1601 إلى 14 سبتمبر 30828، 02:48:05.4775807
GetSystemTimeAsFileTime()100 نانوثانية
GetSystemTimePreciseAsFileTime()

لغات البرمجة والتطبيقات

اللغة/التطبيقدالة أو متغيردقةحقبة أو نطاق
آداAda.Calendar.Clockمن 100 ميكروثانية إلى 20 مللي ثانية (*)1 يناير 1901 إلى 31 ديسمبر 2099 (*)
أوكsystime()ثانية واحدة(*)
أساسي ، أساسي حقيقيDATE، DATE$TIME،TIME$ثانية واحدة(*)
أساسيات الأعمالDAY،TIM0.1 ثانية(*)
C (انظر دوال التاريخ والوقت في لغة C )time()1 ثانية (*) [ ملاحظة 2 ](*) [ ملاحظة 2 ]
لغة سي++std::time()std::chrono::system_clock::now()1 ثانية (*) [ ملاحظة 2 ] 1 نانوثانية (C++11، يعتمد على نظام التشغيل)(*) [ ملاحظة 2 ]
سي شاربSystem.DateTime.Now[ 18 ] System.DateTime.UtcNow[ 19 ]100 نانوثانية [ 20 ]من 1 يناير 0001 إلى 31 ديسمبر 9999
CICSASKTIME1 مللي ثانية1 يناير 1900
كوبولFUNCTION CURRENT-DATEثانية واحدة1 يناير 1601
لغة الشفرة الشائعة(get-universal-time)ثانية واحدة1 يناير 1900
دلفي ( بورلاند )datetime1 مللي ثانية (فاصلة عائمة)1 يناير 1900
دلفي ( إمباركاديرو تكنولوجيز ) [ 21 ]System.SysUtils.Time[ 22 ]1 مللي ثانية0/0/0000 0:0:0:000 إلى 12/31/9999 23:59:59:999 [sic]
System.SysUtils.GetTime[ 23 ] (اسم بديل لـSystem.SysUtils.Time)
System.SysUtils.Date[ 24 ]0/0/0000 0:0:0:000 إلى 12/31/9999 0:0:0:000 [sic]
System.DateUtils.Today[ 25 ]
System.DateUtils.Tomorrow[ 26 ]
System.DateUtils.Yesterday[ 27 ]
System.SysUtils.Now[ 28 ]ثانية واحدة0/0/0000 0:0:0:000 إلى 12/31/9999 23:59:59:000 [sic]
System.SysUtils.DayOfWeek[ 29 ]يوم واحدمن 1 إلى 7
System.SysUtils.CurrentYear[ 30 ]سنة واحدة(*)
إيماكس ليسب(current-time)1 ميكروثانية (*)1 يناير 1970
إرلانغerlang:system_time(), [ 31 ]os:system_time()يعتمد على نظام التشغيل ، على سبيل المثال على نظام Linux 1ns [ 31 ]1 يناير 1970 [ 31 ]
إكسلdate()؟0 يناير 1900 [ 32 ]
فورترانDATE_AND_TIMESYSTEM_CLOCK(*) [ 33 ]

[ 34 ]

1 يناير 1970
CPU_TIME1 ميكروثانية
يذهبtime.Now()1 نانوثانية1 يناير 0001
هاسكلTime.getClockTime1 ps (*)1 يناير 1970 (*)
Data.Time.getCurrentTime1 ps (*)17 نوفمبر 1858 (*)
جافاjava.util.Date()System.currentTimeMillis()1 مللي ثانية1 يناير 1970
System.nanoTime()[ 35 ]1 نانوثانيةعشوائي [ 35 ]
Clock.systemUTC()[ 36 ]1 نانوثانيةعشوائي [ 37 ]
جافا سكريبت ، تايب سكريبت(new Date()).getTime()Date.now()1 مللي ثانية1 يناير 1970
جولياDates.now()1 مللي ثانية1 يناير 0000 [ 38 ]
ماتلابnowثانية واحدة0 يناير 0000 [ 39 ]
النكاف$H( اختصار لـ$HOROLOG )ثانية واحدة31 ديسمبر 1840
LabVIEWTick Count1 مللي ثانية00:00:00.000 1 يناير 1904
Get Date/Time in Seconds1 مللي ثانية00:00:00.000 1 يناير 1904
أوبجكتيف سي[NSDate timeIntervalSinceReferenceDate]< 1 مللي ثانية [ 40 ]1 يناير 2001 ±10000 سنة [ 40 ]
أوكاميلUnix.time()ثانية واحدة1 يناير 1970
Unix.gettimeofday()1 ميكروثانية
باسكال الموسعGetTimeStamp()ثانية واحدة(*)
توربو باسكالGetTime()GetDate()10 مللي ثانية(*)
بيرلtime()ثانية واحدة1 يناير 1970
Time::HiRes::time[ 41 ]1 ميكروثانية
PHPtime()mktime()ثانية واحدة1 يناير 1970
microtime()1 ميكروثانية
بيور بيسكDate()ثانية واحدة1 يناير 1970 إلى 19 يناير 2038
بايثونdatetime.now().timestamp()1 ميكروثانية (*)1 يناير 1970
لعبة تقمص الأدوارCURRENT(DATE)، %DATECURRENT(TIME)،%TIMEثانية واحدةمن 1 يناير 0001 إلى 31 ديسمبر 9999
CURRENT(TIMESTAMP)،%TIMESTAMP1 ميكروثانية
روبيTime.now()[ 42 ]1 ميكروثانية (*)1 يناير 1970 (إلى 19 يناير 2038 قبل إصدار Ruby 1.9.2 [ 43 ] )
مخطط(get-universal-time)[ 44 ]ثانية واحدة1 يناير 1900
أحاديث قصيرةTime microsecondClock(VisualWorks)ثانية واحدة (ANSI) 1 ميكروثانية (VisualWorks) ثانية واحدة (Squeak)1 يناير 1901 (*)
Time totalSeconds(صرير)
SystemClock ticksNowSinceSystemClockEpoch(كرونوس)
SQLCURDATE()أو CURRENT DATECURTIME()أو CURRENT TIMEGETDATE()أو GETUTCDATE()NOW()أوCURRENT TIMESTAMPSYSDATE()3 مللي ثانية1 يناير 1753 إلى 31 ديسمبر 9999 (*)
دقيقة واحدة1 يناير 1900 إلى 6 يونيو 2079
لغة الآلة القياسيةTime.now()1 ميكروثانية (*)1 يناير 1970 (*)
تي سي إل[clock seconds]ثانية واحدة1 يناير 1970
[clock milliseconds]1 مللي ثانية
[clock microseconds]1 ميكروثانية
[clock clicks]1 ميكروثانية (*)(*)
ويندوز باور شيلGet-Date[ 45 ] [ 46 ]100 نانوثانية [ 20 ]من 1 يناير 0001 إلى 31 ديسمبر 9999
[DateTime]::Now[ 18 ] [DateTime]::UtcNow[ 19 ]
فيجوال بيسك دوت نتSystem.DateTime.Now[ 18 ] System.DateTime.UtcNow[ 19 ]100 نانوثانية [ 20 ]من 1 يناير 0001 إلى 31 ديسمبر 9999

انظر أيضاً

ملحوظات

  1. ١ ٢ لا توضح وثائق مطوري Apple دقة ونطاق CFAbsoluteTime/CFTimeInterval بشكل كافٍ، باستثناء وثائق CFRunLoopTimerCreate التي تشير إلى دقة "أقل من جزء من الألف من الثانية كحد أقصى". ومع ذلك، يبدو أن النوع المشابه NSTimeInterval قابل للتبديل، ويحتوي على نفس الدقة والنطاق المذكورين.
  2. ١ ٢ ٣ ٤ لا تحدد مكتبة C القياسية أي دقة أو حقبة أو نطاق أو نوع بيانات محددلقيم وقت النظام . تشمل مكتبة C++ مكتبة C، لذا فهي تستخدم نفس تطبيق وقت النظام المستخدم في C.

مراجع

  1. رالف د. براون (2000). "Int 0x1A, AH=0x00" . قائمة مقاطعات رالف براون .
  2. رالف د. براون (2000). "Int 0x1A, AH=0x02" . قائمة مقاطعات رالف براون .
  3. رالف د. براون (2000). "Int 0x1A, AH=0x04" . قائمة مقاطعات رالف براون .
  4. "دليل نظام التشغيل CP/M Plus (CP/M الإصدار 3.0)" (PDF) .
  5. "استدعاءات نظام BDOS" .
  6. رالف د. براون (2000). "Int 0x21, AH=0x2c" . قائمة مقاطعات رالف براون .
  7. رالف د. براون (2000). "Int 0x21, AH=0x2a" . قائمة مقاطعات رالف براون .
  8. "CFAbsoluteTimeGetCurrent" . وثائق مطوري Apple . 2007.
  9. 1 2 "CFRunLoopTimerCreate" . وثائق مطوري Apple . تم الاطلاع عليها في 5 أغسطس 2025 .
  10. ^ روث إي. غولدنبرغ. لورنس ج. كينة؛ دينيس إي دوماس (1991). VAX/VMS الداخلية وهياكل البيانات، الإصدار 5.2 . الصحافة الرقمية. رقم ISBN 978-1555580599.
  11. «لماذا يُعتبر يوم الأربعاء، 17 نوفمبر 1858، التوقيت الأساسي لنظام التشغيل OpenVMS (VAX VMS)؟» جامعة ستانفورد . 24 يوليو 1997. مؤرشف من الأصل في 24 يوليو 1997. تم الاطلاع عليه بتاريخ 8 يناير 2020 .
  12. 1 2 "دليل مرجعي لمكتبة وقت تشغيل VSI C لأنظمة OpenVMS" (ملف PDF) . VSI. نوفمبر 2020. تم الاطلاع عليه بتاريخ 17 أبريل 2021 .
  13. "OpenVMS وعام 2038" . HP . تم الاطلاع عليه بتاريخ 17 أبريل 2021 .
  14. 1 2 z/مبادئ تشغيل الهندسة المعمارية (ملف PDF) . بوكيبسي، نيويورك: شركة آي بي إم الدولية. 2007.
  15. تعتزم شركة IBM تمديد نطاق التاريخ على الأنظمة المستقبلية إلى ما بعد عام 2042. مبادئ تشغيل بنية z ، (بوكيبسي، نيويورك: شركة آلات الأعمال الدولية، 2007) 1-15، 4-45 إلى 4-47.
  16. "قيم زمنية موسعة 64 بت" . شركة آي بي إم . تم الاطلاع عليه بتاريخ 18 أبريل 2021 .
  17. جوناثان دي بوين بولارد. "مفسر الأوامر 32 بت" . في نظام التشغيل OS/2 Warp 4، يمكن أن يعمل كل من التاريخ والوقت إلى ما بعد عام 2000، وحتى إلى ما بعد عام 2038، وفي الواقع حتى عام 2079، وهو الحد الأقصى لساعة الوقت الحقيقي لنظام التشغيل OS/2 Warp 4.
  18. 1 2 3 "خاصية DateTime.Now" . وثائق مايكروسوفت .
  19. 1 2 3 "خاصية DateTime.UtcNow" . وثائق مايكروسوفت .
  20. 1 2 3 "خاصية DateTime.Ticks" . وثائق مايكروسوفت .
  21. "دعم التاريخ والوقت" . شبكة مطوري إمباركاديرو . 2013.
  22. "System.SysUtils.Time" . شبكة مطوري إمباركاديرو . 2013.
  23. "System.SysUtils.GetTime" . شبكة مطوري إمباركاديرو . 2013.
  24. "System.SysUtils.Date" . شبكة مطوري إمباركاديرو2013.
  25. "System.DateUtils.Today" . شبكة مطوري إمباركاديرو . 2013.
  26. "System.DateUtils.Tomorrow" . شبكة مطوري إمباركاديرو . 2013.
  27. "System.DateUtils.Yesterday" . شبكة مطوري إمباركاديرو . 2013.
  28. "System.SysUtils.Now" . شبكة مطوري إمباركاديرو . 2013.
  29. "System.SysUtils.DayOfWeek" . شبكة مطوري إمباركاديرو . 2013.
  30. "System.SysUtils.CurrentYear" . شبكة مطوري إمباركاديرو . 2013.
  31. 1 2 3 "الوقت وتصحيح الوقت في لغة إرلانج" . www.erlang.org .
  32. "XL2000: تختلف التواريخ المبكرة في مكون جداول بيانات Office عن Excel" . دعم Microsoft . 2003. مؤرشف من الأصل في 24 أكتوبر 2007. في مكون جداول بيانات Microsoft Office، تُشير القيمة 0 إلى تاريخ 30 ديسمبر 1899، بينما تُشير القيمة 1 إلى تاريخ 31 ديسمبر 1899. ... في Excel، تُشير القيمة 0 إلى تاريخ 0 يناير 1900، بينما تُشير القيمة 1 إلى تاريخ 1 يناير 1900.
  33. "SYSTEM_CLOCK" . دليل المطورين والمرجع لمترجم Intel Fortran 19.0 . 29 أبريل 2019. تم الاطلاع عليه بتاريخ 23 يوليو 2019 .
  34. "SYSTEM_CLOCK — دالة الوقت" . مُصرّف GNU Fortran . تم الاطلاع عليه بتاريخ 27 أكتوبر 2011 .
  35. 1 2 "طريقة System.nanoTime()" . منصة جافا، الإصدار القياسي 6: مواصفات واجهة برمجة التطبيقات . 2015. تم الاسترجاع في 23 يوليو 2019 .
  36. "Clock.systemUTC() وطرق أخرى" . منصة جافا، الإصدار القياسي 8: مواصفات واجهة برمجة التطبيقات . 2014. تم الاطلاع عليه بتاريخ 15 يناير 2015 .
  37. "JSR-310 نظام وقت جافا" . منصة جافا، الإصدار القياسي 8: مواصفات واجهة برمجة التطبيقات . 2014. تم الاطلاع عليه بتاريخ 15 يناير 2015 .
  38. "التواريخ" . وثائق جوليا 1.12 . تم الاطلاع عليها بتاريخ 26 نوفمبر 2025 .
  39. "مساعدة ماتلاب" .
  40. 1 2 "NSTimeInterval - Foundation" . وثائق مطوري Apple .
  41. دوجلاس فيجشيلد، ر. شيرتلر، وجاركو هيتانيمي، "الوقت::HiRes" . CPAN - شبكة أرشيف بيرل الشاملة . 2011 . تم الاسترجاع 27 أكتوبر 2011 .
  42. "فئة الوقت" .
  43. يوغي (18 أغسطس 2010). "تم إصدار روبي 1.9.2" . الإصدار الجديد 1.9.2 متوافق تقريبًا مع الإصدار 1.9.1، باستثناء هذه التغييرات: ... تمت إعادة برمجة الوقت. تم إصلاح الخلل المتعلق بعام 2038.
  44. "MIT/GNU Scheme 9.2: 15.5 التاريخ والوقت" .
  45. "استخدام الأمر Get-Date" . وثائق مايكروسوفت . 22 أكتوبر 2009. تم الاطلاع عليه بتاريخ 23 يوليو 2019 .
  46. "نصيحة ويندوز باور شيل لهذا الأسبوع - تنسيق التواريخ والأوقات" . وثائق مايكروسوفت . 26 مايو 2010. تم الاطلاع عليه بتاريخ 23 يوليو 2019 .