Time (Unix)

(rozdíl) ← Starší revize | zobrazit aktuální verzi (rozdíl) | Novější revize → (rozdíl)

time je příkaz k určení zdrojů využitých jiným programem. Implicitně vypíše dobu trvání programu. Používá se v Unix a operačních systémech unixového typu (například Linux, FreeBSD, Mac OS a další)

Použití

Pro spuštění stačí jednoduše před libovolný příkaz zapsat time, jako například:

Až se příkaz dokončí, time vypíše, jak dlouho trvalo provedení příkazu ls z hlediska uživatelského času procesoru, systémového času procesoru a v reálném čase. Výstupní formát se liší mezi různými verzemi příkazu. Některé vracejí další údaje, jako v tomto příkladu:

time(1) může existovat jako samostatný program (například GNU time), nebo jako shell builtin (např. v tcsh nebo zsh).

Uživatelský čas a systémový čas

Celkový čas procesoru (CPU time) je kombinace množství času procesoru nebo procesorů strávených provedením nějaké akce a množství času, které strávil vykonáváním systémových volání pro jádra.

Reálný čas a čas procesoru

Termín "reálný čas" (real time) v tomto kontextu odkazuje na uplynulý wall-clock time, jako kdybychom jej měřili pomocí stopek. Celkový čas procesoru (uživatelský + systémový čas) může být větší nebo menší než je tato hodnota. Je to dáno tím, že program může strávit nějaký čas čekáním a ne průběhem (ať už v uživatelském režimu nebo režimu systému). Proto bude čas procesoru menší než uplynulý reálný čas. Dalším důvodem rozdílu může být paralelní běh procesů na vícejádrových systémech. Zde bude čas procesoru větší než realný čas.