• HWall – ny Linux-app vill ge full koll på datorns hårdvara

    Hur varm är processorn egentligen? Hur snabbt arbetar kärnorna, vad gör grafikkortet och börjar hårddisken visa tecken på problem? Det nya Linux-programmet HWall samlar både hårdvaruinformation och sensordata i ett och samma verktyg – och kan dessutom varna när något börjar bli för varmt eller belastat.

    Linux har länge haft mängder av verktyg för den som vill hålla ett öga på datorns hälsa. Program som visar processorbelastning, minnesanvändning och temperaturer är inget nytt. Däremot är det betydligt ovanligare med ett enda program som både kan beskriva vilken hårdvara datorn innehåller och samtidigt följa sensorer i realtid.

    Det är precis vad det nya open source-projektet HWall försöker göra.

    Programmet är skrivet i programmeringsspråket Rust och utvecklat specifikt för Linux. Tanken är att ge användaren en samlad bild av datorns komponenter, temperaturer, fläktar, lagringsenheter, nätverk och andra mätvärden.

    HWall finns både med ett grafiskt gränssnitt byggt med GTK 4 och som ett interaktivt terminalprogram.

    Inspirerat av HWiNFO för Windows

    Utvecklaren bakom HWall uppger att sättet att organisera sensorer i en hierarkisk struktur är inspirerat av HWiNFO64, ett populärt program för hårdvaruinformation och diagnostik under Windows.

    Ambitionen verkar alltså vara större än att bara visa några grafer över processor- och minnesanvändning.

    HWall försöker istället samla information från flera delar av Linux-systemet, bland annat Linux-kärnan, datorns firmware, installerade hårdvarudrivrutiner och vissa externa verktyg.

    Resultatet kan bli en ganska detaljerad bild av vad som faktiskt händer inne i datorn.

    Temperaturer, fläktar och spänningar

    Beroende på vilken hårdvara datorn har kan HWall bland annat visa:

    • processortemperaturer
    • temperaturer på moderkortet
    • fläkthastigheter
    • elektriska spänningar
    • processorbelastning
    • klockfrekvenser
    • aktivitet på lagringsenheter
    • nätverkstrafik
    • effekt- och energivärden

    Programmet håller dessutom reda på mer än bara det aktuella värdet.

    För varje sensor kan HWall registrera nuvarande, lägsta, högsta och genomsnittliga värde, tillsammans med hur många mätningar som har genomförts.

    Det gör det exempelvis möjligt att se att processorn för tillfället håller 55 grader, men tidigare under dagen varit uppe i 87 grader.

    HWall skiljer också mellan sensorer som är aktuella, inaktuella, otillgängliga eller helt offline. Det är viktigt eftersom ett värde som visas på skärmen annars skulle kunna misstolkas som en färsk mätning trots att sensorn slutat rapportera.

    Mäter hur snabbt processorn faktiskt arbetar

    En särskilt intressant funktion finns på vissa x86-baserade datorer.

    Moderna processorer ändrar hela tiden sin arbetshastighet beroende på belastning, temperatur och energisparfunktioner. Den frekvens som operativsystemet begär behöver därför inte alltid motsvara den frekvens som processorn faktiskt har arbetat med.

    HWall kan på kompatibla system använda processorernas så kallade APERF- och MPERF-räknare för att uppskatta den effektiva frekvensen.

    Det går både att visa ett genomsnitt och separata värden för varje logisk processor.

    Det kan ge en mer realistisk bild av hur processorn verkligen arbetar än att enbart läsa den rapporterade klockfrekvensen.

    Historik istället för bara ögonblicksbilder

    En temperaturmätning säger egentligen ganska lite om man bara ser värdet just nu.

    Är 80 grader normalt? Har temperaturen precis stigit? Har den legat där i flera timmar?

    Därför lagrar HWall också historiska sensordata i minnet.

    Standardinställningen är endast en minuts historik, men lagringen kan konfigureras för betydligt längre perioder – upp till 24 timmar.

    Historiken kan visas som interaktiva diagram där användaren bland annat kan zooma, panorera, undersöka tidpunkter och välja specifika tidsperioder.

    Det gör funktionen användbar vid exempelvis felsökning.

    Om en dator plötsligt börjar gå långsamt kan man i efterhand undersöka om processortemperaturen steg kraftigt, om belastningen låg på 100 procent eller om någon annan sensor förändrades samtidigt.

    Historiken kan även exporteras som CSV eller JSON Lines för vidare analys i andra program.

    En mycket kort mätintervall kombinerad med lång historik innebär förstås att programmet måste lagra och bearbeta betydligt fler datapunkter, vilket i sin tur ökar användningen av processor och arbetsminne.

    Kan varna innan problemen blir allvarliga

    HWall kan också användas som ett enklare övervakningssystem.

    För enskilda sensorer går det att sätta gränsvärden för när en varning eller ett kritiskt larm ska utlösas.

    Det behöver inte innebära att ett larm aktiveras så fort processorn råkar passera exempelvis 90 grader under några sekunder.

    Programmet har inställningar för bland annat varaktighet, hysteresis och cooldown.

    Det innebär förenklat att ett värde kan behöva ligga över en viss gräns under en bestämd tid innan larmet aktiveras. På så sätt minskar risken för onödiga varningar vid korta temperatur- eller belastningstoppar.

    När villkoren uppfylls kan HWall skicka en skrivbordsnotifikation.

    Kartlägger datorns komponenter

    HWall är samtidigt mer än ett sensorprogram.

    Det kan skapa ett hårdvaruregister som bland annat omfattar:

    • processor
    • arbetsminne
    • grafikkort
    • lagringsenheter
    • nätverkskort
    • USB-enheter
    • PCI-enheter
    • batterier
    • firmware
    • vissa säkerhetsenheter

    Med hjälp av externa verktyg kan ännu mer information hämtas.

    SMART- och NVMe-data kan exempelvis ge information om SSD- och hårddiskars hälsa, varningsindikatorer och olika livstidsvärden.

    Datorer med Nvidias proprietära Linux-drivrutin kan lämna ytterligare grafikkortsinformation via verktyget nvidia-smi.

    HWall kan också använda dmidecode för att få fram mer information om bland annat moderkort, BIOS eller UEFI, processorsocklar, TPM och installerade minnesmoduler.

    Vissa sådana uppgifter kan dock kräva högre behörighet i Linux.

    Linux-kärnan avgör vad som går att läsa

    Hur mycket information HWall faktiskt kan visa beror i hög grad på datorns hårdvara och Linux-stöd.

    För många temperatur-, fläkt- och spänningssensorer använder Linux systemet hwmon. Sensorerna blir normalt tillgängliga genom filer under:

    /sys/class/hwmon

    HWall läser den information som Linux redan tillhandahåller där.

    Programmet försöker däremot inte själv ladda sensordrivrutiner och kräver inte administratörsbehörighet för normal övervakning.

    Det betyder att två datorer med HWall kan visa helt olika mängder information.

    Resultatet beror bland annat på vilket moderkort som används, vilket sensorchip som sitter på kortet, vilken Linux-kärna som körs och om det finns en fungerande drivrutin.

    Exempel på kärnmoduler som kan göra moderkortssensorer tillgängliga är nct6775, it87, asus-ec-sensors, asus_wmi_sensors, w83627ehf och f71882fg.

    Om Linux inte kan läsa sensorn kan inte heller HWall trolla fram informationen.

    HWall ändrar inte datorns hårdvara

    En viktig detalj är att HWall är konstruerat som ett skrivskyddat övervakningsverktyg.

    Programmet försöker inte förändra datorns inställningar.

    Det styr alltså inte fläktarna, ändrar inte processorernas klockfrekvenser och justerar inte elektriska spänningar.

    HWall koncentrerar sig istället på att identifiera, läsa och presentera den information som Linux och de externa hjälpverktygen redan kan tillhandahålla.

    Det minskar också risken för att ett övervakningsprogram av misstag ändrar en känslig hårdvaruinställning.

    Fungerar även helt i terminalen

    För servrar och användare som föredrar kommandoraden finns också en terminalversion.

    Den kan skapa vanliga läsbara rapporter, filtrera sensorer efter kategori, exportera information som JSON och kontinuerligt skicka sensordata som JSON Lines.

    Det gör HWall potentiellt användbart även i automatiserade system.

    Ett skript skulle exempelvis kunna läsa temperaturer från HWall och sedan lagra dem i en databas eller skicka dem vidare till ett separat övervakningssystem.

    Terminalgränssnittet har dessutom flera interaktiva vyer, där användaren kan växla mellan hårdvaruinformation, sensorer eller en kombination av båda.

    Har ett litet HTTP-API

    En annan intressant möjlighet är HWall:s inbyggda HTTP-baserade JSON-API.

    Genom CLI-kommandot serve kan programmet tillhandahålla exempelvis aktuella sensormätningar, en sammanställning av systemstatus eller datorns hårdvaruinventering via nätverket.

    Servern kan bindas till en konfigurerbar lokal adress.

    Det öppnar för flera användningsområden.

    En Linux-dator skulle exempelvis kunna köra HWall i bakgrunden medan temperaturer och annan information visas på en separat dator, en webbpanel eller någon typ av lokal övervakningsskärm.

    Fortfarande ett mycket ungt projekt

    HWall befinner sig fortfarande i ett tidigt utvecklingsskede.

    Det innebär att man inte bör förvänta sig samma mognad som hos verktyg som utvecklats under många år.

    Vilken information som kan visas kommer dessutom alltid att begränsas av datorns firmware, Linux-kärnan, drivrutiner, behörigheter och vilka externa program som är installerade.

    Utvecklaren rekommenderar också försiktighet med att köra flera lågnivåprogram för hårdvaruövervakning samtidigt.

    Anledningen är att vissa drivrutiner kan behöva kommunicera med datorns firmware eller embedded controller varje gång ett sensorvärde läses. Om flera program gör sådana förfrågningar mycket ofta kan det i vissa system skapa problem.

    Måste än så länge kompileras från källkod

    HWall är ännu inte ett program som de flesta användare bara kan installera från distributionens vanliga paketförråd.

    I nuläget finns inga färdiga officiella binärpaket eller distributionspaket.

    Den som vill prova programmet behöver istället bygga det från källkoden.

    Bland kraven finns Rust 1.92 eller senare, utvecklingsfiler för GTK 4.8, pkg-config och en vanlig C-kompilatormiljö.

    Det placerar HWall i kategorin spännande projekt för Linux-entusiaster snarare än ett färdigt verktyg för den breda massan.

    Men idén är intressant.

    Linux har redan i dag nästan all information som behövs för avancerad hårdvaruövervakning. Problemet är ofta att informationen är utspridd mellan /sys, olika kommandoradsverktyg och separata grafiska program.

    Om HWall lyckas samla dessa delar i ett stabilt och lättanvänt gränssnitt kan projektet på sikt bli ett intressant Linux-alternativ för användare som vill ha ungefär samma typ av detaljerade hårdvaruöverblick som program som HWiNFO erbjuder under Windows.

    https://github.com/pulpul-s/HWall

    > TEKNISK FAKTA: HWall
    Program: HWall
    Plattform: Linux
    Licens: Open source
    Programmeringsspråk: Rust
    Grafiskt gränssnitt: GTK 4
    Terminalgränssnitt: Ja, interaktivt TUI/CLI
    Sensordata: Temperaturer, fläktar, spänningar, belastning, klockfrekvenser, lagring, nätverk och effekt
    Linux hwmon: /sys/class/hwmon
    Sensorstatistik: Aktuellt, minimum, maximum och medelvärde
    Historik: Upp till 24 timmar
    Export: CSV, JSON och JSON Lines
    Larm: Varnings- och kritiska gränsvärden med duration, hysteresis och cooldown
    Lagringshälsa: SMART- och NVMe-information
    NVIDIA: Extra GPU-data via nvidia-smi
    DMI-information: Kan kompletteras via dmidecode
    CPU-mätning: Stöd för APERF/MPERF på kompatibla x86-system
    API: HTTP-baserat JSON-API
    Hårdvarustyrning: Nej – HWall arbetar i read-only-läge
    Byggkrav: Rust 1.92+, GTK 4.8, pkg-config och C-kompilator
    $ HWall är fortfarande under tidig utveckling och hårdvarustödet beror på Linux-kärnan, drivrutiner, firmware och tillgängliga sensorer.

Etikett: hwmon

  • HWall – ny Linux-app vill ge full koll på datorns hårdvara

    Hur varm är processorn egentligen? Hur snabbt arbetar kärnorna, vad gör grafikkortet och börjar hårddisken visa tecken på problem? Det nya Linux-programmet HWall samlar både hårdvaruinformation och sensordata i ett och samma verktyg – och kan dessutom varna när något börjar bli för varmt eller belastat. Linux har länge haft mängder av verktyg för den…