Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

64-битный режим под DOS: исследовательская работа №1

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Обсуждение статей] >> 64-битный режим под DOS: исследовательская работа №1
Имя
Сообщение << Старые топики   Новые топики >>
64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 06:15:06.816666   
ArtAdmin

Сообщений: 11556
Оценки: 14
Присоединился: 2007-01-17 16:55:01.430000
Обсуждение статьи "64-битный режим под DOS: исследовательская работа №1"
Post #: 1
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 06:15:06.910000   
Guest

Сообщений: 83368
Оценки: 51
Присоединился: None
Гуд. Только почему-то оценка +1 не выставляется :-/ Подвисает.
Post #: 2
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 07:07:21.540000   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
Насчёт организации рабочего места… Было бы приятнее, если бы автор дополнил бы объяснения того, какой дос нужен, описав как это дело запустить под bochs, qemu или ещё каким эмулятором. Ведь под эмулятором гораздо удобнее будет возиться с программой, зависание которой приводит к зависанию компьютера – пускай зависающий компьютер будет виртуальным, со встроенным отладчиком и всеми прочими прибамбасами для разработчика.
Post #: 3
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 11:38:20.673333   
Guest

Сообщений: 83368
Оценки: 51
Присоединился: None
В том-то и дело, что под эмулятором не получится. Автор ставит жесткие эксперименты над железом. Выдержать такое может только нетребовательный Дос, имхо:-)
Post #: 4
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 12:29:10.396666   
Guest

Сообщений: 83368
Оценки: 51
Присоединился: None
Это больше по тематике WASM.ru и разработке ОС. Чтобы такое написать достаточно почитать справочник Intel (например) для системного программиста.
Post #: 5
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-02 14:27:48.426666   
Guest

Сообщений: 83368
Оценки: 51
Присоединился: None
Дольше рассказывал, чем код дал….
Post #: 6
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 проэмулирует так, что я думаю, специально захочешь – не отличишь.
Post #: 7
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 10:59:53.180000   
Guest

Сообщений: 83368
Оценки: 51
Присоединился: None
Эмулятор не всегда устраивает. Ближе к железу, товарищи!
Пример: мы пишем тест оперативной памяти, и отлаживаем его, установив
в плату сбойный DIMM (банк 0-исправный, банк 1-сбойный).
Для быстрого выявления редкопроявляющихся сбоев желательно создать
максимальную нагрузку на память, то есть оптимизировать код для
обеспечения максимальных скоростей чтения и записи.
При этом результаты нашей оптимизации желательно сразу же увидеть:
скорость возрастает, искомый сбой проявляется.
Иногда важна не только логика работы программы,
но и процессы в электрической схеме при выполнении
программы, которые эмулятор не воспроизведет.
Post #: 8
RE: 64-битный режим под DOS: исследовательская работа №1 - 2008-07-03 12:37:00.403333   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: Guest
Эмулятор не всегда устраивает. Ближе к железу, товарищи!
[…]

Угу. Да-да-да. Но теперь скажи мне, что в изучении 64-битного режима может потребовать _реального_ железа? Пример с тестом оперативки не катит. Хотя его тоже проще отладить в эмуляторе, прежде чем переходить именно к тестам оперативки.
Post #: 9
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-битного
режима данный огород не городился бы.
Post #: 10
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 приводит к зависанию ДОС'а. Единственным доступным мне способом это выяснить был метод научного тыка. Вот две недели я и тыкал научно. Так сих пор и не знаю почему же она не выходила корректно. То есть вот прямо сейчас у меня есть подозрения на этот счёт, но… Той программы уже нету.
Post #: 11
Страниц:  [1]
Все форумы >> [Обсуждение статей] >> 64-битный режим под DOS: исследовательская работа №1







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.