Спасибо! Но что-то не получается. На запрос: ------------ EAX=03h cpuid Получил такой результат: -------------------------- EAX=00000000h EBX=00000000h ECX=00000000h EDX=00000000h Что-то не так?
Тема вообще-то древняя и пора бы уж зарубить на носу - серийный номер процессора поддерживается только в Pentium III. Раньше такой фичи вообще не было, а после PIII ее отменили (якобы из соображений конфиденциальности)
leo! Я тут переговорил со знающим челом, они говорит якобы можно получить CPUID на всех РС, начиная с 486... И даже исходник на С/ASM подкинул. Только я в С не силен, неврубаюсь что тут к чему :-(
ATX cpuid - это микроинструкция такая. Естественно, её можно использовать начиная с определённой модели x86. Тебе же не микроинструкция нужна, а PSN - серийник процессора, который, как совершенно справедливо написал leo, получить можно лишь на 3м пне и только если эта фишка вообще включена. ЗЫ: Может быть, тебе не серийник нужен, а просто модель?
ATX Ну всё как и сказал leo, проверяется флаг PSN, если он установлен, тогда уже можно получить серийный номер.
Не может быть! Серийник проца должен каким-то образом добываться. Я где-то читал, что якобы даже ML при компиляции его получает, маскирует, и устанавливает с PE. Хороше, ну а к чему (уникальному) тогда можно привязываться?
ATX Теперь ты compid с psn путать начал Вот, с этого вопроса нужно было начинать... искать по форуму.
ATX Чтобы поставить жирный крест на PSN достаточно заглянуть в первоисточник: IA-32, volume 2A До кучи посмотри Table 3-13. Highest CPUID Source Operand for IA-32 Processors, чтобы убедиться, что в более раних моделях функция CPUID 03H вообще не поддерживается. Ну и для полноты картины загляни в мануалы AMD - им вообще в голову не приходила идея использовать PSN, поэтому в CPUID 01H даже флага такого нет (EDX bit 18 - reserved)
А что значит к уникальной инсталяции? И в случае переинсталяции компа темже виндозным диструбутивом эта уникальность пропадет?