Windows 8 melaporkan uptime yang SALAH (kemungkinan total uptime Hybrid-Boot)

10

Uptime yang salah

Waktu naik yang ditunjukkan dalam gambar adalah 6 Hari, 1 jam, 34 Menit, 22 detik. Saya menyalakan Laptop ini sekitar 7 menit yang lalu.

Saya benar-benar berpikir itu seperti, Windows 8 melaporkan waktu total ketika dalam mode Hybrid-Boot. Bagaimana cara mendapatkan waktu yang sebenarnya ?? Juga, mengapa Windows melaporkannya seperti itu ??

Apakah ada cara untuk mendapatkan waktu sebenarnya dalam cara GUI (untuk teman n00b saya) ??


UPDATE: Saya menonaktifkan Hybrid-Boot dan reboot. Sekarang menghasilkan uptime yang tepat. Juga, melakukan shutdown penuh dengan shutdown /s /t 0juga berfungsi.

Penjelasan lebih lanjut , Pertanyaan saya adalah bagaimana cara mendapatkan waktu aktual (waktu dari saat kami menghidupkan sistem) bahkan jika Hybrid-Boot diaktifkan? Mungkin dalam stok Windows tanpa program eksternal, meskipun tidak perlu.


Ada penjelasan untuk ini?

Akshat Mittal
sumber
1
Bisakah Anda mengklarifikasi apa yang Anda maksud dengan "waktu nyata"? Apa yang Anda lakukan 7 menit yang lalu sebenarnya?
David Schwartz
Waktu nyata artinya waktu aktual dari saat saya menyalakan sistem. (Itu yang saya lakukan 7 menit yang lalu, nyalakan Laptop!)
Akshat Mittal
8
Definisi lama untuk waktu aktif adalah waktu yang dijalankan komputer sejak kernel diinisialisasi sendiri. Karena boot hybrid hanya tipe khusus penangguhan (sebelumnya ada penangguhan untuk RAM dan Hibernate), itu tidak dihitung sebagai "mematikan", karena contoh yang sama dari kernel Windows digunakan.
allquixotic
@allquixotic Benar, Itu sebabnya saya pikir ini akan menjadi waktu Hybrid-Boot.
Akshat Mittal
Saya kira Anda tidak benar-benar mendapat Pertanyaan. Saya ingin bertanya bagaimana cara mendapatkan waktu aktual yang sebenarnya walaupun Hybrid-Boot diaktifkan. Saya memperbarui pertanyaan.
Akshat Mittal

Jawaban:

5

Anda ingin mendapatkan solusi out-of-the-box untuk mengetahui uptime mesin Anda sejak shutdown / fast startup hybrid terakhir terjadi, kan?

Anda bisa mendapatkan informasi ini (seperti yang disediakan oleh @allquixotic) dari EventLog menggunakan PowerShell seperti ini:

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

Untuk menanamkan perintah powershell ke skrip shell Windows Anda bisa melakukan ini sebagai gantinya:

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

Howerver, agar ini berfungsi, Anda bisa mengubahnya menjadi variabel lingkungan permanen seperti ini sebagai gantinya:

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

jadi, Anda bisa membuatnya bekerja dengan membuka cmdjendela dan melakukan:

c:\> %HardwareUpTime%

MEMPERBARUI:

Saya baru saja menemukan hari ini bahwa menggunakan entri di atas dalam log peristiwa juga akan mempertimbangkan mode "Tidur" atau menunda, jadi menjalankan %HardwareUpTime%akan memberi tahu Anda waktu yang telah berlalu sejak PC kembali dari tidur jika Anda membiarkannya.

Karena itu, ini dia:

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

Saya telah memodifikasi perintah ini sedikit lebih eksplisit dan memberi Anda kedua informasi:

  • Waktu yang berlalu sejak Windows di-boot (baik setelah hybrid shutdown, shutdown penuh atau reboot sederhana atau hibernasi).

  • Waktu yang berlalu sejak Windows melanjutkan eksekusi (setelah kembali dari mode tidur).

CATATAN: Jika sistem tidak tidur di antara keduanya, kedua waktu akan sama.

asm00
sumber
Bagi saya ini sepertinya solusi yang bagus.
Akshat Mittal
4

Diambil dari sini :

Periksa Log Aktivitas Windows.

  1. Tekan Windows Key+r

  2. Masukkan di dalam kotak, %windir%\system32\eventvwr.msc /s

  3. Klik "Buat Tampilan Kustom ..." di sebelah kanan.

  4. Atur pengaturan seperti ini: pemecah masalah daya

  5. Klik OK

  6. Saat diminta, beri nama tampilan kustom (ini bisa apa saja yang Anda inginkan)

  7. Ini akan menampilkan daftar waktu resume

allquixotic
sumber
Ok, ini bagus. Agak yang saya inginkan. Bagaimana jika saya seorang n00b ?? Itu tidak cocok. Juga, Ini menghasilkan waktu resume terakhir , untuk waktu yang saya butuhkan untuk dikurangi dari waktu saya saat ini. Apakah ada metode langsung untuk waktu habis, mungkin di command-line ?? Saya memilih, tetapi tidak menerima.
Akshat Mittal
Tidak ada solusi menyusut untuk AFAIK ini. Anda harus menulis sebuah program. Mungkin saya akan ....
allquixotic
Oke, saya akan coba nanti mungkin.
Akshat Mittal
1

Anda harus menonaktifkan Hybrid-Boot dan reboot. Seharusnya menampilkan uptime yang tepat. Juga, melakukan shutdown penuh dengan shutdown /s /t 0juga berfungsi.

Kruug
sumber
Inilah yang saya tulis dalam Pembaruan
Akshat Mittal
@ AkshatMittal Ya, tapi saya pikir Anda ingin menerima jawaban :)
Kruug
Tidak. -_- Pertanyaannya adalah "Bagaimana cara mendapatkan waktu aktual dalam bentuk GUI?"
Akshat Mittal
Yah, pertama-tama Anda harus menonaktifkan Anda Hybrid-Bootsebagai uptime mulai menghitung dari saat kernel diinisialisasi. Itu satu-satunya cara.
Kruug
Satu-satunya cara, tentu?
Akshat Mittal
0

ini juga terjadi di Versi yang lebih lama (XP, Vista, 7) saat Anda gunakan hibernation. Waktu hanya direset ketika Anda melakukan full boot, tetapi startup cepat Win8 tidak lagi menjadi booting penuh. Ini adalah kombinasi dari mencatat pengguna + Hibernasi.

magicandre1981
sumber