Solucionar mac apps à moda antiga com sinais posix

Em Activity Monitor há uma opção de menu enigmática para Enviar sinal para o Processo

. Você já se perguntou o que era? Se você selecioná-lo, você verá termos obscuros como SIGINT e SIGHUP, que não é exatamente esclarecer as coisas. Assim que são exatamente estes sinais?

Esses sinais são um resultado da fundação Unix no coração do MacOS. Terminal tem algum destes sinais embutidos: quando você bate Ctrl + C para parar um comando de execução, você está enviando o processo SIGINT para interromper e parar o comando actualmente em execução. Eles foram uma das primeiras formas aplicativos podem se comunicar uns com os outros e fazem parte dos padrões (POSIX) velhos “Portable Operating System Interface”.Mac OS X Yosemite, a partir da perspectiva de um usuário do LinuxMac OS X Yosemite, a partir da perspectiva de um usuário do LinuxMac OS X é usado como a criança do poster para uma interface limpa e elegante. Como um escritor Linux, que é meu dever fazer comparações entre distros Linux, mas também contra a concorrência.consulte Mais informação

Embora seja bom para entender os conceitos básicos de como o sistema funciona, você também pode usar esses sinais para capturar informações sobre misbehaving apps.

O que é POSIX?

POSIX é o padrão base para sistemas operacionais Unix e Unix-like. Entre esses sistemas compatíveis é MacOS, o que foi feito para ser Unix compatível. Na sua essência é Darwin, um núcleo Unix com raízes que remontam ao NeXTSTEP. Isso em si foi um fork do BSD, um dos Unix variantes originais.

POSIX garante todos esses sistemas operacionais lidar com código de maneiras esperados, permitindo a desenvolvedores para saber o seu código é verdadeiramente portátil. Quando eles enviam um desses sinais em outra máquina para um processo, os dados que recebem de volta é em um formato que pode antecipar e processo. Esta é uma simplificação grosseira de cerca de 40 anos de história de computação, mas essa é a idéia geral.

Ao se comunicar com os daemons mais básicos que compõem a base Unix de MacOS, esses sinais são a melhor. Daemons são os processos de fundo que correm o essencial do seu computador - ou na linguagem comum MacOS, serviços. o infame discoveryd é um exemplo. Este foi o OS X Yosemite 10.10 substituto para mDNSResponder, outro serviço responsabilizado pelos problemas de rede em que atualização.

Video: Part 1 - Jane Eyre Audiobook by Charlotte Bronte (Chs 01-06)

Linha de comando
Crédito da imagem: Dominik Rusiecki via Freeimages

Dependendo da forma que um aplicativo é projetado para receber sinais, você pode enviar um sinal para parar um aplicativo para criar o que é chamado um core dump. dumps de núcleo conter todos os dados atuais sobre um programa em execução. Estes são essenciais para aplicativos de solução de problemas que quebram constantemente. No Mac, estes despejar no formato de arquivo Mach-O, que você pode ler no ambiente de desenvolvimento MacOS chamada Xcode. A maioria dos usuários provavelmente não vai fazer muito com isso, mas se você está frustrado por um problema de aplicativo que pode ser útil para enviar para um desenvolvedor de apoio.

Há um outro pouco de computação clássica mostrando suas raízes aqui. O formato de arquivo Mach-O compartilha seu nome com o microkernel Mach. Junto com BSD, isso faz parte das raízes do MacOS, e os dois são parte do kernel fundacional, XNU. Mach não é tão estratificadas como BSD, por isso não obter um lote de imprensa, mas é parte do que regular o sistema operacional da Apple para além de outras variantes do Unix.

Então, como posso usá-los?

Nós temos tudo estado lá antes: você receber um atualização para uma aplicação, ou baixar um novo aplicativo, e ele trava toda vez que você abri-lo. Você abre Forçar Encerrar no menu Apple e ver a aplicação está aparecendo como Não está respondendo. Pior ainda, é algum processo de fundo arrastando seu sistema para baixo.Como instalar & Remover Software Mac: 5 métodos fáceisComo instalar & Remover Software Mac: 5 métodos fáceisComutada para um Mac e chegar ao confronto com o básico? Querendo saber como instalar o software a partir da linha de comando? Tem aplicativos antigos do Windows que você simplesmente tem de executar no seu computador Apple?consulte Mais informação

Video: Problemas con Apps | OS X | iSBL49



Activity monitor

Aberto Activity monitor e clique no processo que não está respondendo. Então vá para o Visão menu e selecione Enviar sinal para processar. Um menu pop-up e permitir-lhe escolher qual sinal para enviar para o processo de seleccionar o sinal e pressione Enviar.

Se você preferir o Terminal, você vai usar um comando que você já está familiarizado. o matar comando é usado para parar um processo. Se você adicionar -s você pode adicionar um número para enviar um sinal para o processo que você está matando. Aqui está uma lista do número de comandos comuns lista no matar página do homem:4 coisas legais que você pode fazer com o Mac Terminal4 coisas legais que você pode fazer com o Mac TerminalO Terminal é o Mac OS X análogo prompt de comando do Windows ou CMD. É uma ferramenta, como você provavelmente já sabe, que lhe permite controlar o computador usando comandos de texto, ao contrário ...consulte Mais informação

  • 1 - HUP (desligar)
  • 2 - INT (interrupção)
  • 3 - Sair (sair)
  • 6 - ABRT (abortar)
  • 9 - Mate (não-recepcionável, morte não ignorada)
  • 15 - TERMO (software de sinal de terminação)

Há alguns outros sinais de que pode enviar como bem, estes são apenas os mais comuns. Há uma lista completa de códigos disponíveis aqui.

Quando posso usá-los?

Agora que você sabe o que fazer com os sinais POSIX, você pode usá-los para parar seus processos pendurados limpa. Para ser justo, você não está indo para usar esses códigos a cada dia. Ao trabalhar com um desenvolvedor em um app falha estranha, ou ajudando o seu beta sysadmin testar aplicativos in-house da sua empresa, estes códigos podem ajudar a obter as informações que precisam.

Video: Part 3 - Persuasion Audiobook by Jane Austen (Chs 19-24)

Se o aplicativo é codificado para criar essas lixeiras que você vai encontrá-los no diretório / núcleos tornando este um diretório fácil olhar para quando a obtenção de dados para um bater ou pendurados aplicação. Você pode conferir aqui e ver o que lixeiras estão no diretório usando o ls -a comando. Isto irá mostrar todos os arquivos no diretório que você pode, então, copiá-los para a música diretório mais acessível o comando mv destino filename.

Dentro terminal use o comando cd / núcleos para mudar para o diretório, em seguida, ls -a para listar o conteúdo. Para mover um arquivo para a pasta Documents simplesmente usar mv nome de arquivo / Users / nome de usuário / Documentos (substituindo nome do arquivo e nome de usuário).

mackeyboard
Crédito da imagem: Erika Varga via Freeimages

Se você é um longo tempo de usuário Unix que se mudou para o Mac, que outras características pouco conhecidas estão lá fora? Se você estiver interessado em verificar um projeto que utiliza apenas a base de código aberto do MacOS confira PureDarwin. Deixe-nos saber como isso funcionou nos comentários. Nós também gostaríamos de ouvir quando os sinais POSIX resolveu um problema persistente com o seu Mac.

Video: como configurar antena nanostation para pegar sinal wifi

Você já usou sinais POSIX para solução de problemas antes?


Artigos relacionados