64-битный режим под DOS: исследовательская работа №1
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 06:15:06.910000
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
Гуд. Только почему-то оценка +1 не выставляется :-/ Подвисает.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 07:07:21.540000
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
Насчёт организации рабочего места… Было бы приятнее, если бы автор дополнил бы объяснения того, какой дос нужен, описав как это дело запустить под bochs, qemu или ещё каким эмулятором. Ведь под эмулятором гораздо удобнее будет возиться с программой, зависание которой приводит к зависанию компьютера – пускай зависающий компьютер будет виртуальным, со встроенным отладчиком и всеми прочими прибамбасами для разработчика.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 11:38:20.673333
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
В том-то и дело, что под эмулятором не получится. Автор ставит жесткие эксперименты над железом. Выдержать такое может только нетребовательный Дос, имхо:-)
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 12:29:10.396666
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
Это больше по тематике WASM.ru и разработке ОС. Чтобы такое написать достаточно почитать справочник Intel (например) для системного программиста.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 14:27:48.426666
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
Дольше рассказывал, чем код дал….
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 01:30:31.763333
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
В том-то и дело, что под эмулятором не получится. Автор ставит жесткие эксперименты над железом. Выдержать такое может только нетребовательный Дос, имхо:-) Ну так никто не мешает на эмулятор поставить дос, если очень хочется ;) Тот же bochs – достаточно хорошо эмулирует железо, насколько я знаю. Да и не совсем понятно зачем там хорошо эмулировать железо? Вопросы программирования сторонних железяк, типа флоповодов/жёстких дисков не сильно интересны в таком контексте, интереснее что с процессором можно сделать. А уж стандартную vga видяху, со стандартной клавиатурой, жёстким диском, флоповодом, и несколькими устройствами на материнке (типа UDMA контроллера, APIC и тп) bochs проэмулирует так, что я думаю, специально захочешь – не отличишь.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 10:59:53.180000
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
Эмулятор не всегда устраивает. Ближе к железу, товарищи! Пример: мы пишем тест оперативной памяти, и отлаживаем его, установив в плату сбойный DIMM (банк 0-исправный, банк 1-сбойный). Для быстрого выявления редкопроявляющихся сбоев желательно создать максимальную нагрузку на память, то есть оптимизировать код для обеспечения максимальных скоростей чтения и записи. При этом результаты нашей оптимизации желательно сразу же увидеть: скорость возрастает, искомый сбой проявляется. Иногда важна не только логика работы программы, но и процессы в электрической схеме при выполнении программы, которые эмулятор не воспроизведет.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 12:37:00.403333
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
ORIGINAL: Guest Эмулятор не всегда устраивает. Ближе к железу, товарищи! […] Угу. Да-да-да. Но теперь скажи мне, что в изучении 64-битного режима может потребовать _реального_ железа? Пример с тестом оперативки не катит. Хотя его тоже проще отладить в эмуляторе, прежде чем переходить именно к тестам оперативки.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 15:08:10.740000
|
|
|
Guest
Сообщений: 83368
Оценки: 51
Присоединился: None
|
(1) Если пишем тест оперативки, то на первом этапе, когда отлаживаем логику работы программы, эмулятор устроит. А потом нужно проверить и отладить способность нашего теста выявлять редкопроявляющиеся сбои памяти, эта способность зависит от качества оптимизации кода - максимизация скорости чтения и записи. Главным критерием качества нашего теста в этом случае будет обнаружение сбоев, то есть когда в память записали одно а прочитали другое. именно здесь эмулятор не устроит.
(2) 64-битный режим может быть и не самоцелью, а инструментом, например для доступа к той же памяти выше 4GB или различным Memory-Mapped I/O ресурсам, архитектура которых неизвестна эмулятору. Например, окно для доступа к конфигурационным регистрам Hyper-Transport устройств может находиться выше 4GB. Сильно сомневаюсь, что есть эмулятор знающий и корректно эмулирующий все недокументированные регистры всех устройств. А если вы занимаетесь разработкой железа и отлаживаете собственные устройства?
(3) Недаром в названии статьи указанно: "…работа N1", то есть предлагается некий принцип отладки взаимодействия софта и железа, а 64-битный режим здесь как пример применения данного принципа, как инструмент, который будет использован в работах N2,3,4… Соглашусь только в том, что из-за одного только 64-битного режима данный огород не городился бы.
|
|
|
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-17 18:11:51.393333
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
ORIGINAL: Guest (1) Если пишем тест оперативки, то на первом этапе, когда отлаживаем логику работы программы, эмулятор устроит. Понятно дело, что он не устроит на последнем. Но на первом, как ты и сказал он не просто устроит, а будет офигенно полезен. quote:
ORIGINAL: Guest (2) 64-битный режим может быть и не самоцелью, а инструментом, например для доступа к той же памяти выше 4GB или различным Memory-Mapped I/O ресурсам, архитектура которых неизвестна эмулятору. Например, окно для доступа к конфигурационным регистрам Hyper-Transport устройств может находиться выше 4GB. Сильно сомневаюсь, что есть эмулятор знающий и корректно эмулирующий все недокументированные регистры всех устройств. А если вы занимаетесь разработкой железа и отлаживаете собственные устройства? Эмм… Надо просто почесать репу, прежде чем использовать эмулятор. Для собственных устройств можно написать драйвер к host-os, и научить эмулятор при помощи этого драйвера прозрачно эмулить отлаживаемое устройство. Тратим на это действо сутки-двое, и вуаля, мы в дамках! Для каких-то неподдерживаемых регистров… Тут есть два варианта – либо побазарить с разрабами эмуля и реализовать поддержку нужных, либо написать и отладить всё кроме работы с этими регистрами (её оформить в виде заглушек в своей программе), а потом перелезать на реальное железо. Но я думаю регистры такие будет не так уж и просто найти – под тем же bochs венда крутится не замечая. Линь/бзд и прочие, тоже. Так что если там что-то из неэмулируемых фичей проца, то довольно мало шансов на то, что понадобиться именно это. quote:
ORIGINAL: Guest (3) Недаром в названии статьи указанно: "…работа N1", то есть предлагается некий принцип отладки взаимодействия софта и железа, а 64-битный режим здесь как пример применения данного принципа, как инструмент, который будет использован в работах N2,3,4… Ну-ну :) Когда я писал свою первую (и единственную, на самом деле) программу, которая должна была перейти в PM, и выйти оттуда, я трахался две недели, пытаясь выяснить, почему выход из PM приводит к зависанию ДОС'а. Единственным доступным мне способом это выяснить был метод научного тыка. Вот две недели я и тыкал научно. Так сих пор и не знаю почему же она не выходила корректно. То есть вот прямо сейчас у меня есть подозрения на этот счёт, но… Той программы уже нету.
|
|
|
|
|