Hardware
啟動相同的 Live OS 是否應該在同一台機器上以完全相同的方式執行?
如果我要在具有任何給定規格的電腦上從只讀 DVD 執行 Live OS,我是否應該期望系統以
+ startup time + RAM usage + CPU usage
每次啟動,允許在啟動之間清除 RAM?
由於完全相同的作業系統/發行版,在啟動時具有完全相同的程序將在完全相同的硬體上執行,如果不是,什麼可能會導致任何差異?
從理論上講,電腦是確定性的,因此您每次都期望相同的行為。在實踐中,情況會有所不同:
- 啟動網路所需的時間(協商連接、獲取 DHCP 租約等)取決於對方的響應速度、網路的繁忙程度等。對於無線,無線電雜訊等。
- 從 DVD 讀取所需的時間取決於驅動器找到扇區的速度。測量足夠準確,這取決於驅動器中光碟的初始位置。以及電機旋轉的速度,光學拾音器的跟踪效果等。所有這些肯定都取決於溫度,因此如果讓它冷卻過夜和加熱可能會有所不同。可能還取決於確切的電源電壓,這可能取決於確切的電網電壓。
- DVD 驅動器肯定對振動敏感,因此更多的振動可能會減慢它的速度。有一個著名的影片(使用 HDD,而不是 DVD)“在數據中心大喊大叫”。您可能不會對您的磁碟驅動器大喊大叫,但例如,可能在第二次執行時機器更熱,因此風扇執行得更快。
- 作業系統實際上試圖為加密操作獲得真正的隨機性。有時這是來自專用的專用硬體(最近的電腦都有硬體隨機數生成器);其他時候,例如,計時磁碟讀取所需的確切時間。有時,這種真正的隨機性可能會影響啟動(例如,生成 ssh 伺服器密鑰)。
- 硬體內部有很多難以觀察的狀態。許多設備都有自己的韌體和處理器,執行大量複雜的軟體。他們的響應時間可能取決於該軟體到底在做什麼。例如,執行自檢的磁碟可能會響應較慢。
服務啟動順序的微小變化可能不會改變必須讀取的數據量(如果有的話),但會改變順序。在 DVD 驅動器上尋找時間是可怕的。這意味著順序的細微變化會在時間上產生巨大的影響。