กลับไปหน้าบทความ

อ่าน 6 นาที

เวลาของระบบ

ในด้าน คอมพิวเตอร์ เวลาของระบบ หมายถึงแนวคิดของระบบคอมพิวเตอร์เกี่ยวกับ จุดเวลา หนึ่ง ๆ

เวลาของระบบ

คำสั่งวันที่ของ Unix

ในด้านคอมพิวเตอร์เวลาของระบบหมายถึงแนวคิดของระบบคอมพิวเตอร์เกี่ยวกับจุดเวลา หนึ่ง ๆ

เวลาของระบบวัดโดยนาฬิการะบบซึ่งโดยทั่วไปแล้วจะใช้การนับจำนวน รอบ ( ticks)ที่ผ่านไปนับตั้งแต่วันเริ่มต้นที่กำหนดไว้โดยพลการ เรียกว่ายุคเริ่มต้น ( epoch ) ตัวอย่างเช่น ระบบ Unixและ ระบบที่สอดคล้องกับ POSIXจะเข้ารหัสเวลาของระบบ (" เวลา Unix ") เป็นจำนวนวินาทีที่ผ่านไปนับตั้งแต่เริ่มต้นยุคเริ่มต้นของ Unixในวันที่ 1 มกราคม 1970 เวลา 00:00:00 UTโดยมีข้อยกเว้นสำหรับวินาทีอธิกสุรทิน ระบบที่ใช้งาน Windows APIเวอร์ชัน 32 บิตและ 64 บิตเช่นWindows 9xและWindows NTจะแสดงเวลาของระบบในรูปแบบSYSTEMTIMEซึ่งแสดงเป็นค่าปี/เดือน/วัน/ชั่วโมง/นาที/วินาที/มิลลิวินาที และFILETIMEซึ่งแสดงเป็นจำนวนนับของหน่วยเวลา 100 นาโนวินาที นับตั้งแต่วันที่ 1 มกราคม ค.ศ. 1601 เวลา 00:00:00 UT ตามปฏิทิน เกร กอ เรียนแบบย้อนหลัง

เวลาของระบบสามารถแปลงเป็นเวลาตามปฏิทินได้ซึ่งเป็นรูปแบบที่เหมาะสมกว่าสำหรับการทำความเข้าใจของมนุษย์ ตัวอย่างเช่นเวลาของระบบ Unix 1,000,000,000วินาทีนับตั้งแต่เริ่มต้นยุค จะแปลงเป็นเวลาตามปฏิทินคือ 9 กันยายน 2544 01:46:40 UT ฟังก์ชันย่อยในไลบรารีที่จัดการการแปลงดังกล่าวอาจจัดการกับการปรับเปลี่ยนสำหรับเขตเวลา เวลาออมแสง (DST) วินาทีอธิกสุรทิน และ การตั้งค่า ภาษา ของผู้ใช้ ด้วย โดยทั่วไปแล้วจะมีฟังก์ชันในไลบรารีที่แปลงเวลาตามปฏิทินเป็นเวลาของระบบให้ใช้งานด้วย

ระบบจำนวนมากที่ปัจจุบันจัดเก็บเวลาของระบบเป็นค่าจำนวนเต็ม 32 บิต จะประสบปัญหาต่างๆ เช่นปัญหาปี 2038 ที่กำลังจะเกิด ขึ้น ค่าเวลาเหล่านี้จะล้น ("หมดบิต") หลังจากสิ้นสุดยุคเวลาของระบบ ทำให้เกิดข้อผิดพลาดทั้งในซอฟต์แวร์และฮาร์ดแวร์ระบบเหล่านี้จะต้องได้รับการแก้ไขในรูปแบบใดรูปแบบหนึ่ง คล้ายกับความพยายามที่จำเป็นในการแก้ปัญหาปี 2000 ก่อนหน้า นี้ นอกจากนี้ นี่อาจเป็นปัญหาที่ใหญ่กว่ามากสำหรับรูปแบบไฟล์ข้อมูล ที่มีอยู่ ซึ่งเก็บการประทับเวลาของระบบเป็นค่า 32 บิต

การวัดเวลาแบบอื่น

เวลาของระบบมีความเกี่ยวข้องอย่างใกล้ชิดกับเวลาของกระบวนการซึ่งเป็นการนับเวลาCPU ทั้งหมดที่ใช้ไปโดย กระบวนการ ที่กำลังทำงานอยู่ อาจแบ่งออกเป็น เวลา CPU ของผู้ใช้และ เวลา CPU ของระบบซึ่งแสดงถึงเวลาที่ใช้ในการประมวลผลโค้ดของผู้ใช้และ โค้ด เคอร์เนล ของระบบ ตามลำดับ เวลาของกระบวนการเป็นการนับเวลาที่ใช้ไปโดยคำสั่ง CPU หรือรอบสัญญาณนาฬิกาและโดยทั่วไปแล้วจะไม่มีความสัมพันธ์โดยตรงกับเวลาจริง (wall time )

ระบบไฟล์จะบันทึกเวลาที่ไฟล์ถูกสร้าง แก้ไข และ/หรือเข้าถึง โดยการจัดเก็บการประทับเวลาไว้ในบล็อกควบคุมไฟล์ (หรือinode ) ของแต่ละไฟล์และไดเร็กทอรี

ประวัติศาสตร์

คอมพิวเตอร์ส่วนบุคคลรุ่นแรกส่วนใหญ่ไม่ได้บันทึกวันที่และเวลา ซึ่งรวมถึงระบบที่ใช้ระบบปฏิบัติการCP/M รวมถึงรุ่นแรกๆ ของ Apple II , BBC MicroและCommodore PETเป็นต้น มีแผงวงจรเสริมที่มี ชิป นาฬิกาแบบเรียลไท ม์พร้อม แบตเตอรี่สำรองในตัวสำหรับIBM PCและXTแต่IBM ATเป็นพีซีเครื่องแรกที่วางจำหน่ายอย่างแพร่หลายซึ่งมาพร้อมกับฮาร์ดแวร์บันทึกวันที่และเวลาในเมนบอร์ดก่อนที่เครือข่ายคอมพิวเตอร์ จะแพร่หลาย ระบบคอมพิวเตอร์ส่วนบุคคลส่วนใหญ่ที่บันทึกเวลาของระบบจะบันทึกเฉพาะเวลาท้องถิ่น เท่านั้น และไม่ได้คำนึงถึงเขตเวลา ที่แตกต่าง กัน

ด้วยเทคโนโลยีในปัจจุบัน คอมพิวเตอร์สมัยใหม่ส่วนใหญ่สามารถติดตามเวลาท้องถิ่นได้ เช่นเดียวกับอุปกรณ์ในครัวเรือนและส่วนบุคคลอื่นๆ อีกมากมาย เช่นเครื่องเล่นวิดีโอ (VCR) , เครื่องบันทึกวิดีโอ ( DVR) , เครื่องรับเคเบิลทีวี , PDA , เพจเจอร์ , โทรศัพท์มือถือ , เครื่องแฟกซ์ , เครื่องตอบรับโทรศัพท์อัตโนมัติ , กล้องถ่ายรูป , กล้องวิดีโอ , เครื่องปรับอากาศส่วนกลางและเตา ไมโครเวฟ

ไมโครคอนโทรลเลอร์ที่ทำงานในระบบฝังตัว (เช่นRaspberry Pi , Arduinoและระบบอื่นๆ ที่คล้ายกัน ) ไม่ได้มีฮาร์ดแวร์ภายในสำหรับติดตามเวลาเสมอไป ระบบควบคุมเหล่านี้จำนวนมากทำงานโดยไม่ทราบเวลาจากภายนอก ระบบที่ต้องการข้อมูลดังกล่าวโดยทั่วไปจะกำหนดเวลาเริ่มต้นใหม่เมื่อรีบูตโดยการรับเวลาปัจจุบันจากแหล่งภายนอก เช่น จากเซิร์ฟเวอร์เวลาหรือนาฬิกาภายนอก หรือโดยการแจ้งให้ผู้ใช้ป้อนเวลาปัจจุบันด้วยตนเอง

การดำเนินการ

โดยทั่วไปแล้ว นาฬิการะบบจะถูกสร้างขึ้นโดยใช้ตัวจับเวลาแบบช่วงเวลาที่ตั้งโปรแกรมได้ซึ่งจะขัดจังหวะการทำงานของ CPU เป็นระยะ จากนั้น CPU จะเริ่มทำงานตามขั้นตอนบริการขัดจังหวะตัวจับเวลา ขั้นตอนนี้โดยทั่วไปจะเพิ่มเวลาหนึ่งติ๊กให้กับนาฬิการะบบ (ตัวนับอย่างง่าย) และจัดการงานบำรุงรักษาเป็นระยะอื่นๆ ( การแย่งการทำงานฯลฯ) ก่อนที่จะกลับไปทำงานที่ CPU กำลังดำเนินการอยู่ก่อนถูกขัดจังหวะ

กำลังดึงเวลาปัจจุบันของระบบ

ตารางต่อไปนี้แสดงวิธีการดึงเวลาปัจจุบันของระบบในระบบปฏิบัติการภาษาโปรแกรมและแอปพลิเคชัน ต่างๆ ค่าที่ทำเครื่องหมาย (*) ไว้จะขึ้นอยู่กับระบบและอาจแตกต่างกันไปในแต่ละการใช้งาน วันที่ทั้งหมดแสดงเป็นวันที่ ตามปฏิทิน เกรกอเรียนหรือ ปฏิทิน เกรกอเรียนย้อนหลัง

ความละเอียดในการวัดเวลาของระบบไม่ได้หมายความว่า การวัดนั้นจะ แม่นยำ เท่ากันเสมอ ไป ตัวอย่างเช่น ระบบอาจแสดงเวลาปัจจุบันเป็นค่าที่วัดเป็นไมโครวินาที แต่ในความเป็นจริงอาจสามารถแยกแยะจังหวะการทำงานของนาฬิกาแต่ละจังหวะได้ด้วยความถี่เพียง 100 เฮิรตซ์ (10 มิลลิวินาที) เท่านั้น

ระบบปฏิบัติการ

ระบบปฏิบัติการ คำสั่งหรือฟังก์ชัน ปณิธานยุคหรือช่วงเวลา
แอนดรอยด์java.lang.System.currentTimeMillis()1 มิลลิวินาที 1 มกราคม 2513
ไบโอส (สำหรับIBM PC ) INT 1Ah, AH=00h[ 1 ]54.9254 มิลลิวินาที18.2065 เฮิรตซ์ เที่ยงคืนของวันนี้
INT 1Ah, AH=02h [ 2 ]1 วินาที เที่ยงคืนของวันนี้
INT 1Ah, AH=04h [ 3 ]1 วัน 1 มกราคม 1980 ถึง 31 ธันวาคม 1999 หรือ 31 ธันวาคม 2079 (ขึ้นอยู่กับระบบ)
ซีพี/เอ็ม พลัสบล็อกควบคุมระบบ: [ 4 ]scb$base+58h , จำนวนวันนับตั้งแต่ 31 ธันวาคม พ.ศ. 2520 scb$base+5Ah, ชั่วโมง (BCD) scb$base+5Bh, นาที (BCD) scb$base+5Ch, วินาที (BCD) 1 วินาที 31 ธันวาคม 2520 ถึง 5 มิถุนายน 2500
ฟังก์ชัน BDOS 69h> ( T_GET): [ 5 ]word , จำนวนวันนับตั้งแต่ 1 มกราคม 1978 byte, ชั่วโมง (BCD) byte, นาที (BCD) byte, วินาที (BCD)
ระบบปฏิบัติการ DOS ( Microsoft ) C:\>DATEC:\>TIME10 มิลลิวินาที 1 มกราคม 2523 ถึง 31 ธันวาคม 2542
INT 21h, AH=2Ch เวลาของระบบ[ 6 ]INT 21h , AH=2Ah วันที่ของระบบ[ 7 ]
macOS , iOS , iPadOS , tvOS , watchOS , VisionOS ( แอปเปิ้ล ) CFAbsoluteTimeGetCurrent()[ 8 ]< 1 มิลลิวินาที[ 9 ] [หมายเหตุ 1 ]1 มกราคม พ.ศ. 2544 ±10,000 ปี[ 9 ] [หมายเหตุ 1 ]
โอเพ่นวีเอ็มเอสSYS$GETTIM()100 ns [ 10 ]17 พฤศจิกายน พ.ศ. 2391ถึง 31 กรกฎาคม 31,086 [ 11 ]
gettimeofday()1 μs [ 12 ]1 มกราคม พ.ศ. 2513 ถึง 7 กุมภาพันธ์ พ.ศ. 2549 [ 13 ]
clock_gettime()1 ns [ 12 ]
z/OSSTCK[ 14 ] : 7–187 2 −12 μs 244.14 ps [ 14 ] : 4–45, 4–46 1 มกราคม พ.ศ. 2443 ถึง 17 กันยายน พ.ศ. 2585 [ 15 ]
STCKE1 มกราคม พ.ศ. 2443 ถึง ค.ศ. 36,765 [ 16 ]
Unix , POSIX (ดูเพิ่มเติมที่ ฟังก์ชันวันที่และเวลาในภาษา C ) $ datetime()1 วินาที (*) 32 บิตtime_t: 1 มกราคม 1970 ถึง19 มกราคม 2038 64 บิตtime_t: 1 มกราคม 1970 ถึง 4 ธันวาคม ค.ศ. 292,277,026,596
gettimeofday()1 ไมโครวินาที
clock_gettime()1 นาโนวินาที
โอเอส/2DosGetDateTime()10 มิลลิวินาที 1 มกราคม 2523 ถึง 31 ธันวาคม 2522 [ 17 ]
วินโดวส์GetSystemTime()1 มิลลิวินาที 1 มกราคม ค.ศ. 1601 ถึง 14 กันยายน ค.ศ. 30828 เวลา 02:48:05.4775807
GetSystemTimeAsFileTime()100 นาโนวินาที
GetSystemTimePreciseAsFileTime()

ภาษาโปรแกรมและแอปพลิเคชัน

ภาษา/แอปพลิเคชัน ฟังก์ชันหรือตัวแปร ปณิธานยุคหรือช่วงเวลา
อาดาAda.Calendar.Clock100 ไมโครวินาที ถึง20 มิลลิวินาที (*) 1 มกราคม 2444 ถึง 31 ธันวาคม 2542 (*)
AWKsystime()1 วินาที (*)
เบสิก , เบสิกแท้DATE, DATE$TIME,TIME$1 วินาที (*)
ธุรกิจพื้นฐาน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 ns [ 20 ]1 มกราคม 0001 ถึง 31 ธันวาคม 9999
ซีไอเอสASKTIME1 มิลลิวินาที 1 มกราคม พ.ศ. 2443
โคบอลFUNCTION CURRENT-DATE1 วินาที 1 มกราคม ค.ศ. 1601
ลิสปาร์กทั่วไป(get-universal-time)1 วินาที 1 มกราคม พ.ศ. 2443
เดลฟี ( บอร์แลนด์ ) datetime1 มิลลิวินาที(เลขทศนิยม) 1 มกราคม พ.ศ. 2443
เดลฟี ( เอ็มบาร์คาเดโร เทคโนโลยีส์ ) [ 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 ]1 วินาที 0/0/0000 0:0:0:000 ถึง12/31/9999 23:59:59:000 [sic]
System.SysUtils.DayOfWeek[ 29 ]1 วัน 1 ถึง 7
System.SysUtils.CurrentYear[ 30 ]1 ปี (*)
อีแมคส์ ลิสป์(current-time)1 ไมโครวินาที (*) 1 มกราคม 2513
เออร์ลังerlang:system_time()[ 31 ]os:system_time()ขึ้นอยู่กับ ระบบปฏิบัติการเช่น บนLinux 1ns [ 31 ]1 มกราคม พ.ศ. 2513 [ 31 ]
เอ็กเซลdate()? 0 มกราคม พ.ศ. 2443 [ 32 ]
ฟอร์ทรานDATE_AND_TIMESYSTEM_CLOCK(*) [ 33 ]

[ 34 ]

1 มกราคม 2513
CPU_TIME1 ไมโครวินาที
ไปtime.Now()1 นาโนวินาที 1 มกราคม 0001
ฮัสเคลล์Time.getClockTime1 ps (*) 1 มกราคม 2513 (*)
Data.Time.getCurrentTime1 ps (*) 17 พฤศจิกายน พ.ศ. 2491 (*)
ชวาjava.util.Date()System.currentTimeMillis()1 มิลลิวินาที 1 มกราคม 2513
System.nanoTime()[ 35 ]1 นาโนวินาที โดยพลการ[ 35 ]
Clock.systemUTC()[ 36 ]1 นาโนวินาที โดยพลการ[ 37 ]
JavaScript , TypeScript(new Date()).getTime()Date.now()1 มิลลิวินาที 1 มกราคม 2513
จูเลียDates.now()1 มิลลิวินาที 1 มกราคม 0000 [ 38 ]
แมทแล็บnow1 วินาที 0 มกราคม 0000 [ 39 ]
คางทูม$H( ย่อมาจาก$HOROLOG ) 1 วินาที 31 ธันวาคม พ.ศ. 2483
แล็บวิวTick Count1 มิลลิวินาที 00:00:00.000 1 มกราคม 1904
Get Date/Time in Seconds1 มิลลิวินาที 00:00:00.000 1 มกราคม 1904
ออบเจกทีฟซี[NSDate timeIntervalSinceReferenceDate]< 1 มิลลิวินาที[ 40 ]1 มกราคม พ.ศ. 2544 ±10,000 ปี[ 40 ]
โอแคมล์Unix.time()1 วินาที 1 มกราคม 2513
Unix.gettimeofday()1 ไมโครวินาที
ปาสคาลขยายGetTimeStamp()1 วินาที (*)
เทอร์โบ ปาสคาลGetTime()GetDate()10 มิลลิวินาที (*)
เพิร์ลtime()1 วินาที 1 มกราคม 2513
Time::HiRes::time[ 41 ]1 ไมโครวินาที
พีพีtime()mktime()1 วินาที 1 มกราคม 2513
microtime()1 ไมโครวินาที
เพียวเบสิกDate()1 วินาที 1 มกราคม 2513 ถึง 19 มกราคม 2571
ไพธอนdatetime.now().timestamp()1 ไมโครวินาที (*) 1 มกราคม 2513
เกมอาร์เคCURRENT(DATE), %DATECURRENT(TIME),%TIME1 วินาที 1 มกราคม 0001 ถึง 31 ธันวาคม 9999
CURRENT(TIMESTAMP),%TIMESTAMP1 ไมโครวินาที
ทับทิมTime.now()[ 42 ]1 ไมโครวินาที (*) 1 มกราคม พ.ศ. 2513 (ถึง 19 มกราคม พ.ศ. 2571 ก่อน Ruby 1.9.2 [ 43 ] )
โครงการ(get-universal-time)[ 44 ]1 วินาที 1 มกราคม พ.ศ. 2443
การสนทนาเล็กๆ น้อยๆTime microsecondClock(วิชวลเวิร์คส์)1 วินาที(ANSI) 1 ไมโครวินาที(VisualWorks) 1 วินาที(Squeak)1 มกราคม พ.ศ. 2444 (*)
Time totalSeconds(เสียงแหลม)
SystemClock ticksNowSinceSystemClockEpoch(โครโนส)
คำสั่ง SQLCURDATE()หรือCURRENT DATECURTIME()หรือCURRENT TIMEGETDATE()หรือGETUTCDATE()NOW()หรือCURRENT TIMESTAMPSYSDATE()3 มิลลิวินาที 1 มกราคม 1753 ถึง 31 ธันวาคม 9999 (*)
1 นาที 1 มกราคม 1900 ถึง 6 มิถุนายน 2079
มาตรฐาน MLTime.now()1 ไมโครวินาที (*) 1 มกราคม 2513 (*)
ทีซีแอล[clock seconds]1 วินาที 1 มกราคม 2513
[clock milliseconds]1 มิลลิวินาที
[clock microseconds]1 ไมโครวินาที
[clock clicks]1 ไมโครวินาที (*) (*)
วินโดวส์ พาวเวอร์เชลล์Get-Date[ 45 ] [ 46 ]100 ns [ 20 ]1 มกราคม 0001 ถึง 31 ธันวาคม 9999
[DateTime]::Now[ 18 ] [DateTime]::UtcNow[ 19 ]
Visual Basic .NETSystem.DateTime.Now[ 18 ] System.DateTime.UtcNow[ 19 ]100 ns [ 20 ]1 มกราคม 0001 ถึง 31 ธันวาคม 9999

ดูเพิ่มเติม

หมายเหตุ

  1. ^ a bเอกสารสำหรับนักพัฒนาของ Apple ไม่ได้ระบุความแม่นยำและช่วงเวลาของ CFAbsoluteTime/CFTimeInterval อย่างชัดเจน ยกเว้นในเอกสาร CFRunLoopTimerCreate ซึ่งกล่าวถึงความแม่นยำ 'ไม่เกินมิลลิวินาที' อย่างไรก็ตาม ประเภทที่คล้ายกันอย่างNSTimeIntervalดูเหมือนจะใช้แทนกันได้ และมีการระบุความแม่นยำและช่วงเวลาไว้แล้ว
  2. ^ a b c dไลบรารีมาตรฐานของภาษา Cไม่ได้ระบุความละเอียด ยุคสมัย ช่วง หรือชนิดข้อมูลเฉพาะใดๆ สำหรับค่าเวลาของระบบไลบรารี C++ ครอบคลุมไลบรารี C ดังนั้นจึงใช้การใช้งานเวลาของระบบแบบเดียวกับภาษา C
  • วันที่สำคัญและมีนัยสำคัญ , เจ.อาร์. สต็อกตัน (สืบค้นเมื่อ 3 ธันวาคม 2015)
  • ไลบรารี Boost สำหรับแสดงวันที่และเวลา (C++)
  • ไลบรารี Boost Chrono (C++)
  • คลังข้อมูลวันที่/เวลาของ Chronos (Smalltalk)
  • Joda Time , ไลบรารีวันที่/เวลาของ Joda (Java)
  • โครงการ Perl DateTime ถูกเก็บถาวรเมื่อวันที่ 19 กุมภาพันธ์ 2009 ที่Wayback Machine (Perl)
  • วันที่: เอกสารประกอบไลบรารีมาตรฐานของ Ruby (Ruby)
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=System_time&oldid=1358686940 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ เวลาของระบบ

ในด้าน คอมพิวเตอร์ เวลาของระบบ หมายถึงแนวคิดของระบบคอมพิวเตอร์เกี่ยวกับ จุดเวลา หนึ่ง ๆ

การวัดเวลาแบบอื่น

เวลาของระบบมีความเกี่ยวข้องอย่างใกล้ชิดกับ เวลาของกระบวนการ ซึ่งเป็นการนับเวลา CPU ทั้งหมดที่ใช้ไปโดย กระบวนการ ที่กำลังทำงานอยู่ อาจแบ่งออกเป็น เวลา CPU ของผู้ใช้ และ เวลา CPU ของระบบ ซึ่งแสดงถึงเวลาที่ใช้ในการประมวลผลโค้ดของผู้ใช้และ โค้ด เคอร์เนล ของระบบ...

ประวัติศาสตร์

คอมพิวเตอร์ส่วนบุคคล รุ่นแรกส่วนใหญ่ไม่ได้บันทึกวันที่และเวลา ซึ่งรวมถึงระบบที่ใช้ระบบปฏิบัติการ CP/M รวมถึงรุ่นแรกๆ ของ Apple II , BBC Micro และ Commodore PET เป็นต้น มี แผงวงจรเสริม ที่มี ชิป นาฬิกาแบบเรียลไท ม์พร้อม แบตเตอรี่สำรอง ในตัวสำหรับ IBM PC และ XT...

การดำเนินการ

โดยทั่วไปแล้ว นาฬิการะบบจะถูกสร้างขึ้นโดยใช้ ตัวจับเวลาแบบช่วงเวลาที่ตั้งโปรแกรมได้ ซึ่งจะขัดจังหวะการทำงานของ CPU เป็นระยะ จากนั้น CPU จะเริ่มทำงานตามขั้นตอนบริการขัดจังหวะตัวจับเวลา ขั้นตอนนี้โดยทั่วไปจะเพิ่มเวลาหนึ่งติ๊กให้กับนาฬิการะบบ (ตัวนับอย่างง่าย)...