Cobra_1_Stas
21-03-2009, 17:27
Есть скрипт который проверяет какой процессор установлен на компе и исходя из этого прописывает в boot.ini строчку /Kernel=dualkrnl.exe либо /Kernel=singkrnl.exe
cmdow @ /HID
@echo off
FOR /F "tokens=3 delims= " %%A IN (`REG QUERY "HKLM\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v NUMBER_OF_PROCESSORS`) DO SET NUMBER_OF_PROCESSORS=%%A
if %NUMBER_OF_PROCESSORS%==2 goto DUAL
REM ----For Single proc
bootcfg /RAW "/Kernel=singkrnl.exe" /A /ID 1
goto End
:DUAL
REM ----For Multiprocess/Hyperthread proc
bootcfg /RAW "/Kernel=dualkrnl.exe" /A /ID 1
:End
bootcfg /Default /ID 1
На QUAD-овых процессорах эта схема не срабатывает, он почему то пишет "/Kernel=singkrnl.exe" вместо dual...
Как изменить этот скрипт чтобы срабатывало и на новых компах?
П.С. И ещё вопрос в тему, винХР видит больше чем 3гб памяти? Если нет, то зачем файлы ntkrnlpa.exe и ntkrpamp.exe? (http://www.oszone.net/3149)
cmdow @ /HID
@echo off
FOR /F "tokens=3 delims= " %%A IN (`REG QUERY "HKLM\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v NUMBER_OF_PROCESSORS`) DO SET NUMBER_OF_PROCESSORS=%%A
if %NUMBER_OF_PROCESSORS%==2 goto DUAL
REM ----For Single proc
bootcfg /RAW "/Kernel=singkrnl.exe" /A /ID 1
goto End
:DUAL
REM ----For Multiprocess/Hyperthread proc
bootcfg /RAW "/Kernel=dualkrnl.exe" /A /ID 1
:End
bootcfg /Default /ID 1
На QUAD-овых процессорах эта схема не срабатывает, он почему то пишет "/Kernel=singkrnl.exe" вместо dual...
Как изменить этот скрипт чтобы срабатывало и на новых компах?
П.С. И ещё вопрос в тему, винХР видит больше чем 3гб памяти? Если нет, то зачем файлы ntkrnlpa.exe и ntkrpamp.exe? (http://www.oszone.net/3149)