안녕하세요.
MSR(model specific register) 를 읽기위해서는 rdmsr, wrmsr 같은 instruction 을 사용하는것으로 알고있습니다.
최근에 저는 AMD (family 15h) 시스템에서, 몇몇 정보를 읽어내려고 하고있는데요.
제가 MSR 레지스터를 어떻게 읽어야하는지 잘몰라서 이렇게 질문을 드리게되었습니다.
출처 : BIOS and Kernel Developer's Guide (BKDG) for AMD Family 15h ...
구체적으로 말씀드리면, MSR 레지스터를
1) Node 별로 읽기
2) cpu core 별로 읽기
를 하려면 어떻게 해야하는지 궁금하네요. 위의 첨부한 그림은 per-node 별로 존재하는 MSR 을 설명하고있습니다.
(사실 이부분도 햇갈리는데.. MSR 은 core 별로 존재하는걸로 알고있었거든요..)
pci configuration address space 에 있는 레지스터에 접근을할땐, Node 별로 어떻게 레지스터를 읽어야하는지 커널에서도 API 들이 제공되는데요
(ex) pci_read_config_dword();
msr 에 대해서는 제 지식이 부족하네요.
답변 기다리겠습니다!
댓글 2
.
msr-smp.c 를 이용하면 되는군요 :-)
그런데 여전히 per-Node, MSR register 란 무엇인지 잘모르겠네요