Да, время, затрачиваемое на ввод данных, является частью реального времени (третья запись в вашем выводе).
Простая демонстрация:
$ time(sleep 5 ; echo hi | read)
real 0m5.005s
user 0m0.000s
sys 0m0.004s
Здесь echo hi
напечатает hi
на выводе std, а read
прочитает его. Я добавил 5-секундную задержку, прежде чем произойдет это написание и чтение. И я рассчитал все это время.
Как видно, реальное время составляет около 5 секунд, что означает, что оно учитывает время, которое команда read
потратила на чтение ввода.
Просто чтобы завершить, пользовательское время - это время, которое ЦП затрачивает на выполнение инструкций в нашей программе, таких как циклы, условные выражения.
А системное время - это время, затрачиваемое ЦП на выполнение системных вызовов. В нашем примере мы видим 4 мсек времени sys, потому что в эту команду вовлечено много вызовов sys, например read
, write
и т. Д.