-1

Спасибо, что прочитали этот вопрос.Адресные пространства для ПЗУ и поиск виртуального адреса определенных файлов

Я очень новичок в архитектуре рук и компьютеров в целом, так что извините, если это основной вопрос.

Я потратил много времени на чтение и изучение MMU и перевода виртуального на физический адрес. Я также узнал об адресных пространствах. Просто чтобы убедиться, что все периферийные устройства io, такие как Ethernet и USB, имеют собственные адреса, а также внешнюю RAM и ПЗУ? Поэтому я хотел знать значения адреса специально, поэтому я читаю этот PDF-документ, здесь: http://infocenter.arm.com/help/topic/com.arm.doc.den0001c/DEN0001C_principles_of_arm_memory_maps.pdf, но это очень запутанно. Я не могу четко видеть, где он говорит точное адресное пространство для ПЗУ, и адресное пространство, которое я нашел, не составляет до 128 ГБ, например, на некоторых телефонах для рук.

Можете ли вы помочь мне разобраться во всем этом? Неужели я все это неправильно понял? И как узнать точные адреса для всех периферийных устройств, ОЗУ и ПЗУ, поэтому я могу выполнять некоторые функции Load and Store для этих адресов в моих кодах. Также как вы узнаете Виртуальный адрес определенных файлов и документов, если я собираюсь запутать кодирование одного из моих старых телефонов. Таким образом, для адреса eample 0x00BA FFFF до 0x0AFF FFFF был для определенного аудиофайла. Я многому научился, изучая таким образом.

Еще раз спасибо,

Will Smith

+0

Это на самом деле не является подходящим форумом для такого рода вопросов. Я бы предложил [*** Reverse Engineering ***] (http://reverseengineering.stackexchange.com/) в сети SE, но это может быть и не совсем правильным. Взгляните на сети [* all the Stack Exchange *] (http://stackexchange.com/sites) и попробуйте найти что-то более подходящее, связанное с принципами и архитектурой памяти. Кроме того, я взглянул на PDF, это действительно не так сложно понять. Напишите мне ([email protected]), если хотите, но я могу быть замедленным ответить, я даже не должен быть здесь! лол. – SpYk3HH

+0

Игнорируйте эту бумагу, это _suggestion_ того, как некоторые системные архитекторы в ARM Ltd. считают, что дизайнеры SoC должны выкладывать свои карты памяти, не более того. Вам нужно найти справочное руководство для фактического SoC, с которым вы имеете дело. В последнем случае обратите внимание, что, за исключением, возможно, флеш-памяти NOR, вы вряд ли увидите «файл» непосредственно в вашем физическом адресном пространстве. Получение на хранение обычно связано с разговорами с некоторыми периферийными устройствами (флеш-память/MMC/NAND/и т. д. контроллер), который будет передавать данные из носителя данных позади него. – Notlikethat

ответ

1

ARM делает процессорных ядер они не делают чипы. У них есть или есть несколько периферийных устройств, которые вы могли бы, но у поставщиков чипов обычно есть свои собственные. Точка, даже если у них одно и то же ядро, чипы от разных производителей чипов не имеют одинаковой карты памяти, гораздо меньше периферийных устройств и т. Д. Я не читал вашу ссылку (плохая идея поместить такие ссылки в вопросы или ответы как ссылку содержимое не контролируется stackoverflow и может исчезнуть, полностью разрушить вопрос или ответ), но в этом примере карта памяти в конце - всего лишь один пример. Для получения полной физической адресной карты мира для этого чипа или системы требуется чип, а иногда и документация системного поставщика. Не пытайтесь повторно использовать эту карту в другом месте. Информация доступна только для того, чтобы спросить или выкопать ее, иногда защищенной NDA, которую вы можете или не сможете получить. Также обратите внимание, что на ядре может быть больше одной шины, и, без сомнения, в системе имеется более одной шины за пределами ядра, поэтому существует несколько физических адресных пространств. И тогда у вас есть mmu, который с точки зрения адресного пространства просто переводит некоторые из многих верхних бит физического адреса на виртуальный адрес, и в этом режиме процессор/код работает на виртуальном адресе. (все приложения, которые работают в операционной системе, например linux, могут быть, например, скомпилированы для работы по адресу 0x8000, mmu позволяет это так, чтобы все приложения считали, что они имеют одинаковое пространство, но ни один из их физических адресов не сталкивается)

+0

Спасибо за этот ответ, который действительно помогает.Теперь это имеет больше смысла. Просто следующий вопрос об этом ответе, при поиске карты памяти для этого поставщика я найду карту физической памяти, а затем использование этого в моем коде не будет проблемой? Или мне нужно найти виртуальные адреса для работы? Также я не использовал этот сайт раньше, поэтому надеюсь, что правильно зачислил ваш ответ. Я щелкнул зеленой галочкой. Еще раз спасибо. –

+0

Да, проверка зеленого тика указывает на это как на «ответ». вы можете снять его и выбрать другое, я думаю, если есть лучший ответ. –

+0

зависит от того, кто устанавливает mmu, я предполагаю, что вы хотите понять и теоретически сделать настройку. В любом случае 1) является установкой mmu и активизирована, если не используются физические адреса, mmu обходит. 2), если mmu включен, тогда виртуальное физическое отображение ... на установку mmu. Конечно, можно настроить mmu так, чтобы virtual = физическое для всех или некоторых адресов. каждая запись в таблице mmu является еще одним виртуальным адресным пространством и имеет физическое позади. так что это зависит от вас или от кого-либо из настроек mmu относительно общего отображения. –

 Смежные вопросы

  • Нет связанных вопросов^_^