0
ответов

Почему gcc вызывает PIC для общих библиотек x64?

Попытка скомпилировать не-PIC-код в общую библиотеку на x64 с gcc приводит к ошибке, что-то вроде: / usr / bin / ld: /tmp/ccQ2ttcT.o: перемещение R_X86_64_32 против `локального символа 'не может быть использовано. ..
вопрос задан: 23 October 2011 08:02
0
ответов

Использование сборки на Mac

Я использую MacBook Pro с процессором Intel Core 2 Duo с частотой 2,53 ГГц, но мне сказали, что пользователи Mac должны следовать синтаксису AT&T (который добавляет мне путаницы, поскольку я использую Intel) и x86 (не уверен ...
вопрос задан: 21 October 2011 19:27
0
ответов

Есть ли способ для модуля ядра найти адреса разделов другого загруженного модуля?

В системе x86, У меня есть модуль ядра Linux («модуль-наблюдатель»), который получает уведомление от ядра каждый раз, когда загружается конкретный модуль ядра («цель»). Практически любой модуль ядра может быть целью. ...
вопрос задан: 21 October 2011 14:46
0
ответов

Как ПЗУ BIOS отображается в адресное пространство на ПК?

ЦП x86 начинает выполнение с физического адреса 0xFFFFFFF0. Там в конце адресного пространства находится ПЗУ BIOS. Первая инструкция, которую ЦП выполняет из ПЗУ, - это дальний переход, который ...
вопрос задан: 18 October 2011 08:57
0
ответов

Бесплатная IDE + ассемблер + программный эмулятор для сборки x86 (MASM)? [закрыто]

В настоящее время я пытаюсь попасть в сборку x86 (у меня уже есть некоторые уже существующие знания о сборке x51) и я ищу простую IDE + ассемблер + эмулятор для вывода сборки. Ты можешь...
вопрос задан: 15 October 2011 20:54
0
ответов

Сборка Как преобразовать REP STOS в код C

Я уже некоторое время отлаживаю REP STOS DWORD PTR ES: [EDI] По моему мнению, он всегда использует ECX в качестве счетчика. EAX в качестве значения который будет скопирован через EDI, а затем добавлен раз ECX, поэтому после ...
вопрос задан: 14 October 2011 05:52
0
ответов

Сборка Преобразование MOV / MOVZX и MOVSX в код C (без встроенного asm)

Для эмулятора asm я пытаюсь написать, чтобы преобразовать код ASM в эквивалентный рабочий код, просто работающий ... лучшим кодом будет тот, который можно сделать либо одной строкой, либо двумя-тремя, неважно ...
вопрос задан: 14 October 2011 01:28
0
ответов

Сборка Intel x86 - эквивалентны ли эти два утверждения?

Здесь очень простой вопрос ... Я пытаюсь обернуть Я схожу с ума по ассемблеру и мне интересно, эквивалентны ли эти операции: mov [ebx], 5 и lea esi, ebx mov esi, 5 Спасибо!
вопрос задан: 10 October 2011 21:31
0
ответов

16-битный набор инструкций asm

Какой набор инструкций используется в COM-файлах? Я предполагал, что это 8086, но, похоже, я ошибался. В руководстве по 8086 я нашел, что shl может принимать только 1 или cl для своего второго аргумента, в то время как immediate ...
вопрос задан: 29 September 2011 14:06
0
ответов

Как работает x86 eflags бит 18 (проверка выравнивания)? (Относится к проверке 386 по сравнению с 486 и более поздними версиями.)

Я читал, что if eflags бит 18 (AC - проверка выравнивания) можно изменить, вы знаете, что процессор 486 или новее. На 386 бит сопротивляется модификации. Я взял следующий код сборки из ...
вопрос задан: 23 September 2011 16:15
0
ответов

Накладные расходы спина петлей в терминах Cache Coherence

Скажите, что нить в одном ядре вращается на Переменная, которая будет обновляться потоком, работающей на другом ядре. Мой вопрос - это то, что такое накладные расходы на уровне кеша. Будет ли кэш в ожидании потока ...
вопрос задан: 10 September 2011 16:27
0
ответов

Out of Order Execution and Memory Fences

I know that modern CPU can execute out of order, however they always retire the results in order, as described by wikipedia. "Процессоры Oder вовремя заполняют эти "слоты" другими ...
вопрос задан: 8 September 2011 11:12
0
ответов

Написание и изучение ассемблера на Mac

Недавно я решил, что хочу попробовать научиться программировать на ассемблере. Имея модель MBP 2011 года, я не смог найти много информации о том, как писать и выполнять код сборки на моем компьютере. Если ...
вопрос задан: 6 September 2011 07:02
0
ответов

Вызов подпрограмм условно Устройство

Я изучаю сборку X86. Мне было интересно, как вы выполняете подпрограмму условно. Насколько я понимаю, прыжки на метку не работает, потому что адрес возврата не сохраняется и ...
вопрос задан: 4 September 2011 19:41
0
ответов

Более эффективное слово пограничный запрос в MySQL

У меня есть таблица с 1/2 миллиона фраз, и я делаю слово сопоставление с использованием этого запроса: выберите * из `SearchIndex`, где` indexdata` rlikes '[[[: <: <: ]] Hirt 'The IndexData поле имеет индекс FullText ...
вопрос задан: 31 August 2011 18:19
0
ответов

Как я могу обменять младшие 128 бит и старшие 128 бит в 256-битном регистре AVX (YMM)

Я портирую SSE SIMD-код для использования 256-битных расширений AVX и не могу найти ни одной инструкции, которая будет смешивать / перемешивать / перемещать высокие 128 бит и младшие 128 бит. Вспомогательная история: Что ...
вопрос задан: 27 August 2011 21:37
0
ответов

порядок кодирования байтов префикса инструкций x86

Я знаю, что инструкции x86 могут иметь не более 4 байтов префиксов, например Lock, rep, сегментные переопределения и т. д. Есть ли какой-то конкретный порядок, в котором они должны появляться, в случае, если несколько префиксов ...
вопрос задан: 25 August 2011 22:22
0
ответов

Сборки .Net2, размещенные в приложении .Net4, лучше работают в x86, чем в режиме AnyCpu?

У меня есть приложение .Net4 WinForms, которое ссылается на сторонние сборки .Net2, которые содержат графические визуальные элементы управления. Я заметил огромное улучшение визуальной производительности приложения, когда случайно ...
вопрос задан: 23 August 2011 12:33
0
ответов

Различия между i386 и AMD64 ABI

Где я могу найти все различия в типах данных между двоичными интерфейсами приложений (ABI) i386 и AMD64? Я знаю, что длинный тип 32-битный в i386 ABI и 64-битный в AMD64. Это ...
вопрос задан: 20 August 2011 16:33
0
ответов

Заменители для Инструкция вызова сборки x86?

Какие есть альтернативы инструкции вызова x86? Может быть, что-то вроде толчка обратного адреса потом прыжок? Это также команда для получения текущей позиции в памяти?
вопрос задан: 15 August 2011 01:33
0
ответов

64-битные регистры в 32-битные окна

Я только что установил mingw32 на свой 32-битный Vista, чтобы поэкспериментировать со встроенной сборкой gcc. К сожалению, 32-битный компилятор gcc не распознает 64-битные регистры, например %% rax. Прежде, чем я утону ...
вопрос задан: 13 August 2011 01:06
0
ответов

Измерьте скорость процессора, подсчитав инструкции по сборке

Правка: В моем исходном примере была глупая ошибка. Однако после исправления я все равно получаю странные результаты. В моей наивной попытке измерить скорость моего процессора методом "грубой силы" я создал программу, приведенную ниже: # ...
вопрос задан: 11 August 2011 20:47
0
ответов

הדרך המהירה ביותר לעשות סכום וקטורי צף אופקי ב- x86

יש לך וקטור של שלושה (או ארבעה) צפים. מהי הדרך המהירה ביותר לסכם אותם? האם SSE (movaps, shuffle, add, movd) תמיד מהיר יותר מ- x87? האם ההוראות להוסיף לרוחב ב- SSE4.2 שוות את זה? ...
вопрос задан: 9 August 2011 13:16
0
ответов

спин-блокировка x86 с использованием cmpxchg

Я новичок в использовании встроенной сборки gcc, и мне было интересно, можно ли реализовать спин-блокировку (без условий гонки) на многоядерной машине x86 как (с использованием синтаксиса AT&T): spin_lock: mov 0 eax ...
вопрос задан: 4 August 2011 02:21
0
ответов

Переключение в пользовательский режим с помощью iret

Я пишу небольшую ОС, которая будет выполнять некоторый код в пользовательском режиме (уровень привилегий 3). Из этого кода пользовательского уровня я хочу вызвать прерывание обратно в ОС, которая печатает сообщение. Прямо сейчас я не ...
вопрос задан: 31 July 2011 21:25
0
ответов

Оценка задержки прерывания на процессорах x86

Я ищу информацию, которая может помочь в оценке задержки прерывания на процессорах x86. Очень полезный документ был найден по адресу «datasheets.chipdb.org/Intel/x86/386/technote/2153.pdf». Но эта статья открылась ...
вопрос задан: 31 July 2011 18:13
0
ответов

Использование LLDT и c onfiguring GDT для него

Я работаю над небольшой ОС, которая будет использовать отдельную таблицу локальных дескрипторов для каждого процесса. Я понимаю, что мне нужно будет использовать инструкцию lldt для загрузки сегмента LDT из моего GDT. Я уже ...
вопрос задан: 30 July 2011 21:37
0
ответов

Как добиться максимальной скорости от SSE?

Какие настройки лучше всего подходят для таких вещей, как MXCSR? Какой режим округления самый быстрый? На каких процессорах? Быстрее ли включить сигнализацию NaN, чтобы я получал информацию, когда вычисление дает нан, или ...
вопрос задан: 30 July 2011 13:39
0
ответов

В многоядерных системах x86 реализованы ли мьютексы с использованием инструкции LOCK'd?

В сборке x86 есть префикс LOCK, который можно применить к инструкции, чтобы сделать ее атомарной. Это атомарность по всем ядрам? Какова обычная задержка? Для обычного мьютекса, что ...
вопрос задан: 29 July 2011 02:19
0
ответов

Изменить режим округления с плавающей запятой

Как наиболее эффективно изменить режим округления * для чисел с плавающей запятой IEEE 754? Переносная функция C была бы хороша, но решение, которое использует сборку x86, тоже подойдет. * Я имею в виду ...
вопрос задан: 29 July 2011 01:37