OS X “espiral da morte”? Não é possível iniciar novos processos, eventualmente se torna inutilizável

3

Eu tenho essa situação estranha aparecendo de vez em quando.

Meu sistema OS X (Snow Leopard) simplesmente deixará de ser capaz de fazer qualquer coisa "nova". Ele não pode iniciar nenhum novo processo (como, por exemplo, um novo aplicativo ou um novo processo bash) que não foi carregado antes . Coisas que já estão rodando podem ser capazes de iniciar novamente ... mas se ele estiver fora do cache (talvez?) Ele apenas fica parado pendurado.

Eventualmente o sistema inteiro degrada, aplicativo por aplicativo, processo por processo, até o ponto em que nada responde (incluindo o Finder, UI, etc.) e eu tenho que fazer um ciclo de energia. / p>

Alguma ideia? Quando isso acontece, não consigo nem iniciar o Activity Monitor ou top se eles ainda não estiverem em execução, por isso é difícil determinar.

    
por John Cromartie 15.07.2011 / 16:00

3 respostas

1

O que o log do console, o log do sistema e o log do kernel dizem? Melhor ainda, use sudo syslog | more para despejar todo o seu banco de dados de mensagens do syslog (aviso: muita saída), e procure por quaisquer mensagens do tempo em que o problema estava acontecendo.

Procure também em / Library / Logs / DiagnosticReports para falhas ou spindumps a partir do momento em que o problema estava acontecendo.

Considere atualizar sua pergunta com esta saída ou vinculá-la em Pastebin.com ou gist.github.com. Talvez possamos ajudá-lo a descobrir isso.

Você não tem "Mozy" ou "Hands Off!" instalado, você? Recentemente, ajudei a resolver alguns problemas com sintomas semelhantes, que se resumiam a comportamentos inadequados desses pacotes:

Obtendo a mensagem do console : ipc_kmsg_copyout_header: não pode aumentar o espaço do usuário ipc. Algum guru do kernel do Mac OS X aqui?

Algumas aplicações do Mac falha frequentemente, com "__THE_SYSTEM_HAS_NO_PORT_SETS_AVAILABLE__" no backtrace

    
por 15.07.2011 / 21:21
1

Isso parece muito com o problema que eu estava tendo com o Spiff em: Obtendo a mensagem do console: ipc_kmsg_copyout_header: não pode aumentar o espaço do ipc do usuário. Algum guru do kernel do Mac OS X aqui?

Compartilharei um script de shell que escrevi para ajudar a rastrear qual processo pode estar usando as portas ipc. Ele registra a saída superior formatada em um arquivo periodicamente e você pode verificá-lo depois que o computador travar e reinicializar. Desculpe, é feio

#!/usr/bin/env bash
# port_profile.sh [output_file_path]
#   use top to profile port usage for processes every 10 minutes (600s)
args=("$@")
sleep_time=600
if [ "$#" -eq 0 ]
    then
        outfile="port_profile.txt"
    else
        outfile="$@"
fi
(while true; do
    data='top -o ports -stats ports,command,pid,msgsent,msgrecv,user,uid, -l 1 | grep -v 'CPU\|Disks\|LoadAvg\|Load Avg\|MemRegions\|Networks\|PhysMem\|Procs\|Processes\|SharedLibs\|Threads\|Time\|VirtMem\|VM\|Swap\|Purgeable''
    while read -r line; do
        echo -e "$line"
    done <<< "$data"
    echo -e ""
    sleep $sleep_time
done) >> $outfile &
    
por 29.07.2011 / 22:31
0

Descobri, enviando o comando "lsof" para um arquivo de texto para listar arquivos e soquetes abertos de todos os processos em execução, que um aplicativo estava abrindo cargas de sockets de comunicação interprocessos e o sistema operacional atingiu seu limite:

lsof > ~/lsof.txt

Muitos processos terão um grande número de arquivos e sockets abertos, mas o aplicativo 3connect parece ter muito mais do que qualquer outro, então eu o deletei. Desde então, a máquina está bem.

    
por 08.12.2013 / 15:39

Tags