Мне было интересно, каков «правильный» или «самый важный» способ измерения времени загрузки клиентской машины:
и т.д...
Я обычно использую третий, поскольку он измеряет время до того, как система станет пригодной для использования и полезной. Что вы думаете?
Я бы измерял время от момента завершения POST до момента завершения автоматического входа в систему, когда пользователь может использовать свое наиболее часто используемое приложение (например, Firefox и т. Д.). Ожидание, когда погаснет индикатор жесткого диска, в большинстве случаев бессмысленно при фоновом индексировании и задачах, связанных с упреждающим чтением, ваш жесткий диск может не прекратить работу до тех пор, пока вы не начнете эффективно использовать свой компьютер.
Если вы делаете это в Linux, вы можете попробовать Boot Chart, это поможет вам определить, что так долго загружается.
Главное, чтобы ваша методика измерения была последовательной, чтобы, если вы что-то настраиваете, вы сравнивали яблоки с яблоками.
Я думаю, что время загрузки обычно измеряется, когда вы получаете приглашение входа в систему и можете начать взаимодействовать с операционной системой, поскольку в ОС работают фоновые службы, вы можете взаимодействовать с ней, и если вы запускаете приложения для измерения «полезности», вы вводят переменные, которые производитель ОС не может контролировать (они не создавали firefox или другие приложения, которые вы обычно используете, поэтому это не их вина, если библиотеки и т. д. загружаются медленно).
Если вы оцениваете производительность загрузки ОС, вы измеряете, что ОС занимает во времени, прежде чем она скажет вам «Привет, мир!» ... время приглашения входа в систему, чтобы начать вводить данные.
Я не знаю, есть ли для этого стандарт, но лично я считаю, что моя система «загрузилась», когда я могу открыть меню «Пуск» (или док-станцию) и запустить приложение. До этого момента я действительно не считаю эту систему пригодной для использования.
Тем не менее, я полагаю, что любые производители, которые указывают время загрузки, указывают как можно более короткое время, которое будет связано с запросом входа в систему или появлением рабочего стола, как я могу представить.
Я обычно измеряю и записываю все это, поскольку со временем все они будут меняться в зависимости от системных проблем, процессов запуска, изменений в приложениях, изменений технических характеристик машины, смены моделей приобретенных ПК и т. Д. Запись того, что это было за время при первоначальной сборке, может оказаться весьма полезным.
Когда должен завершиться финальный тест (открыты 3 приложения), может быть полезно не только открыть приложение, но и выполнить простое первое использование (например, браузер загрузит домашнюю страницу, и этого может быть достаточно; текстовый процессор может загрузить тестовый документ (то же самое для каждого теста: уже загружен хотя бы один раз ранее, если на сетевом ресурсе)).
В некоторых случаях стоит более подробный анализ. Поскольку я ориентирован на сеть, я обычно смотрю на тайминги от включения, например:
Обычно это делается, отмечая время включения, а затем просматривая tcpdump или WireShark след впоследствии.
Опять же, запись об этом, возможно, с указанием количества кадров и общего количества байтов, полезна при изменении программного обеспечения и системы и в качестве справки в случае проблем.
В Windows я обычно измеряю, пока не откроется меню «Пуск» или пока вы не получите ответ, щелкнув правой кнопкой мыши на рабочем столе. Другой показатель можно получить, сохранив taskmgr.exe в папке автозагрузки; как только загрузка ЦП упадет до рабочего состояния, машину можно будет считать «загруженной». Многие программы могут загружать после входа в систему (AV, различные агенты или клиенты и т. Д.), И мне кажется, что нет никакого смысла в том, чтобы как можно быстрее вывести вас на рабочий стол, если он полностью непригоден для использования в течение нескольких минут после этого.
Официальное определение Windows для времени загрузки начинается, когда завершается NTLDR или WINLOAD, и ядро запускается с регистрации системного времени и инициализации своих драйверов и заканчивается при первом входе в систему, когда загрузка считается «хорошей».
(В Windows объектом WMI для этого является Win32_OperatingSystem / LastBootUpTime.)
Для любой системы, будь то Windows или нет, вы можете захотеть получить секундомер и посмотреть, сколько времени проходит POST. Остановитесь, когда увидите экран ОС. Это может быть очень долго, если в машине есть один или несколько контроллеров RAID или SCSI. Затем сделайте еще одно измерение с этой точки, пока машина не станет пригодной для использования / вы войдете в систему / все ваши демоны не запустятся.