Я бы хотел использовать аппаратный счетчик производительности, в частности, процессоры x86, чтобы получать промахи в кэше или неверное предсказание переходов. Счетчики производительности широко используются в продвинутых профилировщиках, таких как Intel
Является ли функция уничтожения в Linux синхронной? Скажем, я программно вызываю функцию kill, чтобы завершить процесс, она вернется только тогда, когда предполагаемый процесс будет завершен, или просто отправит ...
mov eax, 0x01 mov ecx, 0x02 div ecx ; Делим AX/CX, сохраняем остаток в DX cmp dx, 0 je OddNumber int 80h Когда я пытаюсь разделить 1/2, вместо того, чтобы перейти к метке OddNumber, она ... ..
Я наткнулся на множество онлайн-ресурсов о сборке x86. Однако перед тем как начать, я хочу получить отзывы от других. Есть ли какие-либо видеоресурсы, специально предназначенные для программирования на ассемблере x86? ...
Рассмотрение операторов SSE CMPORDPS - упорядоченное сравнение упакованных одиночных игр
CMPUNORDPS - неупорядоченный сравнить упакованные одиночные игры Что значит «упорядоченный» и «неупорядоченный»? Я искал эквивалентные инструкции в ...
Я пытаюсь запустить приложение .NET 3.5 WinForms на Win7 x64. Приложение использует NHibernate и System.Data.OracleClient для доступа к базе данных Oracle. Клиент Oracle 32-битный. Когда ...
Например, я использую 64-разрядную версию Windows 7, но, похоже, все лучшие ресурсы для изучения сборки языки говорят о x86. Если написание x86 на x64 возможно, то как лучше всего ...
Я хочу получить циклы ЦП в определенной точке. Я использую эту функцию в этот момент: static __inline__ unsigned long long rdtsc (void)
{unsigned long long int x; __asm__ volatile (".byte 0x0f, ...
Я работаю над кодом обнаружения процессора и общего обнаружения среды для моей хобби ОС. Бывают ли случаи, когда CPUID нужно вызывать несколько раз? То есть, если система имеет несколько ядер, нужно ли ...
Здравствуйте, я пытаюсь использовать ASM в небольшой программе D: asm
{mov AX, 12h; int 10h;
} У меня есть сообщение: "конец инструкции" из двух строк в инструкции asm. Я не могу исправить ...
Я ищу библиотеку дизассемблера Java x86, которая должна иметь следующие функции: Дизассемблирование кода X86
Описание команд X86 с помощью классов и объектов Java
Классы команд должны принимать ...
Часто я слышу людей вокруг себя, которые любят дискутировать о написании на ассемблере, и это одна из тех причин, по которым я тоже хочу научиться писать на нем. В настоящее время я изучаю ассемблер и C ...
Всегда ли mmap (когда вызывается с MAP_ANONYMOUS, то есть для выделения памяти) возвращает больший адрес памяти, чем предыдущий вызов? Если нет, то есть ли способ заставить его возвращать более высокий адрес ...
Согласно этому сайту, можно использовать переменные типа volatile sig_atomic_t внутри обработчика сигналов. Теперь мой вопрос, будет ли что-то вроде следующего кода по-прежнему атомарным и, таким образом ...
Я хочу знать, какие функции стандартной библиотеки C используют malloc и free под капотом. Мне показалось, что printf будет использовать malloc, но когда я тестировал программу с valgrind, я заметил, что ...
Я знаю, как переопределить одну библиотеку с помощью LD_PRELOAD, например, следующим образом. LD_PRELOAD =. / Getpid.so ./testpid Теперь у меня вопрос, как переопределить несколько файлов. Скажем, я хочу переопределить оба getpid ...
Я реализовал свой собственный malloc и бесплатно с помощью mmap. Теперь, в отличие от free, munmap также принимает в качестве параметра длину, поэтому я помещаю длину в качестве дополнительной информации в отображаемую память. Код ...
Недавно я узнал, что Фабрис Беллард создал реализацию QEMU (более или менее, как вы поняли) на JavaScript с помощью эмуляция i586. Это вызвало у меня интерес, так как я всегда был очарован ...
Я пишу код, используя встроенные функции C для инструкций Intel AVX. Если у меня есть упакованный двойной вектор (a __m256d), то каков будет наиболее эффективный способ (т.е. наименьшее количество операций) для хранения ...
Кто-нибудь может дать мне некоторую информацию о косвенных вызовах функций в сборке x86, то есть таких инструкциях, как call * Reg Итак, где адрес функции этикетка хранится в реестре. Каким-то образом я ...
Позвольте мне пропустить введение и перейти к хорошей части.
Я читаю «Справочник этичного хакера» и пробую пример кода (около p175). -------------------------------------------------- --------------...
В последнее время я пишу на ассемблере x86 (для развлечения) и мне стало интересно, действительно ли строковые инструкции с префиксом rep имеют преимущество в производительности на современных процессорах или они просто...
У меня есть небольшой кусок (x86) ассемблера, который я пытаюсь понять, что он делает. ... 6: 81 ec 00 01 00 00 sub $0x100, %esp c: 31 c9 xor %ecx , %ecx e: ...
При запуске программы вы можете передавать параметры, например $ myProgram par1 par2 par3 В C вы можете получить доступ к этим параметрам, посмотрев на argv, int main (int argc, char * argv []) {char * aParameter = ...
У меня есть приложение, написанное на чистом C, смешанное с некоторыми функциями, содержащими чистый ASM. Naked attribute недоступен для x86 (почему? почему?!), а мои asm-функции не любят, когда prologue и ...
Отрывок из статьи Википедии о расширении физического адреса: аппаратная архитектура процессора x86 дополнена дополнительными адресными строками, используемыми для выбора дополнительной памяти, так физически ...
Я использую следующие типы для создания новой функции во время выполнения: typedef int (* pfunc) (int); объединение funcptr {pfunc x; байт * y;
}; Это позволяет мне писать инструкции в y, а затем вызывать ...
У меня есть два макроса, один написан на ассемблере, а другой на C. Второй макрос использует первый макрос. Однако я также хочу написать второй макрос на ассемблере с volatile, чтобы я мог контролировать его ...