Ketika komputer "crash", itu mungkin, misalnya, disebabkan oleh kegagalan daya "tiba-tiba" (dalam hal tidak ada yang dapat dilakukan), itu mungkin karena semacam peristiwa internal yang buruk (misalnya, tabel halaman rusak) yang sama mencegah melakukan apa pun, atau mungkin karena beberapa kondisi yang hanya mencegah "operasi lebih lanjut" entah bagaimana - mungkin proses baru tidak dapat dimulai, mungkin tampilan tidak dapat diperbarui, mungkin sistem hanya kehabisan penyimpanan.
Dalam situasi terakhir ini OS masih dapat berfungsi, dalam batas, dan setidaknya dapat menyelesaikan operasi disk yang sedang berlangsung, menutup file dengan baik, dll. Selain itu, jika sedikit lebih banyak fungsi yang mungkin, OS mungkin dapat memberi tahu berbagai aplikasi proses untuk mematikan diri dengan bersih.
Tetapi bahkan jika sistem turun "keras", sistem secara keseluruhan dan aplikasi individu mungkin telah mempertahankan sistem "jurnal" dan / atau "pos pemeriksaan" untuk memungkinkan keadaan sistem secara keseluruhan dan aplikasi individual dapat dipulihkan ke titik "atom", di mana semuanya "konsisten secara internal", dan di mana minimum data penting telah hilang.
Ini semua tidak dilakukan dengan mekanisme tunggal, tetapi dengan lapisan fungsionalitas pada tingkat sistem dan aplikasi.
Berkenaan dengan kegagalan daya secara khusus, mungkin ada atau tidak ada pemberitahuan terlebih dahulu, dan peringatan "muka" mungkin sebagian kecil atau (dengan UPS atau baterai laptop gagal) beberapa menit. Apa yang bisa dilakukan tergantung pada jumlah peringatan.
Dalam kebanyakan kasus, dengan sistem desktop tanpa UPS, ada waktu terbaik untuk "menghentikan" operasi disk sehingga tidak ada disk di tengah penulisan ketika daya akhirnya menghilang. Ini mencegah menghasilkan bad sector pada disk. Dulu, ketika RAM jauh lebih kecil, bahwa mungkin ada cukup waktu (dengan kapasitor besar di catu daya, atau bahkan, anehnya menggunakan energi yang tersimpan dalam rotor disk drive untuk menghasilkan listrik) untuk menulis RAM ke disk sebelum daya turun, tetapi kemungkinan itu hampir hilang ketika RAM tumbuh lebih besar dari 100 juta.
[Dan perhatikan bahwa, di masa lalu, ketika memori dibuat dengan magnet "core", RAM secara inheren dipertahankan ketika daya hilang (meskipun kata tertentu sedang dibaca / ditulis ketika listrik gagal mungkin rusak). Ini membuatnya lebih mudah bagi sistem lama untuk pulih dari kegagalan daya.]
Namun, dengan sesuatu yang menyerupai UPS (yang dapat memberi daya mulai dari beberapa menit hingga beberapa jam) ada beberapa opsi lagi. Salah satunya adalah cukup mematikan sistem, seolah-olah Anda meminta "matikan". Ini menyebabkan setiap aplikasi berakhir dengan sendirinya, dan kemudian sistem secara keseluruhan menulis tabel permanen dan dimatikan. Ini bisa memakan waktu lama (karena saya yakin banyak dari Anda telah memperhatikan). Tetapi juga dimungkinkan untuk menggunakan strategi "hibernate", di mana RAM ditulis ke disk sebagai satu blok, dan kemudian sistem dimatikan. Dalam skenario "hibernate", pada memulihkan daya, RAM dibaca kembali ke tempat persisnya itu ditulis, beberapa bit di sana-sini meliuk-liuk, dan kemudian eksekusi dilanjutkan di mana ia tinggalkan.
Pada beberapa sistem "besi besar" yang lebih tua, strategi semi-hibernate digunakan untuk melakukan shutdown darurat: Memori akan dituliskan seperti di atas, tetapi ketika daya dipulihkan dan memori dibaca, maka shutdown standar akan terjadi. Ini dilakukan karena beberapa bit dari status sistem (khususnya di I / O controller) tidak dapat disimpan / dikembalikan dengan andal untuk memungkinkan operasi yang berkelanjutan.