5 votos

En OS X, lo que es un doble de pánico?

Nadie ofrece una forma relativamente sencilla explicación de cómo un doble pánico difiere de otros tipos de kernel panic en un Mac?

Simple, como en ... yo no soy un desarrollador, pero me gustaría entender estas cosas un poco mejor.

De fondo

Un flojo descripción de los pánicos de este tipo:

  • la frase "doble pánico" en la pantalla en el momento de los ataques de pánico

  • si hay una .el pánico de archivo, no incluir esa frase

  • a veces, no existe .el pánico de archivo, lo que podría explicar por qué puedo encontrar sólo se limita a la discusión de doble pánico.

Un OS X 10.8.5 ejemplo

Las siguientes capturas de pantalla también se refieren a un tema en el ZEVO área – voy a continuar con el apoyo de la discusión que hay en su debido momento.

Safari en el frente:

Screenshot of a double panic with Safari in front

En el fondo, la instalación de Ubuntu 12.10 a un VirtualBoxVM:

In the background, installation of Ubuntu 12.10 to a VirtualBoxVM

En el fondo, el Monitor de Actividad:

In the background, Activity Monitor

Se ejecuta en el Dock: Buscador, el Monitor de Actividad, AntiRSI ...

Finder, Activity Monitor, AntiRSI …

... De correo, Safari, Terminal, VirtualBox y VirtualBoxVM:

enter image description here

Nueve de intercambio de archivos:

Nine swap files

VirtualBoxVM la escritura de un disco virtual:

VirtualBoxVM writing to its virtual disk

(Nota: con mi vieja pero hermosa iPhone, yo no podía conseguir mejores fotografías.)


Encuentra

Qué hace que un núcleo trampa 0x00000008 (SCO Unix) (2005?) menciona a:

... el Doble de Pánico, el pánico del kernel mientras causar pánico.

Puede ser causada por los corruptos controlador de código, pero es más probable que sea mala memoria ram (o mal de la CPU, placa base, algo que causa una mala instrucción para llegar a la cpu)

– pero el título no es:

Este es un antiguo post, con poca relevancia en los sistemas modernos.

No podría encontrar un up-to-fecha de autoridad genérica explicación.

Nota

En irc://chat.freenode.net/#macdev en 2013-09-25 en respuesta a una edición anterior de esta pregunta, alguien dijo que es claramente:

  • un ataque de pánico durante un ataque de pánico.

2voto

Hennes Puntos 41345

En los tiempos antiguos (1990-ish) un doble pánico me explico como:
"Un pánico que sucede después de que un pánico anterior se ha producido".

E. g. Algo va mal con ninguna manera de que el sistema operativo para recuperar. No tiene ninguna opción pero para el pánico().

El pánico puede causar a hacer un par de cosas, como escribir un mensaje a la consola, opcionalmente volcado a disco o caer a un depurador. En algún lugar en estos algo va mal activación de un segundo de pánico. Esta segunda pánico se llama un Doble de pánico.

Nota: no estoy seguro de si esto es todavía relevante en OS X.

0voto

bmike Puntos 1637

Este es simplemente un mecanismo de seguridad en el kernel panic código a dejar de verter más información de la pantalla cuando el código en un intento de salvar el sistema de estado también se ha estrellado.

Podemos inspeccionar el código fuente de xnu en OS X 10.8.4 y vea el manejo de:

http://www.opensource.apple.com/source/xnu/xnu-2050.24.15/osfmk/kern/debug.c

restart:
    PANIC_LOCK();

    if (panicstr) {
        if (cpu_number() != paniccpu) {
            PANIC_UNLOCK();
            /*
             * Wait until message has been printed to identify correct
             * cpu that made the first panic.
             */
            while (panicwait)
                continue;
            goto restart;
        } else {
            nestedpanic +=1;
            PANIC_UNLOCK();
            Debugger("double panic");
            printf("double panic:  We are hanging here...\n");
            panic_stop();
            /* NOTREACHED */
        }
    }

Como se puede ver, varias CPU también puede plantear una situación de pánico y tanto las señales tendría que ser resuelto por el mismo código - de modo que, tal vez, más probable vector de ver el doble mensaje de pánico.

También model_dep.c y kmod.c tiene el código útil y comentarios para explicar cómo el sistema intenta evitar la doble entra en pánico justo debido a que se ejecuta en más de una CPU.

En la práctica, el pánico de la información es sospechoso, y el doble de pánico información es doblemente sospechoso, a menos que usted puede reproducir el problema o correlacionar varios de los vertederos.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: