嵌入式 Linux 涉及兩個獨立的時間體系,理解兩者差異是掌握 RTC 機制的關鍵。
date 指令讀取/設定的即是此值。核心啟動預設初始化為 1970-01-01(Unix Epoch)。若無 RTC 支援,date 設定的時間掉電即失效,重開機回到 1970 年。
最直觀,但無法以獨立驅動模組形式運作;且透過 date 設定時間時,仍需驅動程式同步寫入 RTC 暫存器。
date 讀取 RTC修改 Busybox date.c,使其不讀取核心時間變數,改直接透過驅動存取 RTC。
read_rtc/write_rtc 取代 date不使用核心時間介面,自行撰寫讀寫 RTC 函式,完全解耦系統時間與硬體時間。
實務上可視硬體資源與專案需求彈性選擇,甚至「偷懶」讓系統時間永遠停在 1970 年,完全依賴 RTC。