0
ответов

Является ли приращение целочисленным атомом в x86? [дубликат]

На многоядерной машине x86, скажем, поток, выполняющийся на ядре 1, увеличивает целочисленную переменную a в то же время поток на ядре 2 также увеличивает ее. Учитывая, что начальное значение a равно 0, будет ли это...
вопрос задан: 8 May 2012 17:54
0
ответов

Абсолютная адресация для замены кода времени выполнения в x86_64

В настоящее время я использую некоторую схему замены кода в 32-битном формате, где код, который перемещается в другую позицию, считывает переменные и указатель класса. Поскольку x86_64 не поддерживает абсолютную адресацию, у меня есть ...
вопрос задан: 7 May 2012 12:47
0
ответов

команда для компиляции файлов c с файлами.a

У меня есть несколько файлов.c и один объектный файл.a. Какую команду с gcc я должен использовать, чтобы скомпилировать их в один exe-файл? Если мы используем make-файл, как он будет выглядеть?
вопрос задан: 4 May 2012 18:30
0
ответов

Соглашение о вызовах LLVM для GHC

Вот текст в документе LLVM «langref»: «cc 10» - соглашение GHC Это соглашение о вызовах было реализовано специально для использования компилятором Glasgow Haskell (GHC). Он передает все ...
вопрос задан: 4 May 2012 17:00
0
ответов

Как воспроизвести многопоточное приложение?

Я хочу записать операции синхронизации, такие как блокировки, семпахоры, барьеры многопоточного приложения, чтобы впоследствии воспроизвести записанное приложение с целью отладки....
вопрос задан: 1 May 2012 20:42
0
ответов

Что делает следующая инструкция по сборке: addd -8(%rbp), %xmm0?

Я пытаюсь выяснить, что на самом деле делает инструкция по сборке. Кроме того, я знаю, что %xmm0 - это...
вопрос задан: 1 May 2012 15:40
0
ответов

close ()x86 _64 системный вызов, странное возвращаемое значение

Мой демон xinetd внезапно перестал работать после обновления ядра (с 2.6.24 до 2.6.33 ). Я провел трассировку и нашел это :[...] закрыть (3 )= 0 munmap (0x7f1a93b43000,...
вопрос задан: 26 April 2012 15:28
0
ответов

В чем SSE-инструкции превосходят обычные инструкции

В каких случаях SSE-инструкции x86 -64 (векторные инструкции )превосходят обычные инструкции. Потому что я вижу, что частые загрузки и сохранения, которые требуются для выполнения SSE...
вопрос задан: 25 April 2012 10:08
0
ответов

Использование инструкций SSE с gcc без встроенного ассемблера

Я заинтересован в использовании векторных инструкций SSE x86 -64 с gcc и не хочу использовать какой-либо встроенный ассемблер для тот. Есть ли способ сделать это на C? Если да, то может ли кто-нибудь привести мне пример?
вопрос задан: 25 April 2012 06:52
0
ответов

Как проверить GPU в CentOS Linux

Предполагается, что в Linux GPU можно найти с помощью команды lspci | грэп VGA. Он отлично работает в Ubuntu, но когда я пытаюсь использовать то же самое в CentOS, он говорит, что команда lspci не найдена. Как я могу проверить наличие...
вопрос задан: 25 April 2012 06:12
0
ответов

Почему номера системных вызовов отличаются в amd64 linux?

Я заметил, что системные вызовы x86 int $0x80 и системные вызовы amd64 имеют разные номера. Например, выход sys _— это системный вызов 1 в x86 и системный вызов 60 в amd64. Есть ли (историческая )причина для...
вопрос задан: 23 April 2012 13:41
0
ответов

Можно ли изменить размер страницы виртуальной памяти?

Можно ли изменить размер страницы виртуальной памяти? Я спрашиваю об этом, потому что в части X86_64 статьи MMU в Википедии говорится о разных размерах страниц. Если размер страницы действительно может быть...
вопрос задан: 19 April 2012 20:12
0
ответов

Как обрабатываются прерывания в SMP?

Как обрабатываются прерывания на SMP (симметричных многопроцессорных/многоядерных )машинах? Есть ли только один блок управления памятью или несколько? Скажем, два потока, A и B, работающие на разных ядрах, касаются памяти...
вопрос задан: 19 April 2012 19:22
0
ответов

Стоимость ловушки ошибки страницы

У меня есть приложение, которое периодически (каждые 1 или 2 секунды) берет контрольные точки, разветвляясь. Таким образом, контрольная точка является ответвлением исходного процесса, который просто бездействует, пока его не попросят...
вопрос задан: 19 April 2012 08:00
0
ответов

Ложное совместное использование и атомарные переменные

Когда разные переменные находятся внутри одной и той же строки кэша, вы можете испытать ложное совместное использование, что означает, что даже если два разных потоки (работающие на разных ядрах) обращаются к двум разным...
вопрос задан: 13 April 2012 15:49
0
ответов

Почему инструкция INC x86 не является атомарной? [дубликат]

Я читал, что инструкция INC для x86 не является атомарной. Мой вопрос, как так получилось? Предположим, мы увеличиваем 64-битное целое число на x86-64, мы можем сделать это с помощью одной инструкции, так как инструкция INC работает...
вопрос задан: 11 April 2012 16:03
0
ответов

Преобразование файла llvm.bc в удобочитаемый файл.ll

Как сгенерировать удобочитаемый биткод llvm (расширение.ll)из двоичного файла llvm биткод (расширение.bc)?
вопрос задан: 9 April 2012 08:18
0
ответов

Разница ч/б llvm-ld и llvm-ссылка

В чем разница между llvm-ld и llvm-ссылка? Я полагаю, что llvm-ld выполняет оптимизацию времени компоновки, а llvm-link — нет. Я прав?
вопрос задан: 9 April 2012 07:33
0
ответов

Как когерентность кэша влияет на производительность в этом случае.

Скажем, если ядро ​​A изменяет переменную X, а ядро ​​B считывает эту переменную (X). Конечно, в этом случае протокол когерентности кэша будет обновлять кэш ядра B, потому что X был изменен ядром A...
вопрос задан: 7 April 2012 16:40
0
ответов

Насколько быстро осуществляется доступ к локальным переменным потока в Linux.

Насколько быстро осуществляется доступ к локальным переменным потока в Linux. Из кода, сгенерированного компилятором gcc, я вижу, что он использует регистр сегмента fs. Итак, очевидно, доступ к локальному потоку...
вопрос задан: 28 March 2012 14:46
0
ответов

Инструкция JMP — шестнадцатеричный код

Есть сомнения относительно преобразования шестнадцатеричного кода машинной инструкции JMP. У меня есть абсолютный адрес, на который я хочу перейти, скажем, «JMP 0x400835». Во-первых, разрешено ли это? Если да, то каким будет...
вопрос задан: 22 March 2012 01:58
0
ответов

Таблица связей процессов и таблица глобальных смещений

Я читаю эту статью о PLT (Таблица связей процессов)и GOT (Таблица глобальных смещений). Хотя цель PLT мне ясна, я все еще не понимаю GOT. Из статьи я понял следующее...
вопрос задан: 13 March 2012 16:50
0
ответов

Что такое _GLOBAL_OFFSET_TABLE?

Используя команду nm в Linux для просмотра символов в моей программе, я вижу символ с именем _GLOBAL_OFFSET_TABLE_, как показано ниже. Может ли кто-нибудь уточнить, для чего используется _GLOBAL_OFFSET_TABLE_? ...
вопрос задан: 13 March 2012 14:11
0
ответов

x86_64 выравнивание стека и восстановление без сохранения регистров

Я пишу процедуры обработки прерываний для x86_64. ABI указывает, что перед вызовом функции C я должен выровнять стек до 16 байт. В x86_64 ISA указано, что при входе в ISR мой стек...
вопрос задан: 6 March 2012 21:39
0
ответов

Рандомизация разметки адресного пространства (ALSR) и mmap

Я ожидаю, что из-за рандомизации разметки адресного пространства (ALSR) процесс, разветвленный из другого процесса, будет иметь другие адреса, возвращаемые при вызове mmap. Но, как я выяснил, это не тот случай ....
вопрос задан: 28 February 2012 18:53
0
ответов

Когда sizeof (myPOD) слишком велик для передачи по значению на x64?

Я не ожидаю никакой разницы, когда речь идет о структурах размером до 8 байт, но как насчет больших типов POD? Становится ли передача по значению более дорогой, когда размер типа превышает размер машины ...
вопрос задан: 22 February 2012 13:19
0
ответов

Linux 3.0 x86_64: Когда возникает сигнал SIGSTKFLT?

При каких обстоятельствах (если есть) сигнал SIGSTKFLT будет синхронно активирован ядром под Linux 3.0 на x86_64?
вопрос задан: 17 February 2012 17:37
0
ответов

32-битные указатели с x86-64 ISA: почему бы и нет?

В набор инструкций x86-64 добавлены дополнительные регистры и другие улучшения, помогающие упростить исполняемый код. Однако во многих приложениях увеличенный размер указателя является обузой. Дополнительные неиспользуемые байты ...
вопрос задан: 10 February 2012 19:04
0
ответов

Используют ли разделяемые библиотеки ту же кучу, что и приложение?

Допустим, у меня есть приложение в Linux, которое использует разделяемые библиотеки (файлы .so). У меня вопрос, будет ли код в этих библиотеках выделять память в той же куче, что и основное приложение, или они ...
вопрос задан: 15 January 2012 02:24
0
ответов

Будет ли mmap детерминированным, если ASLR отключен?

Если рандомизация адресного пространства (ASLR) отключена, будет ли у нас детерминированный mmap? Под детерминированным я подразумеваю, что если я буду запускать одно и то же приложение снова и снова с одними и теми же входными данными, я ...
вопрос задан: 14 January 2012 19:47