&xcenter;'s "Puls" widgeten visar den aktuella CPU lasten tillsammans med en graf ”ver den tidigare CPU aktiviteten. Detta uppdateras en g†ng i sekunden „r liknande den respektive monitorn i &warpcenter;.

Displayen kommer grovt s„tt att likna f”ljande:

Den cyanf„rgade delen av grafen representerar "anv„ndarens" last p† systemet, medan den bl†f„rgade delen represents "IRQ" lasten. Den procentsats som skrivs ut i centrum representerar alltid de kombinerade "anv„ndar" och "IRQ" lasterna. Om du k”r det h„r p† ett multi-processor system, kommer du att f† "anv„ndar" graf f”r varje CPU. D„remot, kan du „ven d† att f† endast en "IRQ" graf d„rf”r att per definition, processar &os2; alla interrupt p† den f”rsta CPU'n i systemet. Se anm„rkningerna nedanf”r f”r detaljer om detta.

Notera att du kan dra och sl„ppa fonter och f„rger p† pulswidgeten. Dessutom, „r den storleksf”r„ndringsbar.

Implementering Detaljer

Internt, anv„nder pulswidgeten DosPerfSysCall API (se dokumentationen f”r DosPerfSysCall i Toolkit's dokumentation*). Denna API har f”rdelen att kunna m„ta CPU aktivitet genom att direkt accessa prestandar„knarna i &os2;'s k„rna ist„llet f”r att k”ra en andra ledig-tids tr†d vilken konsumerar all †terst†ende CPU tid sj„lv (och d„rmed ytterligare batterikraft p† laptops).

Som ett resultat, att k”ra pulswidgeten konsumerar inte ytterligare CPU tid undantaget f”r den tid som det tar att rita upp sj„lva widgeten. Med andra ord, pulswidgeten bidrar inte sj„lv med n†gon egen CPU last, den f”rfr†gar endast &os2; k„rnan efter den aktuella lasten och visar den som en graf.

Widgetens egen overhead f”r att rita upp „r ocks† orsaken till du troligtvis aldrig kommer att se en CPU last p† noll, „ven om du f”r n„rvarande inte g”r n†gonting med ditt system. P† f”rfattarens system (en Pentium II-400), g†r CPU lasten aldrig ner under 0.7% med standard widgetstorlek.

Krav

DosPerfSysCall API'n har nyligen introducerats och kanske inte fungerar p† ditt system. Den b”r fungera med Warp 4 och h”gre (eller Warp 3 med en ekvivalent fixpaksniv†; b”r vara fixpak 26).

IBM's dokumentation f”r DosPerfSysCall p†st†r att en Pentiumprocessor „r n”dv„ndig f”r att k„rnans prestandar„knare skall fungera.

Om widgeten inte visa n†gon graf utan endast "E xxx" (med xxx varande en standard &os2; felkod), har ett fel intr„ffat. Mest troligt, kommer du att f† "E 182", vilket betyder att DosPerfSysCall API', inte hittades p† ditt system. F”r andra felkoder, kan du f”rs”ka skriva HELP SYSxxx p† en kommandorad.

"Anv„ndare" och "IRQ" last

F”r varje prestanda snapshot, returnerar DosPerfSysCall v„rden f”r "anv„ndare" och "IRQ" laster, respektive.

"Anv„ndar" lasten „r den tid som spenderades p† "uppdragstid" kod. V„sentligen, betyder det att CPU'n var upptagen med att exekvera kod i antingen en applikation eller med &os2; k„rnan eller en device drivrutin i den regulj„ra exekveringen hos fl”det av processer och tr†dar, som kontrolleras av schemal„ggaren i &os2;'s k„rna. (Se "Processer och tr†dar" f”r detaljer.)

Som kontrast, "IRQ" lasten representerar den tid som var n”dv„ndig f”r att processa interupts. Som du kanske k„nner till, interrupt „r ett s„tt f”r h†rdvarukomponenter att signalera till CPU'n att n†gon viktig h„ndelse har intr„ffat som m†ste †tg„rdas omedelbart. Mest vanligt, „r interrupts fr†n h†rddiskar, ljudkort, n„tverkskort, seriella och skrivarkommunikationer. Dessa devicer har inte r†d att v„nta tills &os2;'s schemal„ggare har avslutat en process tidscykel och „r redo att v„xla till en annan uppgift. Ist„llet, n„r ett IRQ kommer in, avbryter &os2;'s k„rna den regulj„ra schemal„ggningssekvensen och anropar en interrupthanterare ist„llet, vilket, i de flesta fall, kommer att vara kod fr†n n†gon device drivrutin. (I allm„nhet, kan endast &os2; device drivrutiner installera interrupthanterare.) Till exempel, om en interrupt fr†n h†rddisken kommer in, kommer koden i IBM1S506.ADD att bli anropad direkt f”r att betj„na interruptet.

Om du aldrig ser n†gon IRQ last hos ditt system, „r detta normalt. Det „r troligtvis fallet om du inte har n†gra n„tverksadapters installerade och du har aktiverat busmastering f”r dina h†rddiskar. Emellertid, om du har en h”g IRQ last, kan du ”verv„ga att f”rs”ka reducera den -- aktivera busmastering f”r dina h†rddiskar och/eller skaffa en n„tverksadapter som kan hantera busmastering.