Хабраиндекс
666,58
сегодня в 09:29

Адреса памяти: физические, виртуальные, логические, линейные, эффективные, гостевые tutorial

Мне периодически приходится объяснять разным людям некоторые аспекты архитектуры Intel® IA-32, в том числе замысловатость системы адресации данных в памяти, которая, похоже, реализовала почти все когда-то придуманные идеи. Я решил оформить развёрнутый ответ в этой статье. Надеюсь, что он будет полезен ещё кому-нибудь.
При исполнении машинных инструкций считываются и записываются данные, которые могут находиться в нескольких местах: в регистрах самого процессора, в виде констант, закодированных в инструкции, а также в оперативной памяти. Если данные находятся в памяти, то их положение определяется некоторым числом — адресом. По ряду причин, которые, я надеюсь, станут понятными в процессе чтения этой статьи, исходный адрес, закодированный в инструкции, проходит через несколько преобразований.



На рисунке — сегментация и страничное преобразование адреса, как они выглядели 27 лет назад. Иллюстрация из Intel 80386 Programmers's Reference Manual 1986 года. Забавно, что в описании рисунка есть аж две опечатки: «80306 Addressing Machanism». В наше время адрес подвергается более сложным преобразованиям, а иллюстрации больше не делают в псевдографике.
9361
245
Atakua 116,7
27 октября в 09:27

Разработка трехмерных игр для Windows 8 с помощью C++ и Microsoft DirectX перевод



Разработка игр — постоянно актуальная тема: всем нравится играть в игры, их охотно покупают, поэтому их выгодно продавать. Но при разработке хороших игр следует обращать немало внимания на производительность. Никому не понравится игра, «тормозящая» или работающая рывками даже на не самых мощных устройствах.
В этой статье я покажу, как разработать простую футбольную 3D игру с использованием Microsoft DirectX и C++, хотя главным образом я занимаюсь разработкой на C#. В прошлом я довольно много работал с C++, но теперь этот язык для меня уже не столь прост. Кроме того, DirectX для меня является новинкой, поэтому эту статью можно считать точкой зрения новичка на разработку игр. Прошу опытных разработчиков простить меня за возможные ошибки.
+27
16502
197
saul 122,7
23 октября в 09:22

Критерий выгодности подстановки и динамическая профилировка

image

Продолжаю тему межпроцедурных оптимизаций, введение в которую можно найти в предыдущем посте. Сегодня хочется немного порассуждать о подстановке функции (inlining) и о том, как подстановка влияет на производительность приложения.
+28
4717
65
andrei_an 34,9
16 октября в 09:28

Виртуализация²

В предыдущей статье я рассказал об Intel® VT-x и расширениях данной технологии для увеличения эффективности виртуализации. В этой статье я расскажу о том, что предлагается тем, кому готов сделать ещё один шаг: запускать ВМ внутри ВМ — вложенная виртуализация.


Источник изображения

+15
9462
102
Atakua 116,7
15 октября в 09:47

В эмулятор Android добавлена поддержка Intel х64

Разработчики приложений под Android получили возможность тестировать свои программы на 64-битной платформе Intel.

На прошлой неделе Google добавил 64-битные образы для эмулятора Android под Windows, Linux и Mac OS. Образы доступны для скачивания на сайте Android для разработчиков. 64-битные Android приложения могут адресовать более 3 Гб оперативной памяти, кроме того, им доступны дополнительные процессорные регистры.

Добавим, что не менее ожидаемого эмулятора новой архитектуры ARMv8 пока выпущено не было.
14 октября в 09:15

Intel® Parallel Studio XE 2015 — разговор о новых именах и «фишках»

26 августа 2014 года вышла очередная новая версия пакета инструментов Parallel Studio – 2015. О нововведениях предыдущей версии мы писали почти год назад, а теперь самое время обзорно рассказать о том, что появилось в последнем релизе.
Не так давно я пытался пролить свет на запутанные имена программных продуктов Intel в соответствующем посте, но добрые ребята из маркетинга опять всё переиначили. Итак, знакомьтесь с новой философией в названиях:

+16
3947
19
ivorobts 26,3
10 октября в 09:44

Приглашаем в интернет вещей: Intel IoT Roadshow едет в Москву!



Хотите получить плату Intel Galileo и уже сейчас начать писать приложения для интернета вещей? Тогда приходите на IoT Roadshow! Это серия тренингов-хакатонов, посвященных изучению возможностей Intel Galileo и разработке решений на ее основе. Мероприятие стартует субботним утром 22 ноября в DI Telegraph с подробного тренинга по работе с платой. Далее последует хакатон, по итогам которого 3 лучших проекта получат поддержку со стороны Фонда Сколково и призы от Intel.
9 октября в 09:16

Чего нам ждать от 14 нанометров?


То, о чем так долго говорила Intel, наконец, случилось – на рынок выходят процессоры нового поколения Broadwell, выполненные по технологии 14 нм. В ближайшее время мы уже увидим первые реальные устройства на базе Broadwell, а пока у нас возможность, основываясь на достоверной информации из первых рук, всесторонне изучить вопрос: что же принесут нам эти пресловутые 14 нанометров?
+57
59521
89
saul 122,7
7 октября в 08:59

Виртуализация¹

В предыдущей части я рассказал о трёх режимах IA-32: защищённом, VM86 и SMM. Хотя их и не принято связывать с виртуализацией, они служат для создания изолированных окружений для программ, исполняемых на процессоре. В этой статье я опишу «настоящую» технологию виртуализации Intel® VT-x. Я хочу показать, как теория эффективной виртуализации проявляется в каждом аспекте её практической реализации.



На КДПВ: Запущенная под управлением Ubuntu Linux программа Oracle VirtualBox, в которой запущена операционная система MS Windows XP, в которой исполняется симулятор Bochs, в котором запущена операционная система FreeDOS, в котором запущен симулятор MYZ80 для процессора Z80, в котором загружена операционная система CP/M (в полноэкранном режиме).
+30
17253
174
Atakua 116,7
3 октября в 09:24

Летняя школа Intel 0x7DE глазами ее студентов


В блоге Intel мы постоянно и по возможности исчерпывающе рассказываем о жизни летней студенческой школы, вот уже который (а конкретно – юбилейный, пятнадцатый) год проводящейся на базе компании: делаем анонсы, описываем программу, ведем репортажи с мероприятий. Но на этот раз мы о ней ничего рассказывать не будем. Не потому, что нам надоела эта тема – просто сейчас мы хотим предоставить трибуну самим участникам школы 2014 года. Итак, вот несколько небольших интервью по свежим воспоминаниям.
+12
8661
19
saul 122,7