Respostas:
Antes de tudo, USB significa Universal Serial Bus. É um padrão para um barramento de controle e dados , assim como PCIe, PCI, EISA e ISA são todos os barramentos. USB não é um dispositivo, como uma unidade de CD ou DVD. (As unidades ópticas geralmente usam barramentos SATA ou IDE com o protocolo ATA.) Quando você usa ou se refere a USB, provavelmente existe um dispositivo conectado (também conhecido como dispositivo USB) ao qual você está se referindo.
Nesse caso, você provavelmente está se referindo a unidades flash USB, que essencialmente emulam uma unidade de disco rígido típica. Se o BIOS do PC suportar a inicialização a partir de um dispositivo USB, isso significa que o BIOS possui firmware incorporado que inclui uma pilha de protocolos USB e pode controlar um dispositivo de destino, como uma unidade flash, no Universal Serial Bus. Depois que o protocolo de handshake USB é estabelecido entre o host USB (o PC que precisa inicializar) e o dispositivo USB (a unidade flash), o controle e o mecanismo de dados fornecidos pelo USB podem ser abstraídos e as camadas superiores do código de inicialização do BIOS pode tratar a unidade flash como um disco rígido. Ou seja, o primeiro setor da "unidade de disco" precisa ser lido para obter seu MBR (Master Boot Record).
Os discos ópticos não estão em conformidade com o layout do disco rígido do PC (não há MBR no setor zero). De fato, existem vários formatos para discos ópticos, mas o layout de dados em uso comum com PCs é o formato ISO 9660 para CDs. Os requisitos para inicializar a partir de CD / DVD estão detalhados na norma ISO 9660 .
A taxa de transferência de dados e a diferença de capacidade física entre diferentes dispositivos de inicialização se tornam essencialmente irrelevantes se o BIOS suportar o dispositivo. As características de E / S de cada dispositivo de inicialização suportado devem ser consideradas e são tratadas no código de driver de dispositivo de baixo nível do BIOS. Observe que a maioria dos PCs também pode inicializar a partir da placa de interface de rede Ethernet (NIC), e essa interface é muito mais diferente do que CD / DVD versus HDD. No entanto, a abordagem em camadas da implementação de software delega toda a manipulação de E / S e protocolo de baixo nível para as camadas inferiores, e o BIOS pode prosseguir para carregar e executar o próximo estágio do carregador de inicialização. Observe que algumas diferenças de dispositivo estão parametrizadas. Ou seja, o número de cilindros, cabeçotes, setores / faixa e tamanho do setor do dispositivo não é codificado nos drivers de dispositivo,
... gravar a imagem do dvd (na unidade flash USB) não parece funcionar.
A diferença entre esses dois layouts de mídia pode ser dissolvida combinando os dois em um arquivo de imagem mesclado que pode ser copiado para uma unidade de CD / DVD ou HDD / flash. Uma imagem ISO (para gravar em um CD ou DVD para criar um disco inicializável) pode ser modificada para copiar diretamente para uma unidade flash USB ou HDD para produzir uma imagem ISO / IMG híbrida :
O formato ISO / IMG híbrido é uma modificação do formato ISO padrão para tornar a imagem compatível com as expectativas de inicialização do disco rígido
Uma imagem ISO padrão geralmente inclui o carregador de inicialização ISOLINUX, carregado pelo BIOS usando o padrão de inicialização El Torito. A imagem híbrida substitui os primeiros 512 bytes do formato ISO (que são todos os zeros binários) por um MBR (Master Boot Record) de disco rígido do PC contendo: A imagem do carregador do estágio 1 do GRUB versão 0.97 e uma tabela de partição com 1 partição que termina no final da imagem híbrida. O restante da imagem ISO não é modificado.
Setores adicionais são adicionados no final da imagem ISO.
O DVD possui propriedades mecânicas próprias e tamanho de bloco de 2K. O mecanismo de inicialização joliet mais antigo envolveu a adição de um disquete extra do carregador de inicialização de 2,88 MB para instalar o CD (como o NT4) Em teoria, você pode ter a mesma imagem inicializável usando o novo protocolo de inicialização de CD / DVD (sem imagem de disquete) e pendrive (e cartão CF, disco IDE) etc etc). A maioria das imagens de fornecedores funciona assim, mas alguns BIOS são programados para preferir um ou outro mecanismo de inicialização.
Na verdade, teoricamente não há diferença, um DVD ou um flash terá o mesmo mecanismo de inicialização, a diferença será a taxa de transferência do DVD para um dispositivo flash (o USB 2.0 tem uma taxa de transferência maior que um DVD). O que talvez esteja causando o seu problema ao inicializar a partir de flash ou DVD é que o flash não possui uma partição inicializável ativa. Em uma imagem de DVD, você não precisa configurá-la como inicializável se o ISO / IMG que você escreveu nela já foi configurado para ser inicializável (em um flash, você precisará configurá-lo manualmente). Dê uma olhada aqui para saber como criar um dispositivo inicializável em flash.
O mecanismo de inicialização não é diferente porque da mesma forma que o USB é inicializado como o DVD, mas há muita diferença entre a velocidade de leitura / gravação do DVD v / s USB.
A especificação USB 2.0 tem uma velocidade máxima de 480 Megabits por segundo. Então você está falando 60 megabytes por segundo.
DVD - Vamos com um leitor de DVD de 16X = 21 megabytes por segundo.
Mas as velocidades de CD / DVD são todas as velocidades máximas, o que significa que eles não estarão transferindo dados nessa velocidade até que a parte externa do disco seja alcançada em muitos casos. Você pode ter um CD Reader que começa em 24x no início do disco e só atinge 40x quando chega perto do fim. O mesmo tipo de acordo com os leitores de DVD. Pode começar em 8x e depois passar para 16.
Você tornou o disco USB inicializável com alguns truques, porque normalmente eles não são inicializáveis por padrão, enquanto que quando você grava uma imagem iso / nrg em DVD com os arquivos de instalação do Windows ou Ubuntu, ela se torna automaticamente inicializável.
O WintoFlash é uma ferramenta que torna o dispositivo USB inicializável. Também existem outros softwares e você também pode fazer o boot com o cmd no Windows.
isohybrid
.