Windows 8 сообщает НЕПРАВИЛЬНОЕ время безотказной работы (возможно, общее время безотказной работы гибридной загрузки)

5723
Akshat Mittal

Wrong Uptime

Время работы показано на рисунке 6 дней, 1 час, 34 минуты, 22 секунды. Я включил этот ноутбук около 7 минут назад.

Я действительно думаю, что Windows 8 сообщает об общем времени работы в режиме гибридной загрузки. Как я могу получить реальное время? Кроме того, почему Windows сообщает об этом таким образом?

Есть ли способ получить реальное время в GUI (для моего друга n00b) ??


ОБНОВЛЕНИЕ: я отключил гибридную загрузку и перезагрузился. Это теперь приводит правильное время работы. Кроме того, полное отключение с shutdown /s /t 0также работает.

Немного больше объяснений. Мой вопрос заключается в том, как получить фактическое время работы (время, когда мы включили систему), даже если включена гибридная загрузка? Возможно в наличии Windows без какой-либо внешней программы, хотя и не обязательно.


Любое объяснение этому?

9
Можете ли вы уточнить, что вы подразумеваете под "реальным временем"? Что вы делали 7 минут назад точно? David Schwartz 11 лет назад 1
Под реальным временем работы подразумевается фактическое время с момента включения системы. (Это то, что я сделал 7 минут назад, включите ноутбук!) Akshat Mittal 11 лет назад 0
Устаревшее определение для времени безотказной работы - это время работы компьютера с момента инициализации ядра. Поскольку гибридная загрузка является просто особым типом приостановки (ранее она была приостановлена ​​в ОЗУ и в Hibernate), она не считается «закрытием», поскольку используется один и тот же экземпляр ядра Windows. Horn OK Please 11 лет назад 8
@allquixotic Правда, вот почему я подумал, что это будет гибридная загрузка. Akshat Mittal 11 лет назад 0
Я полагаю, у вас нет вопроса. Я хочу спросить, как получить фактическое время работы, даже если включена гибридная загрузка. Я обновляю вопрос. Akshat Mittal 11 лет назад 0

4 ответа на вопрос

4
Horn OK Please

Взяты отсюда :

Проверьте журнал событий Windows.

  1. Нажмите Windows Key+r

  2. Введите в поле, %windir%\system32\eventvwr.msc /s

  3. Нажмите «Создать пользовательский вид ...» с правой стороны.

  4. Установите настройки следующим образом: power-troubleshooter

  5. Нажмите ОК

  6. Когда будет предложено, дайте имени пользовательскому представлению (это может быть что угодно)

  7. Будет отображаться список времени возобновления

Хорошо, это хорошо. Это то, чего я хочу. Что если я n00b ?? Это просто не подходит. Кроме того, это результат последнего ** возобновления ** времени, за время работы мне нужно минус его из моего текущего времени. Есть ли какой-либо прямой метод для времени, может быть, в командной строке? Я голосую, но не принимаю. Akshat Mittal 11 лет назад 0
Для этого AFAIK нет усадочного решения. Вы должны написать программу. Может быть, я.... Horn OK Please 11 лет назад 0
Хорошо, я попробую это позже, может быть. Akshat Mittal 11 лет назад 0
3
asm00

Вы хотите получить готовое решение для определения времени безотказной работы вашей машины с момента последнего гибридного выключения / быстрого запуска, верно?

Вы можете получить эту информацию (предоставленную @allquixotic) из EventLog, используя PowerShell следующим образом:

PS c:\> Write-Host $("" -f ((Get-Date)- (Get-EventLog -LogName system -Source "Microsoft-Windows-Power-Troubleshooter" -Newest 1).TimeGenerated)) 

Чтобы встроить команду powershell в сценарий оболочки Windows, вы можете сделать следующее:

c:\> powershell.exe -nologo -command Write-Host $('Time since last ''Fast Startup'': ' -f ((Get-Date)- (Get-EventLog -LogName system -Source \"Microsoft-Windows-Power-Troubleshooter\" -Newest 1).TimeGenerated)) 

Однако, чтобы заставить это работать из коробки, вы можете вместо этого установить его в постоянную переменную среды:

c:\> setx HardwareUptime "powershell.exe -nologo -command Write-Host $('Uptime since last ''Fast Startup'': ' -f ((Get-Date)- (Get-EventLog -LogName system -Source 'Microsoft-Windows-Power-Troubleshooter' -Newest 1).TimeGenerated))" 

Итак, вы можете заставить его работать, открыв cmdокно и выполнив:

c:\> %HardwareUpTime% 

ОБНОВИТЬ:

Сегодня я обнаружил, что при использовании вышеуказанной записи в журнале событий также будет учитываться «спящий режим» или «режим ожидания», поэтому запуск %HardwareUpTime%покажет вам истекшее время, прошедшее с того момента, как компьютер возобновил режим сна, если вы позволите ему это сделать.

Поэтому вот оно:

setx HardwareUptime "powershell.exe -nologo -command Write-Host $('Uptime since hardware boot: ' -f ((Get-Date)- (Get-EventLog -LogName system -InstanceId 27 -Newest 1).TimeGenerated)); Write-Host $('Uptime since system resumed: ' -f ((Get-Date)- (Get-EventLog -LogName system -Source 'Microsoft-Windows-Power-Troubleshooter' -Newest 1).TimeGenerated));" 

Я немного изменил команду, чтобы она была более понятной и дала вам обе части информации:

  • Прошедшее время с момента загрузки Windows (после гибридного выключения, полного выключения или простой перезагрузки или спящего режима).

  • Прошедшее время с момента возобновления выполнения Windows (после возврата из спящего режима).

ПРИМЕЧАНИЕ. Если система не находилась в режиме ожидания, оба раза будут одинаковыми.

Это кажется мне хорошим решением. Akshat Mittal 10 лет назад 0
1
Kruug

Вы должны отключить гибридную загрузку и перезагрузиться. Должно отображаться правильное время работы. Кроме того, полное отключение с shutdown /s /t 0также работает.

Это именно то, что я написал в ** Обновление ** Akshat Mittal 11 лет назад 0
@AkshatMittal Да, но я подумал, что ты хотел бы принять ответ :) Kruug 11 лет назад 0
Нет. Вопрос: «Как получить реальное время работы в форме GUI?» Akshat Mittal 11 лет назад 0
Ну, во-первых, вам придется отключить «Hybrid-Boot», так как время работы начинает отсчитываться с момента инициализации ядра. Это единственный способ. Kruug 11 лет назад 0
Единственный способ, конечно? Akshat Mittal 11 лет назад 0
0
magicandre1981

это также происходит в более старой версии (XP, Vista, 7) при использовании hibernation. Время сбрасывается только тогда, когда вы это делаете full boot, но быстрый запуск Win8 больше не является полной загрузкой. Это комбинация входа пользователя в систему + гибернация.

Похожие вопросы