» Utilizator
Salut, vizitatorule!

SkullBox este o comunitate formata din programatori si administratori de sisteme sau retele care iti sta la dispozitie cand ai o problema legata de calculatoare. Daca esti un utilizator existent, autentifica-te.

Daca nu te-ai inregistrat inca pe forum, alatura-te noua astfel marind comunitatea si ajutandu-i pe cei care au nevoie de informatii.

Daca te-ai inregistrat dar inca nu ai primit codul de activare, il poti cere aici.




Autentifica-te cu numele de utilizator si parola pentru a putea posta pe forum sau pentru a accesa ariile disponibile doar utilizatorilor inregistrati.
» Promovam
» Parteneri » Statistici
  • 59774 de mesaje.
  • 7153 de topicuri.
  • 1001 de utilizatori.
  •  
  • germaniaservis e ultimul utilizator inregistrat.
[Detalii]

 
SkullBox Forum  |  Development  |  ASM (Moderators: astan, TNick)  |  Topic: Temperatura procesor
Pagini: [1]
Print
Temperatura procesor [1545 afisari]
acidcromaticle
*


Mesaje: 164
OfflineOffline

WWW

Salut! Este cumva vreo adresa din registri procesorului care poate da temperatura acestuia? daca da si se poate sa imi spuneti adresele va rog, intre timp o sa mai caut si eu si daca gasesc o sa postez aici.
Multumesc !
Logged
15-11-2008, 23:39 Twitt ::
TNick
*


Mesaje: 57
OfflineOffline

WWW

Cam tarziu raspuns. hee hee Ai gasit ceva?
Eu n-am incercat, da' am vazut un postin OSDev si m-am interesat... Gasesti ceva in Volumul 3A - System Programming Guide, p1 de la Intel. Sectiunea 13.5(.5).

Nicu
Logged
01-02-2009, 19:02 Twitt ::
acidcromaticle
*


Mesaje: 164
OfflineOffline

WWW

Salut... nu am gasit prea multe, am gasit ceva mai demult Tongue in C parca dar lua din windows temperatura, am inteles ca nu chiar toate procesoarele au senzori de caldura si si daca au cred ca fiecare ar avea adrese diferite unde sunt stocate datele, am observat ca bios-ul meu vede temperatura deci normal ar trebui sa vad la intreruperile BIOS daca nu cumva gasesc ceva instructiuni pentru aflarea acestor date, dar si aici este cam dubioasa treaba ca nu stiu unde gasesc eu instructiuni pentru un anumit bios ?

Daca afli ceva sa ma anunti, o sa pun si eu rezultatele aici daca o sa gasesc ceva.
Logged
02-02-2009, 15:05 Twitt ::
astan
*


Mesaje: 737
OfflineOffline


Trebuie sa citesti anumiti registri MSR. Pentru procesoarele Intel te intereseaza, in principiu, IA32_THERM_STATUS si IA32_THERM_INTERRUPT.
Sa citesti MSR-urile folosesti instructiunea RDMSR (in ring 0)
Logged
02-02-2009, 16:04 Twitt ::
acidcromaticle
*


Mesaje: 164
OfflineOffline

WWW

multumesc astan, o sa ma pun sa incerc .  Peace sign
Logged
03-02-2009, 17:01 Twitt ::
emi
*


Mesaje: 1560
OfflineOffline


Eu stiam ca nu e asa simplu, sunt mai multe variante de cipuri care fac asta, am vazut o data o librarie pentru linux. Dar nu stau sa o caut acum.
Logged
03-02-2009, 22:58 Twitt ::
nosferatu
*


Mesaje: 67
OfflineOffline


Cauti neaparat o adresa?
Daca vrei doar sa afli temperatura procesorului poti incerca realtemp.
Este cel mai bun pt temperatura procesorului si afiseaza foarte precis..
Logged

Cantitatea de inteligenta este constanta pe pamant;;;populatia este in continua crestere.
04-02-2009, 01:00 Twitt ::
acidcromaticle
*


Mesaje: 164
OfflineOffline

WWW

te referi la realtemp din win? daca da atunci nu chiar asta as vrea Big grin eu vroiam locul unde se stocheaza aceste date Big grin
Logged
04-02-2009, 18:43 Twitt ::
TNick
*


Mesaje: 57
OfflineOffline

WWW

Ajuta-ne sa intelegem care e problema. Ca sa citesti efectiv, tot de trebuie sa faci e:

Code:
IA32_THERM_STATUS = 0x019c ; definim constanta

mov ecx, IA32_THERM_STATUS ; rdmsr isi ia argumentul (care MSR trebe citit) in ecx
rdmsr ; instructiunea de citire a unui registru specific unui model (na, ca l-am tradus )
si ai rezultatul in edx:eax. Astan te-a indrumat deja pe calea asta. Ai probleme in a ajunge in ring 0? Ai probleme in a boot-a calculatorul?

Nicu

Logged
04-02-2009, 20:18 Twitt ::
astan
*


Mesaje: 737
OfflineOffline


Ceea ce spun mai jos se aplica in cazul in care folosesti linux.

In linux e si mai simplu sa accesezi informatia respectiva.

Asta pentru ca kernelul contine deja un device care poate fi folosit sa accesezi MSR-urile.

Pentru asta, accesezi (din aplicatia ta userspace) device-ul montat in /dev/cpu/%d/msr (unde %d e minor numer).

Codul de interes, din kernel, pentru respectivul device este in linux/arch/x86/kernel/msr.c:
http://lxr.linux.no/linux+v2.6.28.3/arch/x86/kernel/msr.c

Functia care citeste un registru MSR este in linux/arch/x86/include/asm/msr.h   (native_read_msr_safe(), inline assembly):
http://lxr.linux.no/linux+v2.6.28.3/arch/x86/include/asm/msr.h

Tu, din aplicatia ta, deschizi si citesti /dev/cpu/%d/msr ca si cand ar fi un fisier normal (folosind functiile normale de acces la fisiere: read, write, lseek, etc). Trebuie doar sa te prinzi cum e structurata informatia acolo. Si te prinzi simplu citind sursele de mai sus. Sau cauti pe net surse care acceseaza respectivul device, sunt destule.

Desigur, in orice moment poti sa iti scrii un modul de kernel sa folosesti chiar tu instructiunea RDMSR, si sa iti pasezi informatia in userspace. Dar doar daca vrei. Ai deja suport in kernel, poti sa il folosesti.

Tot nu inteleg ce adresa cauti.
Logged
04-02-2009, 20:37 Twitt ::
acidcromaticle
*


Mesaje: 164
OfflineOffline

WWW

imi cer scuze astan, ce cautam eu ai spus tu mai sus si anume cu IA32_THERM_STATUS doar ca sunt la inceput cu asm-ul, am avut examene si nu am fost foarte atent la ce ai scris. Acum am sapat mai adanc dupa instructiunile date de tine si am gasit ce imi trebuia (partial) pe net, eu ma gandeam ca ar fi o instructiune si pentru amd si pentium Big grin (freak) eu am amd duron Laughing asa ca o sa trebuiasca sa mai caut dar am timp si macar acum stiu cam ce sa caut...

Multumesc mult tuturor, cand o sa reusesc sa termin aplicatia o sa o pun aici, sper sa nu dureze prea mult Big grin
Logged
05-02-2009, 22:03 Twitt ::
Reclama
VIP

Hosting

Mesaje: 25.90
OnlineOnline

WWW
 

   Pe ABCDomenii: 250MB spatiu + 20GB trafic + 5 subdomenii = 0.95 €
 
 

The problem with troubleshooting is that trouble shoots back.
Azi 
Pages: [1]
Print
SkullBox Forum  |  Development  |  ASM (Moderators: astan, TNick)  |  Topic: Temperatura procesor
Jump to: