Instalacja DOS (np. MS-DOS 5.0) będzie zazwyczaj zawierać instrukcję w swoim CONFIG.SYS, taką jak DEVICE=C:\DOS\HIMEM.SYS.

Podczas instalowania systemu Windows 3.1 wyprowadzane są komentarze instalacyjne (REM) i zamiast nich dodaje DEVICE=C:\WINDOWS\HIMEM.SYS.

Przypuszczalnie istnieje pewna istotna różnica między tymi dwoma plikami, jeśli chodzi o konfigurację do wprowadzenia tej modyfikacji. Co robi wersja dla systemu Windows, czego nie robi wersja DOS?

(To pytanie jest częściowo zadawane przez Aleph Jedna karta rozszerzeń dla maszyn Acorn Archimedes, która dodaje obsługę sprzętową do uruchamiania oprogramowania PC pod RISC-OS. Załadowanie wersji DOS HIMEM.SYS powoduje niestabilność systemu, ale wersja Windows działa poprawnie, nawet podczas uruchamiania DOS. Dyskusja na forum o tych objawach można znaleźć tutaj .)

Odpowiedź

Różne wersje MS-DOS i Windows dostarczane z różnymi wersjami :

  • Windows / 286 2.10: HIMEM.SYS 1.1 (nie sterownik 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 i nowsze, Windows for Workgroups 3.11: HIMEM.SYS 3.10

(patrz KB74977 i KB84388 w przypadku niektórych z nich.)

Główna różnica między wersją HIMEM.SYS i Windows 3.1 jest w głównej wersji: HIMEM.SYS 2. x implementuje wersja 2.0 XMS , HIMEM.SYS 3. x implementuje wersję 3.0 .

Nie mam szczegółowych informacji na temat wszystkich zmian między tymi wersjami, ale KB8 4388 wspomina, że wersja 2.77 zapewnia dostęp tylko do 16 MiB pamięci RAM (XMS 2.0 jest ograniczony do 64 MiB), podczas gdy 3.07 może wykryć do 4GiB i wykorzystać do 1GiB (chociaż Windows 3. x nie mogą używać tak dużo). To ograniczenie jest w rzeczywistości ograniczeniem systemu Windows 3.0, odziedziczonym z 24-bitowych deskryptorów 286 – system Windows 3.0 obsługuje tylko 16 MB pamięci RAM i „polega na sterowniku XMS, aby wymusić ten limit”. Prawdopodobnie istnieją inne różnice, w tym poprawki błędów i prawdopodobnie lepsza obsługa niektórych systemów.

Udostępniono starsze wersje HIMEM.SYS z kodem źródłowym , ale nie sądzę, aby tak było w przypadku wersji dostarczanych w systemie Windows 3.0 lub nowszym. Gdzieś w Internecie może znajdować się lista zmian, ale w tej chwili wymyka mi się ona. Niektóre zmiany można znaleźć w artykułach bazy wiedzy Microsoft; na przykład wersja 2.77 dodała przełącznik rezerwujący pamięć dla interfejsu przerwania 0x15 .

Odpowiedź

Nie ma żadnych różnic, poza numerem wersji.

Sterowniki to różne pakiety dystrybuowane z DOS, Windows i niektórymi narzędziami kompilującymi. Możliwe jest użycie późniejszych, a nawet wcześniejszych.

Z tej tabeli widać, że wersje były generalnie aktualizowane w czasie. Wartości w (nawiasach) są podawane z emulacji, wartości w nawiasach kwadratowych [] to okresowe wersje OEM dostarczane z cdrom itp.

====

Wersja główna (2, 3) są obsługiwane przez niektóre standardy. Do wersji 3 dodano więcej funkcji, dlatego EMSMAGIC wprowadza poprawki do himem.sys w wersji NT. Drobne funkcje to poprawki błędów. PC-DOS 5.0 i Windows 3.00 mają wersję 2.77, ale w aktualizacjach do tej (a także w MS-DOS 5.00a) została ona zaktualizowana do 2.78.

Numery wersji mają również na celu sprawdzenie, czy program powinien zaktualizować twoją wersję. Więc jeśli wykonywał swoją pracę poprawnie, nie wskazywałby twojej linii himem na 2.77, jeśli masz już 3.10.

Z tego powodu Windows 9x ma podwersję .95. Jest to liczba wyższa niż nawet 3.15 (wersja na PC-DOS 7). Windows 9x emuluje mysz 8.3, więc nie zainstalowałbyś 8.2, ale możesz zainstalować 9.0.

Znajdziesz inne wersje himem.sys etc w innym oprogramowaniu, języki programowania dostarczają ich wersje.

 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 

Istnieją trzy różne wersje myszy IBM 8.20, pozostałe mouse.com są identyczne z wersje detaliczne.

Możesz używać tych narzędzi z dowolną wersją DOS. Na przykład wersje Win98SE działają jak podano w PC-DOS 5 lub MS-DOS 5. Wymaganiem jest 3.3 lub nowsza.

Różnice wydają się być poprawkami błędów i optymalizacją.Na przykład Windows NT używa tutaj emulowanej wersji (8.00).

MSDRIVERS

Na bardzo wczesnym etapie doszedłem do wniosku, że pliki lista powyżej nie była „częścią” DOS lub Windows, ale raczej różne sterowniki rozprowadzane z tym, co pakiet wychodził.

W czasach 286 HIMEM i EMM286 były często rozprowadzane z kartą i często specyficzne dla niego. W podobny sposób z tymi urządzeniami pojawiły się MOUSE, MSCDEX. SMARTDRV i RAMDRIVE były bardziej programowymi sterownikami, ale były niezależne od dos.

HIMEM obsługuje całkiem sporą liczbę maszyn, jak widać w pomocy na ten temat. Ma stronę DOS, która obsługuje rosnącą część interfejsów XMS 2, x i 3, x oraz stronę HW, która obsługuje szereg poprzednich maszyn. Błędy i implementacje po obu stronach mogą spowodować powstanie nowej wersji, chociaż główne wersje obsługiwały bardziej rozbudowany interfejs.

EMM386 obsługuje inny zakres przerwań itp., Na co zgodziły się Lotus, Intel i Microsoft. Podobnie jak HIMEM, istnieją programy, które to obsługują i wymaga trochę szperania w pamięci RAM.

Windows używa tylko HIMEM.SYS 2.77 po stronie DOS, a VMM.vxd zajmuje się pamięcią w systemie Windows bok. W efekcie Windows przechwytuje całą pamięć DOS, a VMM jest odpowiedzialny za przydzielanie bitów XMS do okien. Jest to ten sam numer wersji zgłoszony dla Windows 9x, NT i OS / 2.

Czytając dokumentację dotyczącą obsługi EMM, dostarczoną przez EMSMAGIC i VEMM.SYS, te programy istnieją, ponieważ EMM nie został przeniesiony , ale zachowane dla wstecznej kompatybilności. EMSMAGIC posuwa się nawet tak daleko, że rozszerza obsługę XMS w Windows starszych niż 2,77, aby umożliwić uruchamianie programów DOS, które tego potrzebują.

DODATKOWE NARZĘDZIA

Nie jestem programistą, ale „zaawansowanym użytkownikiem” i kolekcjonerem systemu operacyjnego. W ramach zabawy można zobaczyć, że w pudełku detalicznym znajduje się nie tylko DOS, ale szereg sterowników i narzędzi (licencjonowanych od stron trzecich), jako pakiet. Na przykład ta sama detaliczna aktualizacja DOS jest pakowana jako „DOS i dodatkowe narzędzia”.

Cena płacona za kopię OEM zależy od tego, ile „dodatkowych narzędzi” zawiera. IBM wynegocjował umowę z jednym ze swoich producentów OEM, aby dostarczyć DOS bez QBASIC / EDIT po obniżonej cenie. Na tej samej podstawie IBM nie kupił dodatkowych narzędzi Microsoftu.

Ponieważ sterowniki i dodatkowe narzędzia służą jako pliki znaczników, daje to pewien wgląd w to, co jest w dystrybucji. Na przykład Pliki MSD 2.0x zostały wydane, gdy IBM miał dostęp do kodu. 2.00 jest w systemie Windows, 2.01 w DOS 6, zarówno MS-DOS, jak i najstarsza wersja beta PC-DOS 6.00. 2.1x pojawiło się dopiero po tym, jak IBM nie miał dostępu do nowy kod, tj. D 6.22 i W 3.11. Podobnie widzimy, że PC-DOS 6.30 z 1993-12-31 ma detaliczny sterownik myszy 9.01, ale wersja OEM miesiąc później powraca do wersji 8.20 IBM.

Inne wersje tych sterowników pojawiają się w różnych pakietach detalicznych, razem ze sprzętem w pudełku. Mouse 8.20 zawiera około tuzina dodatkowych plików, w tym panele do sterowania mouse.ini pod DOS-em i Windows 3.1. Nie ma ich w wersjach systemu operacyjnego.

Komentarze

  • W swoim pierwszym zdaniu mówisz " nie ma różnic ", ale ostatni akapit zaczynasz od powiedzenia " Różnice wydają się być poprawkami błędów i optymalizacją ". Czy są jakieś różnice?
  • Główna wersja implementuje standard, a mniejsze to poprawki błędów.
  • I ' m nadal nie jest jasne, jaka jest twoja ogólna odpowiedź. Ponieważ program HIMEM.SYS przeszedł z wersji 2.78 do 3.07 w systemie Windows 3.1, ' będzie znaczącą zmianą wersji. Czy możesz podać przykłady tego, co zmieniło się po tej aktualizacji?
  • Pierwsza cyfra oznacza obsługiwany standard. 3.xx obsługuje więcej funkcji niż 2.xx. EmsMagic wprowadza poprawki nt vers í, aby umożliwić dodatkowe funkcje. ?
  • Większość wersji DOS i Windows była dostarczana z ' najnowszą ' wersją, różnie zaktualizowaną. Windows 3.00 został dostarczony z wersją 2.60, ale jest on zaktualizowany do wersji 2.77 w DOS i Windows 3.0. Jest to najwyższa wartość xms używanego w środowisku Windows, chociaż niektóre programy dos używają funkcji znajdujących się w wersji 3.xx. Niektóre wersje po prostu poprawiają błędy lub obsługują nowy sprzęt, bez zauważalnego efektu. W czasie, gdy były one wypuszczane, po prostu zainstalowaliśmy wszystko, co było najnowsze, więc nie ' naprawdę nie zauważyliśmy.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *