cpu-architecture- все статьи тега


Зачем нужны целевые буферы ветвей для нерегистрационных инструкций перехода?

Для конвейера этапа MIPS 5 цель ветвления известна на этапе декодирования, потому что ее можно легко извлечь, если смещение ветвления находится в инструкции, а также Вы читаете регистры на этапе декодирования. Таким образом, для неупорядоченного конвейера вы, очевидно, столкнетесь с проблемой с инструкциями типа 'jr', которые могут использовать регистр, который еще не был вычислен. Для таких применений существует четкое использование целевого буфера ветви. Но для инструкции как и "beq", я вижу ...

Что такое ретполин и как он работает?

для того, чтобы смягчить против ядра или кросс-процесс раскрытия памяти (Spectre атаки), ядро Linux1 будет скомпилирован с новой опцией,-mindirect-branch=thunk-extern представил gcc для выполнения косвенных вызовов через так называемый retpoline. это, кажется, недавно изобретенный термин, как поиск Google оказывается только очень недавнее использование (как правило, все в 2018 году). что такое ретполин и как это происходит это предотвратит недавние атаки на раскрытие информации ядра? 1 это н ...

Что Каждый Программист Должен Знать О Памяти?

Мне интересно, сколько из Ульриха Дреппера Что Каждый Программист Должен Знать О Памяти!--2--> С 2007 года остается в силе. Также я не мог найти более новую версию, чем 1.0 или описки. ...

В чем разница между ловушкой и прерыванием?

в чем разница между ловушкой и прерыванием? Если терминология различна для разных систем, то что они означают на x86? ...

Почему системы x86-64 имеют только 48-битное виртуальное адресное пространство?

в книге я прочитал следующее: 32-разрядные процессоры имеют 2^32 возможных адреса, в то время как текущие 64-разрядные процессоры имеют 48-разрядное адресное пространство Я ожидал, что если это 64-разрядный процессор, адресное пространство также должно быть 2^64. поэтому мне было интересно, в чем причина этого ограничения? ...

Как рассчитывается загрузка ЦП?

на моем рабочем столе у меня есть небольшой виджет, который говорит мне о моем текущем использовании процессора. Он также показывает использование для каждого из моих двух ядер. Я всегда задавался вопросом, как процессор вычисляет, сколько его вычислительной мощности используется? Кроме того, если процессор зависает, делая некоторые интенсивные вычисления, как он может (или что-то еще обрабатывает эту активность) изучить использование, не зависая также? ...