Domanda

qualcuno sa come ottenere le statistiche attuali della scheda madre, del processore o della temperatura HD?
In GNU / Linux, so che potrei usare qualcosa come hddtemp o sensord per ottenere le informazioni e poi analizzarle ... ma in Windows: come posso fare questo? E, può essere fatto con C # o Java o qualsiasi altro linguaggio di programmazione di alto livello?
Grazie!

È stato utile?

Soluzione

Il problema con la temperatura e altri sensori di monitoraggio è che non esiste un protocollo comune a livello hardware, né driver che consentono di recuperare tali informazioni con API comuni.

Software come già menzionato SpeedFan e HWMonitor (dai produttori di utility CPU-Z) lavorare catalogando scrupolosamente i vari sensori e controller di bus e implementando i protocolli corrispondenti, di solito usando un driver in modalità kernel per accedere ai dispositivi SMBus.

Per incorporare questa funzionalità nel proprio software, è possibile sviluppare questa funzionalità da soli (possibilmente riducendo la quantità di lavoro adattandola al proprio hardware specifico e utilizzando il codice Linux da www.lm-sensors.org come riferimento) oppure l'acquisto di una biblioteca commerciale che lo implementa. Uno, utilizzato da HWMonitor, è disponibile qui .

buona fortuna

Altri suggerimenti

Direi che quando sono presenti le giuste configurazioni, può essere superiore a quella di Windows.

http://www.lm-sensors.org/ è ciò che fa tutto il lavoro . L'ho collegato a RRDgraph & amp; Munin e io stavamo monitorando la temperatura della mia stanza per un periodo di quasi un anno e avevamo dei bei grafici. Mi ha anche mostrato che il mio fan della CPU si stava lentamente esaurendo, e ho potuto vedere la linea inclinata verso il basso per un lungo periodo e sapere che stava uscendo.

http: //www.lm-sensors .org / browser / lm-sensori / trunk / doc / developers / applicazioni è ciò che desideri.

(oh aspetta, non ci riesco. Il tuo on * nix vuole farlo su Windows. Mio male :( ..um .. beh. buona fortuna. Forse lascio questo qui nel caso in cui qualcuno trovi il tuo post durante la ricerca al contrario)

Quando ho usato Windows, tutto ciò che ricordo è Ye 'Old Motherboard Monitor (Fuori produzione) . L'articolo di Wiki afferma che esiste speedfan e che sembra l'opzione migliore. A livello di programmazione, suppongo che dovrete trovare le specifiche hardware e scavare attraverso l'API di Windows e gli stackload di offset di indirizzi bus arbitrari.

Come suggerisce AndrewJFord, questi metodi variano da fornitore a fornitore, anzi da parte a parte, ma farò alcune generalizzazioni se va bene.

  1. Per quanto ne so tutti gli attuali processori tradizionali di Intel, AMD e IBM hanno sensori termici integrati con API esposte note per la lettura di questi dati. Non sono un esperto di queste API, quindi non so quanto siano simili, ma sarei sorpreso se le API di Intel e AMD sono così diverse. Se fossi in te cercherei uno "strumento di gestione del sistema" open-source (ce ne sono alcuni scritti come Apple Widget a proposito) e vedrei come lo fanno.
  2. Le schede madri variano moltissimo, alcune hanno un ampio senesoring termico, altre nessuna e tutte avranno API abbastanza diverse. Comincerei contattando il personale di supporto dell'azienda che fa la scelta preferita.
  3. In generale, credo che solo i dischi SAS 15krpm di fascia molto alta abbiano sensori termici integrati, so che alcuni sistemi di fascia media hanno sensori collegati al loro case sull'hub e segnalano ciò al mobo. Davvero non sono sicuro di come ottenere queste informazioni, ma ricomincerei parlando con le stesse persone della domanda sopra.

Ora sono un grande utente HP e tutto il loro kit è strumentato da qualcosa chiamato "Insight Management Agents", di cui esistono versioni disponibili per Windows e la maggior parte di Linux. Ciò che fanno è raccogliere tutte le informazioni di sistema da tutti i loro sensori (proc, memoria, mobo, ventole, dischi ecc.) Ed esporle tramite un'API di polling basata su SNMP o tramite un'interfaccia SNMP / SMTP / MAPI basata su avvisi. Oserei dire che IBM / Dell ecc avranno le loro versioni ugualmente buone e funzionalmente simili ma non le conosco dispiaciute. Se le tue macchine sono "off-brand" / made-from-kit o non hai alcun controllo, non sono a conoscenza di alcun singolo metodo per ottenere facilmente tutte queste informazioni.

Spero che questo sia stato di qualche aiuto.

Phil.

Questo varierà un po 'a seconda del tuo hardware. Una volta capito dal tuo fornitore di hardware se hai sensori sulla tua scheda madre,  potresti esaminare SNMP e il MIB HOST-RESOURCE.

Utilizzare l'Installazione guidata componenti di Windows in Strumenti di gestione e monitoraggio per installare SNMP. Quindi dovresti essere in grado di chiedere alla tua finestra di Windows molte informazioni utilizzando software di gestione dei sistemi standard come OpenView o Nagios.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top