Apa perbedaan antara kernel oops dan kernel panik?


51

Saya tahu apa itu panik kernel, tetapi saya juga melihat istilah "kernel oops". Saya selalu berpikir mereka sama, tetapi mungkin tidak. Begitu:

Apa itu kernel oops, dan apa bedanya dengan panik kernel?

Jawaban:


45

" Ups " adalah masalah kernel Linux yang cukup buruk sehingga dapat memengaruhi keandalan sistem.

Beberapa "oops" sudah cukup buruk sehingga kernel memutuskan untuk segera berhenti menjalankannya, jangan sampai ada kehilangan data atau kerusakan lainnya. Ini disebut panik kernel .

Istilah yang terakhir adalah primordial, kembali ke versi paling awal dari leluhur Unix Linux, yang juga mencetak pesan "panik" pada konsol ketika itu terjadi. Fungsi kernel AT&T Unix asli yang menangani kondisi seperti ini disebut panic(). Anda dapat melacaknya kembali melalui rilis kode sumber publik AT&T Unix ke rilis pertama:

  • Versi OpenSolarispanic() dirilis oleh Sun pada tahun 2005 . Ini cukup rumit, dan komentar tajuknya menjelaskan banyak tentang apa yang terjadi dalam situasi panik.

  • The Unix V4 pelaksanaan panic()dirilis pada tahun 1973. Ini pada dasarnya hanya mencetak negara inti dari kernel ke konsol dan berhenti prosesor.

  • Fungsi itu secara substansial tidak berubah di Unix V3 menurut Amit Singh, yang terkenal membedah versi Mac OS X yang lebih lama dan menjelaskannya. Tautan pertama itu membawa Anda ke artikel bagus yang menjelaskan pendekatan macOS untuk implementasi panic(), yang dimulai dengan diskusi historis yang relevan.

  • Proyek " unix-jun72 " untuk menghidupkan kembali Unix V1 dari hasil cetak kode sumber yang dipindai menunjukkan versi perakitan PDP-11 yang sangat awal dari fungsi ini, ditulis kira-kira sebelum Juni 1972, sebelum Unix sepenuhnya ditulis ulang dalam C. Pada titik ini, implementasinya adalah dipangkas menjadi rutin 6-instruksi yang tidak lebih dari me-restart PDP-11.


Kebetulan melihat suntingan Anda (mungkin itu sebabnya saya mendapat lebih banyak upvotes pada pertanyaan?)
Sungguh

14

Ups adalah kesalahan spesifik yang dialami kernel. Ups berisi informasi berikut:

  • Deskripsi singkat
  • Ups #
  • CPU mana yang digunakan, dan kode yang dieksekusi CPU
  • Daftarkan konten

Ups adalah cara untuk men-debug kode kernel, dan ada utilitas untuk membantu dengan itu. Panic kernel berarti sistem tidak dapat pulih dan harus dimulai ulang. Namun, dengan Ups, sistem biasanya dapat melanjutkan. Anda dapat mengkonfigurasi klogd dan syslogd untuk log oops pesan ke file, daripada keluar.

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.