Uma ACPI com falha / incorretamente implementada / não suportada pode ser um dos motivos.
precisa saber é o seguinte
Eu acho que o OP significa por que um comando é haltimplementado se nunca for usado sem -p. Por que alguém interromperia um sistema se não pretendia cortar o poder? Portanto, por que não implementar haltpara cortar a energia?
Kinnectus
1
@BigChris Para "Why", suponho que seja porque "Halt" foi criado antes da introdução da ACPI / amplamente disponível, e a ação Halt padrão provavelmente foi deixada como está para compatibilidade com versões anteriores.
precisa saber é o seguinte
Respostas:
13
Existem boas razões para interromper um sistema sem desligar a energia do hardware?
Sim. Talvez eu queira apertar o botão de reinicialização e reiniciá-lo, em vez de pressionar o botão liga / desliga para desligar.
Quero dizer, usando o haltcomando sem usar o -pswitch.
No 4.2BSD, o haltcomando não tinha um -pcomutador. Isso aponta para uma resposta maior, aqui: nem todo hardware funciona como um PC; mesmo os PCs nem sempre funcionam da maneira que funcionam agora.
Não foi (e às vezes ainda não é) o caso de as Unidades Centrais de Processamento terem controle sobre a fonte de alimentação ou podem redefinir completamente a placa principal e os periféricos para os mesmos estados que na inicialização. Em alguns sistemas, a segunda parte de "desligar e desligar" ou "desligar e redefinir" foi uma ação física , realizada pelo operador pressionando um botão de energia (adequado) ou um botão de redefinição no painel frontal da máquina. Nenhuma quantidade de opções de linha de comando poderia alcançá-lo. No lado do software, a máquina simplesmente desligou e girou em um loop infinito sem fazer nada. (Algumas máquinas saem para um programa de monitor de ROM.)
Os BSDs modernos observam que halta -popção de seu comando apenas desliga a energia "se puder" (FreeBSD) e não o fará onde "o sistema não suporta o desligamento do software" (NetBSD). O haltsyscomando SCO UNIX (equivalente ao System 5 halt) também não tinha uma -popção e sua página de manual explica que ele interrompe o sistema para que o operador possa, por outros meios, desligá-lo ou reiniciá-lo.
Atualmente, existem aqueles que, como o pessoal do sistema, sustentam que o haltcomando é de fato obsoleto. Eles manteriam que um realmente não tem que usar o haltcomando em tudo e que existe em sistemas de "apenas para compatibilidade" (como as páginas de manual Systemd tê-lo). Isso torna a questão de quais opções dar a ele discutível ( systemctl haltnão ter uma -popção).
Também demonstra a posição em que estamos agora em que esse conjunto de comandos ficou tão enfeitado com opções de compatibilidade que permite que as pessoas dêem aos computadores instruções auto-contraditórias como reboot --halte poweroff --reboot. Notei isso na página de manual para o Noshhalt , fasthalt, reboot, fastboot, e poweroffcomandos. ☺
> "Talvez eu queira apertar o botão de reinicialização e reiniciá-lo, em vez de pressionar o botão liga / desliga para desligar." Qual o motivo disso? Para reduzir o desgaste do hardware? Caso contrário, por que não fazer apenas uma reinicialização em vez de uma parada?
halt
implementado se nunca for usado sem-p
. Por que alguém interromperia um sistema se não pretendia cortar o poder? Portanto, por que não implementarhalt
para cortar a energia?Respostas:
Sim. Talvez eu queira apertar o botão de reinicialização e reiniciá-lo, em vez de pressionar o botão liga / desliga para desligar.
No 4.2BSD, o
halt
comando não tinha um-p
comutador. Isso aponta para uma resposta maior, aqui: nem todo hardware funciona como um PC; mesmo os PCs nem sempre funcionam da maneira que funcionam agora.Não foi (e às vezes ainda não é) o caso de as Unidades Centrais de Processamento terem controle sobre a fonte de alimentação ou podem redefinir completamente a placa principal e os periféricos para os mesmos estados que na inicialização. Em alguns sistemas, a segunda parte de "desligar e desligar" ou "desligar e redefinir" foi uma ação física , realizada pelo operador pressionando um botão de energia (adequado) ou um botão de redefinição no painel frontal da máquina. Nenhuma quantidade de opções de linha de comando poderia alcançá-lo. No lado do software, a máquina simplesmente desligou e girou em um loop infinito sem fazer nada. (Algumas máquinas saem para um programa de monitor de ROM.)
Os BSDs modernos observam que
halt
a-p
opção de seu comando apenas desliga a energia "se puder" (FreeBSD) e não o fará onde "o sistema não suporta o desligamento do software" (NetBSD). Ohaltsys
comando SCO UNIX (equivalente ao System 5halt
) também não tinha uma-p
opção e sua página de manual explica que ele interrompe o sistema para que o operador possa, por outros meios, desligá-lo ou reiniciá-lo.Atualmente, existem aqueles que, como o pessoal do sistema, sustentam que o
halt
comando é de fato obsoleto. Eles manteriam que um realmente não tem que usar ohalt
comando em tudo e que existe em sistemas de "apenas para compatibilidade" (como as páginas de manual Systemd tê-lo). Isso torna a questão de quais opções dar a ele discutível (systemctl halt
não ter uma-p
opção).Também demonstra a posição em que estamos agora em que esse conjunto de comandos ficou tão enfeitado com opções de compatibilidade que permite que as pessoas dêem aos computadores instruções auto-contraditórias como
reboot --halt
epoweroff --reboot
. Notei isso na página de manual para o Noshhalt
,fasthalt
,reboot
,fastboot
, epoweroff
comandos. ☺Leitura adicional
halt
. 11/05/1982. 4.2BSD manual.haltsys
. 03/06/2005. Manual do SCO OpenServer.haltsys
. Guia nosh . Programas.fastpowercycle
. Guia nosh . Programas.shutdown
. Guia nosh . Programas.halt
. páginas de manual do systemd. freedesktop.org.fonte