Hyperthrading и многопроцессорность на ассемблере под DOS
Интересно как реализован Hyperthrading на низком уровне. Кроме того сейчас двухядерные процессоры появились. Как в DOS или в своей операционной системе запустить код на разных процессорах? Киньте ссылку по описаниям процессоров и чипсетов. Или где в исходниках Линукса искать.
Всеж элементарно. Где искать инфу, если не на сайте производителя. Так что вперед и с песней
http://developer.intel.com/design/pentium4/manuals/index_new.htm
Как в DOS или в своей операционной системе запустить код на разных процессорах?
а как ты собираешся изпользовать два процессора в ОДНОЗАДАЧНОЙ системе????
а как ты собираешся изпользовать два процессора в ОДНОЗАДАЧНОЙ системе????
Дело в том, что под DOS доступны все ресурсы компьютера. Следовательно и все процессоры. Правда, только для одной программы, например моей. Если ты имеешь в виду зачем. То могу сказать, например, для векторных матричных вычислений. Кстати тут народ во всю свои операционки пишет. Думаю в этом плане тоже надо брать за основу многопроцессорные системы. Фон-Неймановская архитектура свою задачу уже выпонила. Будущее за нейрокомпьютерами, массовым параллелизмом и т.д., я так полагаю.
Дело в том, что под DOS доступны все ресурсы компьютера. Следовательно и все процессоры. Правда, только для одной программы, например моей. Если ты имеешь в виду зачем. То могу сказать, например, для векторных матричных вычислений. Кстати тут народ во всю свои операционки пишет. Думаю в этом плане тоже надо брать за основу многопроцессорные системы. Фон-Неймановская архитектура свою задачу уже выпонила. Будущее за нейрокомпьютерами, массовым параллелизмом и т.д., я так полагаю.
по моему ты меня не понял. смысл многопроцессорности - в распределении выполняющихся задач на разных процессоры. в DOS выполняется ОДНА задача, к тому же не разбиваемая на потоки. смысл там от многопроцессорности? кроме того - все ресурсы компа можно задействовать и под Windows.
Смотрел я там. Внятного кода на ассемблере не нашел. Все сводится к использованию многопотоковости. Свои тулсы предлагают и т.д.
Именно - многопоточность, SMP система подразумевает использование общей памяти для всех процессоров, а следовательно код параллельно может исполняться только в контексте одного процесса(или задачи кому как нравится). И вконце концов если даже тебе путем неимоверных усилий удастся запустить сие в досе это будет лишь многопоточное досовское приложение.
К документам могу добавить лишь "MultiProcessor Specification Version 1.4" link
и "I/O APIC Datasheet" link
Если тебе этого не достаточно, то ты очень далек от достижения своей цели.
PS: Читаем ВНИМАТЕЛЬНЕЙ мануалы или покупаем/качаем дурацкие книжки наших "писателей" в которых все тоже самое да еще и с ошибками. Про соурс lINUX'а сам упомянул, там все на видном месте лежит, стоит только посмотреть.