Apakah CPU aktif dalam mode Tidur?


38

Misalkan pada OS Windows, Anda mengaktifkan komputer untuk masuk ke mode tidur dan menyimpannya. Sejauh yang saya tahu tidak akan ada program atau proses yang akan berjalan.

Tetapi apakah prosesor masih berjalan atau aktif di latar belakang dalam beberapa cara dan memanfaatkan daya?

Karena ketika Anda melakukan tindakan apa pun mungkin dengan komputer modern yang menjalankan Windows 7 / 8.1 / 10 Yaitu membuka tutupnya, tekan tombol, menyentuh mouse itu langsung menyala sendiri tanpa harus menekan tombol power. Jadi, apakah itu karena CPU secara aktif menunggu peristiwa-peristiwa tersebut saat dalam kondisi daya rendah?

Jawaban:


56

Apakah CPU aktif dalam mode Tidur?

Tergantung. Ada beberapa status sleep (S1 hingga S4) dan status CPU tidak sama pada semuanya.

  • CPU dihentikan dalam keadaan tidur S1
  • CPU dimatikan dalam kondisi tidur S2 atau lebih besar.

Tidur biasanya adalah kondisi tidur S3 tetapi BIOS terkadang dapat dikonfigurasikan untuk menggunakan kondisi tidur S1 sebagai gantinya (digunakan saat melanjutkan dari S3 tidak bekerja dengan benar).

powercfg -a dapat digunakan untuk melihat status sleep yang didukung oleh PC.

Contoh output:

F:\test>powercfg -a
The following sleep states are available on this system: 
Standby (S3) Hibernate Hybrid Sleep
The following sleep states are not available on this system: 
Standby (S1)
    The system firmware does not support this standby state.
Standby (S2)
    The system firmware does not support this standby state.

Status Tidur Sistem

Negara S1, S2, S3, dan S4 adalah negara tidur. Sistem di salah satu dari kondisi ini tidak melakukan tugas komputasi apa pun dan tampaknya tidak aktif. Tidak seperti sistem dalam keadaan mati (S5), sistem tidur mempertahankan status memori, baik di perangkat keras atau di disk. Sistem operasi tidak perlu di-boot ulang untuk mengembalikan komputer ke kondisi kerja.

Beberapa perangkat dapat membangunkan sistem dari kondisi tidur ketika peristiwa tertentu terjadi, seperti panggilan masuk ke modem. Selain itu, pada beberapa komputer, indikator eksternal memberi tahu pengguna bahwa sistem tersebut hanya tidur.

Dengan setiap kondisi tidur berturut-turut, dari S1 hingga S4, lebih banyak komputer dimatikan. Semua komputer yang memenuhi ACPI mematikan jam prosesor mereka di S1 ​​dan kehilangan konteks perangkat keras sistem di S4 (kecuali file hibernasi ditulis sebelum shutdown), seperti yang tercantum di bagian di bawah ini. Rincian status tidur antara dapat bervariasi tergantung pada bagaimana pabrikan telah merancang mesin. Sebagai contoh, pada beberapa mesin chip tertentu pada motherboard mungkin kehilangan daya pada S3, sementara pada yang lain chip tersebut mempertahankan daya hingga S4. Selain itu, beberapa perangkat mungkin dapat membangunkan sistem hanya dari S1 dan bukan dari status sleep yang lebih dalam.

Status Daya Sistem S1

Status daya sistem S1 adalah kondisi tidur dengan karakteristik berikut:

Konsumsi daya

  • Konsumsi lebih sedikit daripada di S0 dan lebih besar daripada di negara-negara tidur lainnya. Jam prosesor mati dan jam bus dihentikan. Dimulainya kembali perangkat lunak

  • Kontrol restart di mana itu tinggalkan.

Latensi perangkat keras

  • Biasanya tidak lebih dari dua detik.

Konteks perangkat keras sistem

  • Semua konteks dipertahankan dan dikelola oleh perangkat keras.

Status Daya Sistem S2

Status daya sistem S2 mirip dengan S1 kecuali bahwa konteks CPU dan isi cache sistem hilang karena prosesor kehilangan daya. State S2 memiliki karakteristik sebagai berikut:

Konsumsi daya

  • Konsumsi lebih sedikit daripada di negara S1 dan lebih besar daripada di S3. Prosesor tidak aktif. Jam bus dihentikan; beberapa bus mungkin kehilangan daya. Dimulainya kembali perangkat lunak

  • Setelah bangun, kontrol dimulai dari vektor reset prosesor.

Latensi perangkat keras

  • Dua detik atau lebih; lebih besar atau sama dengan latensi untuk S1.

Konteks perangkat keras sistem

  • Konteks CPU dan konten cache sistem hilang.

Status Daya Sistem S3

Status daya sistem S3 adalah kondisi tidur dengan karakteristik berikut:

Konsumsi daya

  • Konsumsi lebih sedikit daripada S2. Prosesor mati dan beberapa chip pada motherboard juga mungkin mati.

Dimulainya kembali perangkat lunak

  • Setelah acara pengaktifan, kontrol dimulai dari vektor reset prosesor.

Latensi perangkat keras

  • Hampir tidak bisa dibedakan dari S2.

Konteks perangkat keras sistem

  • Hanya memori sistem yang dipertahankan. Konteks CPU, konten cache, dan konteks chipset hilang.

Status Daya Sistem S4

Status daya sistem S4, kondisi hibernasi, adalah kondisi tidur bertenaga terendah dan memiliki latensi bangun terlama. Untuk mengurangi konsumsi daya seminimal mungkin, perangkat keras mematikan semua perangkat. Konteks sistem operasi, bagaimanapun, dipertahankan dalam file hibernate (gambar memori) yang ditulis sistem ke disk sebelum memasuki status S4. Setelah dimulai ulang, pemuat membaca file ini dan melompat ke lokasi pre -bernasi sistem sebelumnya.

Jika komputer dalam keadaan S1, S2, atau S3 kehilangan semua AC atau daya baterai, ia kehilangan konteks perangkat keras sistem dan oleh karena itu harus reboot untuk kembali ke S0. Komputer dalam keadaan S4, bagaimanapun, dapat memulai kembali dari lokasi sebelumnya bahkan setelah kehilangan daya baterai atau AC karena konteks sistem operasi dipertahankan dalam file hibernate. Komputer dalam kondisi hibernasi tidak menggunakan daya (dengan kemungkinan pengecualian arus tetesan).

Negara S4 memiliki karakteristik sebagai berikut:

Konsumsi daya

  • Off, kecuali aliran tetesan ke tombol daya dan perangkat serupa. Dimulainya kembali perangkat lunak

  • Sistem restart dari file hibernate yang disimpan. Jika file hibernasi tidak dapat dimuat, reboot diperlukan. Mengkonfigurasi ulang perangkat keras saat sistem dalam status S4 dapat mengakibatkan perubahan yang mencegah file hibernate memuat dengan benar.

Latensi perangkat keras

  • Panjang dan tidak terdefinisi. Hanya interaksi fisik yang mengembalikan sistem ke kondisi kerja. Interaksi seperti itu mungkin termasuk pengguna menekan tombol ON atau, jika perangkat keras yang sesuai ada dan bangun diaktifkan, dering masuk untuk modem atau aktivitas pada LAN. Mesin juga dapat terbangun dari pengatur waktu jika perangkat keras mendukungnya. Konteks perangkat keras sistem

  • Tidak ada yang disimpan dalam perangkat keras. Sistem menulis gambar memori dalam file hibernasi sebelum dimatikan. Ketika sistem operasi dimuat, ia membaca file ini dan melompat ke lokasi sebelumnya.

Sistem Sumber Status Tidur


Bacaan lebih lanjut


powercfg - a can be used...: ada ruang ekstra antara -dan a.
Ruslan

25

Jawaban David yang luar biasa adalah benar untuk mesin tradisional, dan versi Windows sebelum 8. Namun, Windows 8 memperkenalkan mode tidur baru untuk perangkat berdaya rendah (tablet berbasis Atom, dll.) Ini dikenal sebagai InstantGo / Connected Standby . Ini adalah mode "sleep" default ketika Anda mematikan layar pada tablet Windows dengan perangkat keras yang didukung.

Siaga Tersambung tidak menggunakan status tidur ACPI tradisional. Tujuannya adalah untuk menjaga periferal konektivitas tetap aktif , memungkinkan OS untuk menanggapi notifikasi, misalnya email masuk, pesan instan, dll. Selain itu, mesin "bangun" selama beberapa ratus milidetik setiap 30 detik. CPU harus merespons (bangun) lebih cepat daripada dari tidur S3 tradisional.

[Connected Standby membutuhkan] Kemampuan untuk beralih antara mode siaga dan aktif dalam waktu kurang dari 100 milidetik. Mode aktif memungkinkan kode untuk dijalankan pada CPU, tetapi tidak selalu memungkinkan mengakses perangkat penyimpanan atau pengontrol host lain atau periferal. Mode idle dapat berupa kondisi clock-gated atau power-gated, tetapi haruslah status yang memiliki konsumsi daya terendah untuk SoC dan DRAM.

sumber

Perhatikan bahwa ini jauh, jauh lebih cepat daripada dua detik yang ditentukan untuk S1, atau dua detik atau lebih untuk S2 / S3, seperti dalam jawaban David.

Untuk tujuan ini, CPU disimpan dalam keadaan khusus yang disebut Microsoft dengan DRIPS ( Status Runtime Platform Tertunda ) pada perangkat keras yang didukung.

Pada SoC Intel (x86), ini berada di bawah salah satu status S0ix (non-standar) baru , khususnya S0i3. Dalam keadaan ini, CPU tidak mengeksekusi kode apa pun, tetapi SoC secara keseluruhan masih cukup aktif untuk tetap terhubung ke jaringan dan menanggapi peristiwa apa pun.


Sejauh menyangkut ACPI, ini masih dianggap sebagai S0 (aktif). Windows menggunakan ACPI_S0_LOW_POWER_IDLEbendera untuk menentukan apakah DRIPS didukung. The spesifikasi ACPI ( 6.0 ., April 2015, §5.2.9, meja 5-35, pg 127) mendefinisikan bendera ini sebagai:

Seseorang memberi tahu OSPM bahwa platform tersebut mampu mencapai penghematan daya pada S0 yang serupa atau lebih baik daripada yang biasanya dicapai pada S3. Akibatnya, ketika bit ini disetel itu menunjukkan bahwa sistem tidak akan memperoleh manfaat daya dengan melakukan transisi tidur ke S3.

Menurut Microsoft :

Sistem yang mendukung Modern Standby tidak menggunakan S1-S3.


5

Ada banyak jenis mode siaga yang dikelola oleh ACPI https://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface

CPU biasanya berjalan ketika dalam mode siaga, meskipun dengan clock rate rendah - hanya mendengarkan input tertentu dan tidak secara aktif menjalankan proses lainnya. Saya sudah mencoba mengukurnya terlebih dahulu dengan menjalankan procmon dan mengatur laptop untuk tidur, tetapi tidak berjalan sama sekali untuk periode ini.

Ada 4 negara global, G0-G3, di mana G0 Sedang Berlari dan G3 Mekanis mati. Menurut artikel yang ditautkan, G1 substate S2 mematikan CPU dan memindahkan cache ke RAM. RAM adalah yang dinyalakan di semua jenis tidur - dimatikan dalam hibernasi dan dalam shutdown standar. Di sebagian besar kondisi tidur, semua perangkat input eksternal dihidupkan dan akan mengirimkan acara bangun ke komputer. Komputer juga dapat bangun sendiri untuk memproses rutinitas yang memerlukan panggilan bangun.


2
"Memindahkan cache ke RAM" Karena cache, well, cache, bukan hanya membilas garis cache kotor dan mematikannya dengan cukup?
ζ--

CPU aktif, tetapi tidak berjalan.
ilkhd

0

Saya tidak punya masalah teknis untuk ditambahkan ke jawaban yang sudah luar biasa ini. Tetapi cara termudah untuk menguji efek dari mode tidur pada komputer Anda sendiri (saya berasumsi Anda sedang berbicara tentang laptop, karena Anda mengatakan "simpan saja") adalah menempatkan laptop ke mode tidur dan mencabutnya (perhatikan baterai). level pertama). Lanjutkan mesin beberapa jam kemudian dan lihat apakah level baterai Anda telah habis selama waktu itu.

Saya menemukan cara sulit bahwa mode tidur menghabiskan baterai saya pada kecepatan yang adil. Saya menutup penutup laptop saya sebelum perjalanan - berpikir saya telah mengkonfigurasi "tutup tutup" untuk memicu hibernasi dalam pengaturan daya lanjutan - tetapi itu beralih ke mode tidur. Beberapa jam kemudian, mesin tidak mau melanjutkan karena baterainya sudah habis (baterainya sudah tua, lemah).

Sebaliknya, saya dapat melakukan hibernasi laptop saya dan mencabutnya tanpa batas waktu, dan itu tidak akan menghabiskan baterai lebih cepat daripada debit menetes alami yang terjadi selama berhari-hari.

Tetapi seperti yang dikatakan oleh posting lain: YMMV.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.