Qual é o objetivo do rootwait / rootdelay?

20

rootwait e rootdelay são usados em situações em que o sistema de arquivos não está imediatamente disponível, por exemplo, se for detectado assincronamente ou montado via usb. A questão é, deve ser óbvio baseado no root bootarg se for esse o caso ou não, então por que o kernel não pode perceber automaticamente que ele precisa esperar que o sistema de arquivos apareça? Existem algumas restrições técnicas que impedem essa automatização de ser implementada?

    
por EpsilonVector 07.03.2013 / 14:41

1 resposta

16

Por vezes, o sistema operativo não consegue distinguir um periférico que demora a responder a partir de um periférico que não está lá ou é completamente lavado. O exemplo mais óbvio é um sistema de arquivos raiz proveniente da rede (TFTP, NFS) em que um link de rede lento ou um servidor sobrecarregado são difíceis de distinguir de um link de rede separado ou de um servidor danificado. Um tempo limite informa ao kernel quando desistir.

Isso também pode acontecer com discos demorados, matrizes RAID que precisam ser verificadas e assim por diante. rootdelay instrui o kernel a não desistir imediatamente se o dispositivo não estiver disponível. O kernel não pode saber se uma unidade SCSI é um disco local ou algum tipo de compartimento RAID.

rootwait é fornecido para aguardar indefinidamente. Nem sempre é desejável, por exemplo, um sistema pode querer voltar a um sistema de arquivos raiz diferente se o normal demorar muito para responder.

    
por 08.03.2013 / 02:00

Tags