Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Предлагаю обсуждать особенности WinXP x64 Edition

Автор: Darth_Vader
Дата сообщения: 29.06.2005 01:02
Oleg_Kurilin

Цитата:
Причем тут ядра? Файл сна загружает загрузчик, переходит в рабочий режим и передает управление образу, и если загрузчик 32-х разрядный, то и режим будет аналогичный, а с 64-ч разрядным, соответственно.

Ядра как раз определяют все: нельзя ведь запустить образ сеанса 64-битовой системы для 32-битовой на винте, и не сможешь даже для другой ("неродной") 32-битовой.
Что касается совместимости загрузчика - тут есть ограниченная совместимость, а именно - обратная: 64-битовый лоадер спокойно грузит любые образы и просто ОС, 32-битовый - не может грузить ни 64-битовую ОС, ни ее образ хибернейта. Протестировано (что и требовалось доказать).


Цитата:
А уж определить какой режим был (какое ядро было загружено) это задача не невыполнимая, хоть по флагам, хоть по сигнатурам, хоть парсить содержимое

Определить-то можно, но мы грим здесь о том что ты не заставишь ОС (файло на винте) работать с "чужим" образом ОС из ОЗУ, и наоборот... немного надо уточнить механизм хибернейта: сохраняется ли где-либо, кроме hiberfil.sys, информация о том что система была введена в состояние спячки - имеется в виду, какие-либо флаги/маркеры в реестре или файловой структуре ОС на винте, читается ли это загрузчиком при инициализации образа? Иб0 если да, тогда еще можно предположить возникновение "путаницы".
По идее, ВСЕ должен решать образ в памяти: там же хранятся дескрипторы файлов, инфа о том откуда ОС грузилась и где ее файло лежит...
Но это теория, а на практике мну не возникало никаких проблем с разными ОС ни на одном разделе, ни на разных.

Кстати, о маркетинге В ридми к х64 грицца, что 16-битовые сетупы и приложения не работают вообще, кроме движка инсталлера M$ ACME. Именно такой сетуп использовался в приснопамятных M$ Office 9x, а я лично для себя до сих пор пользуюсь 97-м. Захотелось сендя переставить офис по-нормальному, чтобы не было ругательств на реестр и VBA - запускаю, здрасте вам: приложение не может быть запущено на данной архитектуре. Совершенно по наитию захожу в \Clipart, запускаю сетуп лежащий там - грит, давайте ставиться. Опять же, по гнусному подозрению копирую \Clipart\setup.exe в корень дистрибутива, и шо би ви уже таки думали? Офис ставится без единой ошибки. Типа, некрософт решил: раз есть деньги на такую вынь и на такое железо - найдутся и на офис-2003, нефиг мол 97-ми баловаться

ALL
VirtualISO, кстати - не поставил, иб0 оно требует .NET Framework v.2.0 для х64, а тот весит 47 метров. Щас тяну, поскольку полезно иметь в системе свежак (пусть и бету) популярного рантайма последней версии, да еще и с поддержкой как 64- так и 32-разрядных приложений, вместо 1.1 только для 32-битовых.

CaptainFlint
Знач так, специально высвободил место на Ё: и доставил туда копию обычной винды, включил там и там хибернейт и попробовал потыкаться туда-сюда... нифига: при загрузке тебю выбора ОС просто не выводится, а при нажатии F8 в процессе восстановления состояния предлагается продолжить восстановление, либо удалить данные и вывести тебю загрузки.

Чтобы установить 32-битовый загрузчик (NT Loader), тебе не нужны ни fixboot, ни тем более fixmbr, иб0 не ст0ит путать загрузочную запись и загрузочный сектор с загрузчиком - гругря, программой осуществляющей выбор и загрузку одной из ОС в соответствии с настройками, в случае с NT Loader это файл ntldr и конфиг boot.ini.
Т.е. ты можешь взять ntldr от старой винды и положить его в корень вместо существующего, только после этого х64 грузиться не сможет...


Цитата:
А что при этом вообще происходит? В каждом из этих двух режимов. И зачем нужен режим S1&S3?

S1 - это старый режим усыпления, в котором железо программно переводится в состояние энергосбережения АТ, соответствующее ACPI State 1, потому и кулера вращаются и все такое... S3(STR) = ACPI State 3, работа устройств "приостановлена", питание подается только на RAM, соответсно содержимое памяти сохраняется до "пробуждения". За процедуры ввода железа в состояние ACPI S3 и вывод из него отвечает ACPI BIOS, поскольку ни ОС, ни загрузчик этот процесс контролировать не могут. Для поддержки ACPI S3 необходима полная поддержка этого режима со стороны ОС, BIOS, системной платы, всех и каждого из устройств и каждого из драйверов устройств. Скажем, NT4 не поддерживала ACPI, и драйверы устройств от NT4, будучи установлены на ХР/2К, например если "родных" дров на конкретный девайс для этих ОС просто нет в природе - блокируют возможность ввода системы в S3 Standby.
Автор: Oleg_Kurilin
Дата сообщения: 29.06.2005 06:19
Darth_Vader

Цитата:
Что касается совместимости загрузчика - тут есть ограниченная совместимость, а именно - обратная: 64-битовый лоадер спокойно грузит любые образы и просто ОС, 32-битовый - не может грузить ни 64-битовую ОС, ни ее образ хибернейта. Протестировано (что и требовалось доказать).

Ну а я про что говорю? Значит 64-х битный загрузчик может загрузить ядро и свое и предыдущих версий, а вот разобраться с файлом сна - облом. Мне все же кажеться, что здесь недосматрели мелкомягкие, сколько раз у них были глюки именно в этой области, и когда их ткнут мордой, они может и почешутся (надеюсь)
Автор: pav
Дата сообщения: 29.06.2005 11:53
Кстати, о проблеме драйверов. Прочитав статью, я так понял, что можно ипользовать драйвера от 32-разрядной ОС, предварительно поправив inf-файл. Или я не прав?
Автор: CaptainFlint
Дата сообщения: 29.06.2005 12:34
Darth_Vader

Цитата:
Чтобы установить 32-битовый загрузчик (NT Loader), тебе не нужны ни fixboot, ни тем более fixmbr, иб0 не ст0ит путать загрузочную запись и загрузочный сектор с загрузчиком - гругря, программой осуществляющей выбор и загрузку одной из ОС в соответствии с настройками, в случае с NT Loader это файл ntldr и конфиг boot.ini.
Т.е. ты можешь взять ntldr от старой винды и положить его в корень вместо существующего, только после этого х64 грузиться не сможет...

Да, это я уже понял, что ступил. Пробовал заменить - 64-битная грузиться перестала.
Интересно, а если сначала установить 64-битную, а потом в другой раздел 32-битную? Загрузчик будет заменён или нет? Если будет, то, получается, 64-битная перестанет грузиться? К сожалению, винта свободного нету, чтобы поэкспериментировать...


Цитата:
S1 - это старый режим усыпления, в котором железо программно переводится в состояние энергосбережения АТ, соответствующее ACPI State 1, потому и кулера вращаются и все такое... S3(STR) = ACPI State 3, работа устройств "приостановлена", питание подается только на RAM, соответсно содержимое памяти сохраняется до "пробуждения". За процедуры ввода железа в состояние ACPI S3 и вывод из него отвечает ACPI BIOS, поскольку ни ОС, ни загрузчик этот процесс контролировать не могут. Для поддержки ACPI S3 необходима полная поддержка этого режима со стороны ОС, BIOS, системной платы, всех и каждого из устройств и каждого из драйверов устройств. Скажем, NT4 не поддерживала ACPI, и драйверы устройств от NT4, будучи установлены на ХР/2К, например если "родных" дров на конкретный девайс для этих ОС просто нет в природе - блокируют возможность ввода системы в S3 Standby.

Ага, понял. Спасибо за разъяснения, попробую заюзать.
Автор: nowhereman
Дата сообщения: 29.06.2005 18:04
Oleg_Kurilin

Цитата:
и когда их ткнут мордой, они может и почешутся (надеюсь)

Может быть. Но мне пока не на чем воспроизводить. Вот если через недельку новый винт куплю...

Darth_Vader
Маленькое добавление. Чтобы Win2000, Ме, ХР уходили в спящий режим, нужна либо поддержка железом S3, либо установка системы с другим HAL, без поддержки ACPI вообще.

pav

Цитата:
Прочитав статью, я так понял, что можно ипользовать драйвера от 32-разрядной ОС, предварительно поправив inf-файл. Или я не прав?

Нет, 32-разрядные драйверы работать все равно не будут.
Автор: Darth_Vader
Дата сообщения: 30.06.2005 02:18
nowhereman

Цитата:
Маленькое добавление. Чтобы Win2000, Ме, ХР уходили в спящий режим, нужна либо поддержка железом S3, либо установка системы с другим HAL, без поддержки ACPI вообще.


Гы... можно и на полностью ACPI S3-совместимой системе в любой момент использовать и хибернейт, и S3 Stanby - достаточно в настройках питания (панель управления) назначить функцию "переход в _спящий_ режим" либо на кнопку ждущего режима (если есть на клаве. тогда в ждущий можно переходить через интерфейс "завершение работы", диспетчер задач или вызов RunDll32), либо на кнопку питания на корпусе (опять же, выключать одним из вышеперечисленных способов).
Можно и в хибернейт/стендбай вводить вызовом RunDll32 - ярлыками, из скриптов или командной строки.

Только не понял вот этого:

Цитата:
нужна либо поддержка железом S3

Эта поддержка нужна для ждущего режима S3, но НЕ для спящего... что касается поддержки железом "ACPI" на уровне S1 максимум (т.е. без S3, как встречалось в свое время на некоторых безродных мамках на базе i815 и других чипсетов той же эпохи), то все равно - ACPI HAL дает максимальную эффективность и производительность, а hibernate можно использовать, как указано выше... если конешна с этим HALом система грузится/работает, а то ведь я встречал случаи когда совсем нет...

Спящий режим тем и хорош, что практически не зависит от архитектры - его можно юзать скажем и на многопроцессорных системах без ACPI...

CaptainFlint

Цитата:
Да, это я уже понял, что ступил. Пробовал заменить - 64-битная грузиться перестала.
Интересно, а если сначала установить 64-битную, а потом в другой раздел 32-битную? Загрузчик будет заменён или нет? Если будет, то, получается, 64-битная перестанет грузиться? К сожалению, винта свободного нету, чтобы поэкспериментировать...

Зачем мучиться, не проще скопировать файл ntldr от каждой из систем куда-нибудь, и после любых манипуляций ставить тот который нужен (лучше 64-битовый, т.к. он все практически поддерживает).
По поводу разделов: загрузчик (ntldr) на одном винте (и в системе вообще, т.е. на всех винтах, если только не прибегать к разного рода выкрутасам) ставится ОДИН - в корень активного раздела загрузочного жесткого диска BIOS. А уже линки на различные ОСи прописываются там же в boot.ini, именно эти линки содержат информацию о том, с какого раздела какую ОСь грузить. Поэтому при установке других энтей загрузчик встанет от последней установленной, туда же где был прежний.

ALL
Поставил VirtualISO... что сказать: отличный пример того, какие в современном мире высоких технологий существуют подходы к разработке приложений, особенно если сравнить с FileDisk... первое демонстрирует типично экстенсивный подход: разработка приложения на базе платформы .NET х64 версии 2.0, рантайм которой до сих пор находится на уровне беты 2 и постоянно сыплет ошибками, а весит - установочные файлы порядка 50 метров, для установки требует свыше 450М, после - занимает порядка 200М, плюс сама софтина - установочный пакет 8.5М, в установленном виде - 11.3М.
И что мы за все это получаем? Возможность создавать и монтировать ISO, безо всяких опций эмуляции физики диска или поддержки других форматов, вычислять MD5 образа и проверять при монтировании, задавать произвольные описания и картинки (о! это же самое главное!). В софтине применяются иконки от Mormegil'a, созданные для Stardock.com
Теперь сравним с интенсивным подходом - FileDisk: весит все в сумме 106к, в архиве - 44к, позволяет монтировать ISO, BIN, NRG, MDF, созданные с помощью другого софта (например, Nero, WinImage, WinISO...) а также образы жестких или флоппи-дисков (IMA, IMG), фактически представляет собой набор из драйвера ядра, инструмента командной строки к нему, графического фронтенда и рег-файла для подключения драйвера, который нужно самостоятельно скопировать в \System32\Drivers.

Ну, и что выберет для себя почтеннейшая публика? тысячекратная разница в размерах, однако
Автор: gsmania
Дата сообщения: 30.06.2005 05:35
Darth_Vader
Зачем надо-было создавать эту тему когда похожая уже существует?
http://forum.ru-board.com/topic.cgi?forum=62&bm=1&topic=2719#1
Автор: pav
Дата сообщения: 30.06.2005 06:43
nowhereman

Цитата:
Нет, 32-разрядные драйверы работать все равно не будут.

Пробовал вчера с драйверами от ATI. Чего-то действительно не хватало. Но ведь M$ сама пишет:

Код: Installing Undecorated INFs on X64-based Systems
The following workarounds can be used to install undecorated INFs on x64-based systems. These workarounds are intended only for use on test systems and are not recommended for production drivers.
Автор: Darth_Vader
Дата сообщения: 30.06.2005 07:03
pav
Это инфа специально для вендоров железа, выпускающих обновленные дрова под х64. У Риалтыка были такие грабли, например: на блинах с дровами скажем к мамкам Asus A8N-E шел драйвер версии 5.10.5721 в сокращенной поставке (только .sys, .inf и .cat), так вот там инф был немаркированный, и дрова отказывались ставиться. Пришлось фиксить руками...
Автор: nowhereman
Дата сообщения: 30.06.2005 09:51
Darth_Vader

Цитата:
Гы... можно и на полностью ACPI S3-совместимой системе в любой момент использовать и хибернейт, и S3 Stanby -

Может, я неаккуратно выразился. Я не об этом. Я о том, что для реализации спящего режима ACPI вообще не требуется.
Автор: Darth_Vader
Дата сообщения: 01.07.2005 08:01
gsmania
Мля, ну какие все умные, а? Я вот дурак, п@нимаеш, перед созданием темы искал по фильтру х64, нашел нихрена - потому что доморощенные гении не знают как прально называется мастдай для AMD64... потому что XP 64-bit это екарный мастдай для Itanium...
Автор: Paranoik_13
Дата сообщения: 01.07.2005 10:18
Кто ставил х64, проясните, пожалуйста, ситуацию с драйверами для SATA: надо-ли подсовывать диск (через F6) при установке или нет? В частности, для мамки Giga-byte GA-K8NXP-SLI идущей с контроллерами silicon 3114 и nForce 4. Спасибо.
Автор: Darth_Vader
Дата сообщения: 01.07.2005 19:30
Paranoik_13
Походу, надо. Ведь есть же makedisk.exe в фолдере с дровами для х64.
Автор: Kukuev
Дата сообщения: 01.07.2005 20:12
А эмуляция DOS'a вообще в системе есть? Чего-то базы досовские и NC с VC послали меня куда-то далеко...
Автор: nowhereman
Дата сообщения: 01.07.2005 20:29
Kukuev
Ни эмуляции ДОС, ни поддержки 16-битовых программ нету.
Автор: Darth_Vader
Дата сообщения: 01.07.2005 20:36
Kukuev
А нафига тебе эти динозавры? Есть TC или FAR, если УЖ ОЧЕНЬ охота псевдографики...

Добавлено:
З.Ы. А базы данных, созданные скажем в ДОСовских версиях FoxPro, давно надо было перевести в виндовый формат... 10 лет было для этого, по меньшей мере

Добавлено:
З.З.Ы. Между прочим, об отсутствии 16-битовой поддержки сказано едва ли не в первую очередь в файлах Readme и Read1st (прочитай СНАЧАЛА, ПЕРЕД установкой!) в каталоге \DOCS на установочном CD
Автор: Paranoik_13
Дата сообщения: 01.07.2005 22:55
Darth_Vader
Пасиб за ответ. Жаль только, что для х64 у Гигабайта есть пока бета драйверы. Придётся ставить их; уже на 64-битную версию Windows настроился. Хоть обновлённый биос для Х2 выпустили (уже послабление). Теперь только осталось дождаться пока мне мой 4400+ пришлют (последнее что осталось).
Автор: nowhereman
Дата сообщения: 01.07.2005 23:03
Paranoik_13

Цитата:
Жаль только, что для х64 у Гигабайта есть пока бета драйверы.

Ну, это смотря для чего. У меня практически все оборудование при установке нашлось само. Пять месяцев на гигабайтовской плате х64 живет без проблем.
Автор: Paranoik_13
Дата сообщения: 01.07.2005 23:24
nowhereman

Цитата:
Ну, это смотря для чего.

Ну дык, для sil 3114 и nForce4 (SATA), плюс 8-канальный звук от Realtek. Собсно, всё (если я чего-то не упустил). А всякие @BIOS и EasyTune мне не к спеху. Кстати, оффтопик, но всё же, для Cisco Airnet дров под х64 вроде пока нет? (Хочу купить через пару месяцев вот это).
Автор: nowhereman
Дата сообщения: 01.07.2005 23:29
Paranoik_13
[off]Насчет nForce не интересовался, у меня пень. Но вроде бы поддержка nForce4 встроенная.[/off]
Автор: Darth_Vader
Дата сообщения: 02.07.2005 21:29
Paranoik_13
Для силиконовского контроллера вроде дрова релизные есть... да и фиг ли разница, бета - не бета, если полет нормальный?
Автор: FOLD
Дата сообщения: 03.07.2005 10:23
Что то не работает filedisk При попытке монтирования образа говорит не найден путь
filedisk.sys из x64 в \system32\drivers\ копирую , регу запускал ,перегружался Что не так ?


Добавлено:
Решение простое до смешного- filedisk.sys копировал FAR-ом ,еще удивило что \system32\drivers пустая .
Сначала не придал значения потом стал разбираться -оказалось ни FAR ни TC 6.5 не видят *.sys ,короче експлорер-ом копировать надо


Добавлено:
Вот тоже ребята решали эту "проблему" LOL
http://www.planetamd64.com/index.php?showtopic=4660&st=20&p=73011&#entry73011

Добавлено:
Кто-нить unattended юзал ?Куда *sif и $OEM$ -в I386 или в AMD64?
А то уменя дисск от дистрибьютеров с рынка и deploy и вообще весь suuport отсутвует
(шобы место не занимал )
Автор: Darth_Vader
Дата сообщения: 04.07.2005 04:49
FOLD
С унаттендом пока непроверенный вопрос - как выставить значение ключей реестра ProgramFilesDir (x86) и CommonProgramFilesDir (x86). Буду экспериментировать.
WINNT.SIF должен быть там же, где SETUPLDR.BIN - в \I386 (вероятно, ради пущей совместимости).


Цитата:
Решение простое до смешного- filedisk.sys копировал FAR-ом ,еще удивило что \system32\drivers пустая .
Сначала не придал значения потом стал разбираться -оказалось ни FAR ни TC 6.5 не видят *.sys ,короче експлорер-ом копировать надо

Дело не в расширении файла, а в том что для 32-битовых приложений \SYSTEM32 редиректится (см. выше). Кстати, я специально заливал туда файл из-под чистого ДОСа (как в песне ) но тем не менее, без ручной доработки реги не обошлось.
Автор: Kukuev
Дата сообщения: 04.07.2005 09:11

Цитата:
З.Ы. А базы данных, созданные скажем в ДОСовских версиях FoxPro, давно надо было перевести в виндовый формат... 10 лет было для этого, по меньшей мере

Ну это разработчикам надо было сказать, а базы некоторые так и продолжают выпускаться только для ДОСа
Автор: gsmania
Дата сообщения: 04.07.2005 16:00
FOLD
Можно было проще. Не надо-было ничего копировать. Скачать WinImage . Инсталируется автоматически.
Есть еще одна прога Fantom DVD . Офсайт: http://www.fantomdvd.com. Остановился пока на ней.
Darth_Vader

Цитата:
WINNT.SIF должен быть там же, где SETUPLDR.BIN - в \I386


Ложил WINNT.SIF в \I386. Результат нулевой. Как будто его там и не было.
Автор: FOLD
Дата сообщения: 04.07.2005 17:15
gsmania

Цитата:
Можно было проще. Не надо-было ничего копировать
Я это делал, результат был такой же,"путь не найден".Ну да с этим ясно уже.
WINNT.SIF должен распологаться в AMD64, правда мне установить не удалось,
Параметры из winnt.sif цепляет ,и когда после загрузки дров доходит до момента определения винта -"ошибка 18" .
Ставлю на RAID ,какздесь пишут. и с x32 такая фигня,но это из другой песни



Автор: Darth_Vader
Дата сообщения: 04.07.2005 20:57
gsmania

Цитата:
Ложил WINNT.SIF в \I386. Результат нулевой. Как будто его там и не было.

Проверю. Тока не "ложил", а "п0ложил", или "клал"


Цитата:
Есть еще одна прога Fantom DVD . Офсайт: http://www.fantomdvd.com. Остановился пока на ней.

Посмотрим, фенькс

Kukuev

Цитата:
Ну это разработчикам надо было сказать, а базы некоторые так и продолжают выпускаться только для ДОСа

Убивать надо таких разработчиков... расстрел через повешение на электрическом стуле.

FOLD

Цитата:
WINNT.SIF должен распологаться в AMD64, правда мне установить не удалось,
Параметры из winnt.sif цепляет

Странно... как же setup loader ищет путь к этому файлу...


Цитата:
и когда после загрузки дров доходит до момента определения винта -"ошибка 18" .

Так ты дискету сделал? F6 нажимал? Или хочеш ВСЕ в унаттенде чтобы было? Можно попробовать драйверы текстового режима енлайтом интегрировать...
Автор: FOLD
Дата сообщения: 04.07.2005 22:38
Darth_Vader

Цитата:
Странно... как же setup loader ищет путь к этому файлу
По идее он ищет наличие
winnt.sif (при установке с CD) в установочном каталоге и таковым считает AMD64
Нашел deploy и setupmgr создает set SetupFiles=X:\amd64

Цитата:
Так ты дискету сделал? F6 нажимал? Или хочеш ВСЕ в унаттенде чтобы было?

С дискетой ставится ,хотел UnattendMode=FullUnattended
Цитата:
Можно попробовать драйверы текстового режима енлайтом интегрировать...
В текстовом режиме внизу в строке пишется что мои дрова грузятся ,но при определении
винта ,когда идет определение разделов и поиск установленных версий вин, сбой..
Думаешь nlite может помочь? Я не юзал его
Пробовал unattend x64 на single винт,(а то буду морочиться с RAID,а там другие фокусы) взял свой winnt.sif от x32 -ОС стала без проблем
По поводу ProgramFilesDir(x86) и CommonProgramFilesDir(x86) -понимает ,но кривенько,
т.е. Program Files (x86) все равно создала вместе с подпапками-парвда они пустые,
и ссылки в реестре похоже на Program Files (x86) остались, потому как far по дефолту
было предложено туда ставить.Я над этим не заморачивлся ,больше спортивный интерес








Автор: VdV
Дата сообщения: 05.07.2005 01:22
Windows и 64 бита

Массовая 64-битовая платформа: туманные перспективы
Автор: Darth_Vader
Дата сообщения: 05.07.2005 02:51
FOLD
При
Цитата:
UnattendMode=FullUnattended
все равно можно F6 нажимать... или ты умышленно хочешь избежать каких-либо действий? А как же выбор целевого раздела?

VdV
Да уж, украинская компутерная пресса - это что-то с чем-то... себя не окупает, поэтому...

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Динамические диски


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.