The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Как прочесть регистры микропроцессора"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как прочесть регистры микропроцессора"  
Сообщение от freem4n (ok) on 13-Сен-07, 10:57 
Всем привет.

Есть задача написать модуль ядра. Одна из функций должна читать регистры микропроцессора.
Проц - PXA 270. Как это можно это сделать? Есть ли какие-то функции ядра для этого? Я нашел rdmsr, но не понимаю как ей пользоваться. Пытался прочесть регистр EIP на x86 проце результат 0x00000000, что явно не правильно.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Как прочесть регистры микропроцессора"  
Сообщение от Av (??) on 13-Сен-07, 16:27 
1) используй ассемблер.
2) какие регистры? rdmsr - команда асма чтения msr регистров, а не РОНов.
3) если РОН, то на x86 в gcc:
   __asm__ volatile ("movl %%eax,%0":"=m"(reg.eax));
4) EIP так не прочесть, только через костыли... типа вызов функции и чтение из стека cs,eip...
  


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Как прочесть регистры микропроцессора"  
Сообщение от freem4n (ok) on 13-Сен-07, 17:19 
>1) используй ассемблер.
>2) какие регистры? rdmsr - команда асма чтения msr регистров, а не
>РОНов.
>3) если РОН, то на x86 в gcc:
>   __asm__ volatile ("movl %%eax,%0":"=m"(reg.eax));
>4) EIP так не прочесть, только через костыли... типа вызов функции и
>чтение из стека cs,eip...
>

Про асму на x86 понятно. Но я не знаю каков синтаксис асмы под этот проц.
Я надеялся что есть какая-либо функция ядра для чтения регистров процессора или вывода сведений о проце.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Как прочесть регистры микропроцессора"  
Сообщение от jd (??) on 14-Сен-07, 03:56 
>Про асму на x86 понятно. Но я не знаю каков синтаксис асмы
>под этот проц.
>Я надеялся что есть какая-либо функция ядра для чтения регистров процессора или
>вывода сведений о проце.

- Довольно странно пытаться что-то делать на таком низком уровне (с регистрами), не зная синтаксиса ассемблера для данного процессора. Должна же быть какая-то документация по нему. Регистры-то, которые вы хотите прочитать, вам известны?
- Инструкция MOV есть в большинстве (если не во всех) процессоров, так что предложенный выше код можно попробовать, изменив название регистра и, возможно, размер.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Как прочесть регистры микропроцессора"  
Сообщение от freem4n (??) on 18-Сен-07, 17:47 
>- Довольно странно пытаться что-то делать на таком низком уровне (с регистрами),
>не зная синтаксиса ассемблера для данного процессора. Должна же быть какая-то
>документация по нему. Регистры-то, которые вы хотите прочитать, вам известны?

За нормальную документацию надо заплатить, фирма этого делать не будет(бюрократия, мля).

>- Инструкция MOV есть в большинстве (если не во всех) процессоров, так
>что предложенный выше код можно попробовать, изменив название регистра и, возможно,
>размер.

Код еще не пробовал, но обязательно попробую.

Прочел книгу Лова "Программирование Ядра Линукс". Все в корне пересмотрел, спасибо Michelnok`у.
Так что сейчас пока вопрос отпал, но думаю придется все равно возвращаться к этому и разбираться. Будут результаты, сделаю сюда пост.

Всем спасибо.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Как прочесть регистры микропроцессора"  
Сообщение от Michelnok (ok) on 19-Сен-07, 17:19 
>
>За нормальную документацию надо заплатить, фирма этого делать не будет(бюрократия, мля).

Странно. По PXA 260 еще можно было скачать бесплатно. Ну разве что приходилось регистрироваться, придумывая мегасекьюрный мегапароль.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Как прочесть регистры микропроцессора"  
Сообщение от Michelnok (ok) on 19-Сен-07, 17:20 
>>
>>За нормальную документацию надо заплатить, фирма этого делать не будет(бюрократия, мля).

И вообще, это же ARM-совместимый процессор, если мне память не изменяет. На arm.com должна быть полная документация по набору команд.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру