Perifera enheter "loggas" inte direkt till CPU i betydelsen av en sekventiell register över händelser. Istället kommunicerar de med CPU genom olika mekanismer, beroende på typ av enhet och systemarkitekturen. Nyckelkoncepten är
avbrott och
Direct Memory Access (DMA) .
1. Avbrott:
* Hur det fungerar: En perifer enhet signalerar CPU när den behöver uppmärksamhet (t.ex. en tangentpress på ett tangentbord, data redo från ett nätverkskort). Denna signal kallas en avbrottsförfrågan (IRQ). CPU avbryter sin nuvarande uppgift, räddar sitt tillstånd och hoppar till en avbrottshanterare som är specifik för enheten som genererade avbrottet. Handlaren behandlar enhetens begäran (läser data, erkänner ett kommando etc.). Efter bearbetning återställer CPU sitt tidigare tillstånd och återupptar sin avbrutna uppgift.
* loggningsaspekt: Avbrott loggar inte i sig. De är helt enkelt en mekanism för signalhändelser. Emellertid kunde avbrottshanteraren * skriva information om avbrottet (t.ex. tidsstämpel, enhets -ID, data som mottagits) till en loggfil eller annan lagring. Detta är en loggning av programvaranivå, inte en direkt hårdvaruloggning av CPU själv.
2. Direct Memory Access (DMA):
* Hur det fungerar: DMA tillåter en perifer enhet att överföra data direkt till eller från huvudminnet utan att involvera CPU i varje enskild dataöverföring. Detta är avgörande för höghastighetsenheter som hårddiskar eller nätverkskort. CPU:s initialiserar DMA -överföringen (specificerar källa, destination och mängd data), sedan hanterar DMA -styrenheten överföringen. När överföringen är klar signalerar DMA -styrenheten CPU via ett avbrott.
* loggningsaspekt: I likhet med avbrott loggar DMA inte direkt. CPU kan logga in start och slut på DMA -överföringar för prestandaövervakning eller felsökningsändamål, men den faktiska dataöverföringen hanteras av DMA -kontrollen.
3. Memory Mapped I/O:
* Hur det fungerar: Vissa kringutrustning är anslutna till CPU genom minneskartade I/O. Detta innebär att specifika minnesadresser tilldelas perifera register. CPU kan läsa från och skriva till dessa adresser för att kontrollera perifera och utbyta data.
* loggningsaspekt: Återigen inträffar ingen inneboende avverkning. CPU kan läsa data från perifera register och logga in den data till minne eller en fil efter behov.
Sammanfattningsvis:
CPU har inte en inbyggd "perifer enhetslogg." Kommunikation sker genom avbrott och DMA, vilket gör att kringutrustning kan signalera CPU och utbyta data effektivt. Varje loggning av perifer aktivitet implementeras genom programvara som körs på CPU med användning av de data som erhållits genom dessa kommunikationsmekanismer. Denna loggning kan användas för felsökning, övervakning, revision eller andra ändamål.