Переключение порядка байтов на ARM - PullRequest
0 голосов
/ 03 мая 2019

Я слышал, что процессоры ARM могут переключаться между прямым и прямым порядком байтов.Зачем это нужно процессорам?Используется ли он на телефонах Android?

Ответы [ 2 ]

0 голосов
/ 03 мая 2019

В зависимости от процессора может быть возможно переключение порядка байтов на лету.Старые процессоры будут загружаться в состоянии с прямым порядком байтов, и ожидается, что они останутся там.В последнем случае вся конструкция, как правило, будет настроена как с большим, так и с прямым порядком байтов.

Основной причиной поддержки операции со смешанным порядком байтов является поддержка сетевых стеков, в которых базовые наборы данных, которыми манипулируют, являются собственно большими.обратный порядок байт.Это важно для коммутаторов / маршрутизаторов и мобильных базовых станций, где процессор использует четко определенный программный стек, а не работает как устройство приложений общего назначения.

Имейте в виду, что существует несколько различных реализаций больших-дианальное поведение в разных архитектурах ARM, и вам необходимо точно проверить, как это работает на любом конкретном ядре.

0 голосов
/ 03 мая 2019

Вы можете переключать порядковый номер, но вы не сделаете этого после запуска ОС.Это только испортило бы все.Если бы вы собирались сделать это, вы бы сделали это очень рано в последовательности загрузки.К тому времени, когда ваше приложение будет запущено, порядок байтов будет выбран и не будет изменен.

Зачем вам это делать?Единственная реальная причина может быть в том, что вы пишете встроенное программное обеспечение, которое должно иметь дело с большим количеством данных с прямым порядком байтов, или запускаете программу, которая была написана в предположении, что она имеет порядок байтов с прямым порядком байтов и не зафиксирована как независимая от байтов.Данные такого типа, как правило, поступают из приложения x86, которое записывает вещи в своем родном порядке байтов (x86 - младший порядок байтов).Там не так много других причин, чтобы сделать это.Вы увидите, что ARM работает в основном с прямым порядком байтов.

...