Uma instalação do DOS (por exemplo, MS-DOS 5.0) normalmente incluirá uma instrução em seu CONFIG.SYS, como DEVICE=C:\DOS\HIMEM.SYS.

Ao instalar o Windows 3.1, são os comentários de configuração (REMs) que se alinham e adiciona DEVICE=C:\WINDOWS\HIMEM.SYS em seu lugar.

Presumivelmente, há alguma diferença material entre esses dois arquivos para que a configuração faça esta modificação. O que a versão do Windows faz que a do DOS não?

(Esta pergunta é feita em parte por um Aleph Uma placa de expansão para máquinas Acorn Archimedes, que adiciona suporte de hardware para execução de software de PC sob RISC-OS. Carregar a versão DOS do HIMEM.SYS resulta em um sistema instável, mas a versão do Windows funciona corretamente, mesmo quando executando o DOS. Um fórum de discussão sobre esses sintomas podem ser encontrados aqui .)

Resposta

Diferentes versões de MS-DOS e Windows enviadas com diferentes versões de :

  • Windows / 286 2.10: HIMEM.SYS 1.1 (não é um driver XMS)
  • Windows / 386 2.10, Windows 2.11: HIMEM.SYS 2.04
  • Windows 3.0: HIMEM.SYS 2.60
  • MS-DOS 5.0: HIMEM.SYS 2.77
  • Windows 3.1: HIMEM.SYS 3.07
  • MS- DOS 6.2 e posterior, Windows for Workgroups 3.11: HIMEM.SYS 3.10

(Consulte KB74977 e KB84388 para alguns deles.)

A principal diferença entre a versão do MS-DOS 5.0 de HIMEM.SYS e o Windows 3.1 está na versão principal: HIMEM.SYS 2. x implementa versão 2.0 do XMS , HIMEM.SYS 3. x implementa versão 3.0 .

Não tenho detalhes improvisados de todas as mudanças entre essas versões, mas KB8 4388 menciona que a versão 2.77 fornece acesso apenas a 16 MiB de RAM (XMS 2.0 é limitado a 64 MiB), enquanto 3.07 pode detectar até 4 GiB e fazer uso de até 1 GiB (embora Windows 3. x não posso usar tanto). Esta limitação é, na verdade, uma limitação do Windows 3.0, herdada dos descritores de 24 bits do 286 – o Windows 3.0 só oferece suporte a 16 MiB de RAM e “depende do driver XMS para impor esse limite”. Presumivelmente, existem outras diferenças, incluindo correções de bugs e possivelmente um suporte melhor para determinados sistemas.

Versões mais antigas de HIMEM.SYS foram disponibilizadas com o código-fonte , mas não acho que esse ainda fosse o caso com as versões distribuídas no Windows 3.0 ou posterior. Pode haver uma lista de mudanças em algum lugar da Internet, mas ela me escapa agora. Algumas alterações podem ser obtidas em artigos da base de conhecimento da Microsoft; por exemplo, a versão 2.77 adicionou um switch para reservar memória para a interface de interrupção 0x15 .

Resposta

Não há diferenças, exceto para o número da versão.

Os drivers são vários pacotes distribuídos com DOS, Windows e alguns utilitários de compilador. É possível usar os posteriores e até os anteriores.

Você pode ver nesta tabela que as versões foram geralmente atualizadas com o tempo. Os valores entre (colchetes) são relatados a partir da emulação, os valores entre colchetes [] são versões OEM de período fornecidas com cdrom etc.

====

A versão principal (2, 3) são alguns padrões suportados. Mais recursos foram adicionados ao 3, e é por isso que o EMSMAGIC corrige a versão NT do himem.sys. Os recursos menores são correções de bugs. O PC-DOS 5.0 e o Windows 3.00 têm a versão 2.77, mas nas atualizações (e também no MS-DOS 5.00a), ela foi atualizada para a 2.78.

Os números da versão também têm como objetivo verificar se o programa deve atualizar sua versão. Portanto, se ele estivesse fazendo seu trabalho corretamente, ele não apontaria sua linha para 2.77 se você já tiver 3.10.

É por esta razão que o Windows 9x tem uma subversão de .95. É um número maior que 3,15 (a versão PC-DOS 7). O Windows 9x emula o mouse 8.3, então você não instalaria o 8.2, mas pode instalar o 9.0.

Você encontrará outras versões do himem.sys etc em outro software, as linguagens de programação fornecem versões destes.

 HIMEM EMM386 RAMDRV SMARTDRV MOUSE MSCDEX WINNT (2.77) (8.00) (2.21) MS-DOS 5.00 2.78 4.33 3.06 3.13 8.20 [2.21] Windows 3.11 3.07 4.44 3.06 4.00 8.20 [2.21] MS-DOS 6.00 3.07 4.45 3.06 4.10 8.20 2.22 PC-DOS 6.10 3.09 4.45 3.06 4.10 8.20 PC-DOS 6.30 3.09 4.48 3.06 5.00 9.01 2.23 MS-DOS 6.20 3.10 4.48 3.07 5.00 8.20 2.23 Win/W 3.11 3.10 4.49 3.07 5.00 8.20 2.23 MS-DOS 6.22 3.10 4.49 3.07 5.01 8.20 2.23 PC-DOS 7.00 3.15 4.50 3.10 5.10 8.20 2.25 Windows 95 3.95 4.95 3.06 5.00 (8.30) 2.25 Windows 98 3.95 4.95 3.06 5.02 (8.30) 2.25 Windows ME (3.99) 4.95 3.06 5.02 (8.30) 2.25 PC-DOS 7.10 3.15 2.25 

Existem três versões diferentes do mouse IBM 8.20, o restante mouse.com é idêntico ao as versões de varejo.

Você pode usar esses utilitários com qualquer versão do DOS. Por exemplo, as versões do Win98SE são executadas conforme indicado no PC-DOS 5 ou no MS-DOS 5. O requisito é 3.3 ou posterior.

As diferenças parecem ser correções de bugs e otimização. O Windows NT, por exemplo, usa uma versão emulada de (8.00) aqui.

MSDRIVERS

Desde um estágio bem inicial, percebi que os arquivos A lista acima não era “parte” do DOS ou do Windows, mas sim drivers diferentes distribuídos com o que quer que o pacote fosse lançado.

Nos dias do 286, HIMEM e EMM286 eram frequentemente distribuídos com o cartão , e muitas vezes específico para ele. De forma semelhante, MOUSE, MSCDEX, vieram com esses dispositivos. SMARTDRV e RAMDRIVE eram mais drivers de software, mas eram independentes do dosador.

O HIMEM suporta um grande número de máquinas, como pode ser visto na ajuda sobre o assunto. Tem um lado DOS que suporta uma parte crescente das interfaces XMS 2, x e 3, x, e um lado HW que suporta uma variedade de máquinas anteriores. Falhas e implementações em ambos os lados poderiam dar origem a uma nova versão, embora as versões principais suportassem uma interface mais extensa.

O EMM386 suporta uma gama diferente de interrupções, etc., que a Lotus, Intel e Microsoft concordaram. Como o HIMEM, existem programas que suportam isso e envolve um pouco de fuçar na RAM.

O Windows só usa o HIMEM.SYS 2.77 no lado do DOS e o VMM.vxd cuida da memória nas janelas lateral. Na verdade, o Windows pega toda a memória DOS e o VMM é responsável por alocar bits XMS para o Windows. Este é o mesmo número de versão relatado no Windows 9x, NT e OS / 2.

Lendo a documentação sobre suporte EMM fornecida por empresas como EMSMAGIC e VEMM.SYS, esses programas existem porque EMM não foi realizado , mas preservado para compatibilidade com versões anteriores. O EMSMAGIC chega a estender o suporte XMS no Windows para além dos 2,77, para permitir a execução de programas DOS que precisam dele.

FERRAMENTAS ADICIONAIS

Não sou tanto um programador, mas um “usuário avançado” e sistema operacional / colecionador. Como parte da diversão, é possível ver que existe na caixa de varejo, não apenas DOS, mas uma série de drivers e utilitários (licenciados de terceiros), em pacote. O mesmo DOS de atualização de varejo, por exemplo, é empacotado como “DOS e ferramentas adicionais”.

O preço pago por cópia OEM depende de quantas “ferramentas adicionais” estão incluídas. A IBM negociou um acordo com um de seus OEMs para fornecer DOS sem QBASIC / EDIT a uma taxa reduzida. Da mesma forma, a IBM não comprou as ferramentas adicionais da Microsoft.

Como os drivers e as ferramentas adicionais servem como arquivos de marcador, isso dá uma ideia do que está na distribuição. Por exemplo, o Os arquivos MSD 2.0x foram lançados quando a IBM teve acesso ao código. 2.00 está no Windows, 2.01 está no DOS 6, ambos MS-DOS e o PC-DOS 6.00 beta mais antigo. 2.1x não apareceu até que a IBM não tivesse acesso ao o novo código, isto é, D 6.22 e W 3.11. Da mesma forma, vemos que o PC-DOS 6.30 de 1993-12-31 tem o driver de mouse 9.01 de varejo, mas uma versão OEM um mês depois reverte para a versão 8.20 da IBM.

Outras versões desses drivers aparecem em diferentes pacotes de varejo, junto com o hardware embalado. Mouse 8.20 contém algo como uma dúzia de arquivos extras, incluindo painéis para controlar mouse.ini no DOS e Windows 3.1. Não estão nas versões do sistema operacional.

Comentários

  • Na primeira frase, você diz ” lá não há diferenças “, mas você começa seu último parágrafo dizendo ” As diferenças parecem ser correções de bugs e otimização “. Então, há alguma diferença?
  • A versão principal implementa o padrão e as secundárias são correções de bugs.
  • Eu ‘ m ainda não está claro qual é a sua resposta geral. Como o HIMEM.SYS passou da versão 2.78 para a 3.07 com o Windows 3.1, isso ‘ d seria uma alteração importante da versão. Você pode dar exemplos do que mudou com esta atualização?
  • O primeiro dígito representa o padrão suportado. 3.xx suporta mais funções do que 2.xx. O EmsMagic corrige o nt vers í para permitir funcionalidade extra. ?
  • A maioria das versões do DOS e do Windows vem com a ‘ versão ‘ mais recente, com várias atualizações. O Windows 3.00 veio com o 2.60, mas foi atualizado para o 2.77 no DOS e no Windows 3.0. Este é o valor mais alto de xms usado no ambiente Windows, embora alguns programas DOS usem funções encontradas na versão 3.xx. Algumas versões simplesmente corrigem bugs ou suportam novo hardware, sem qualquer efeito perceptível. Na época em que eles estavam sendo lançados, nós apenas instalamos o que era mais recente, então não ‘ realmente notamos.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *