|  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programvara
  • Adobe Illustrator
  • animation Software
  • antivirusprogram
  • ljudprogram
  • Säkerhetskopiera data
  • Bränn CD-skivor
  • Bränn DVD
  • Data Compression
  • Database Software
  • Desktop Publishing
  • Desktop Video
  • Digital Video Software
  • Drupal
  • Educational Software
  • Engineering Software
  • Filtillägg Typer
  • Financial Software
  • Freeware , Shareware & Abandonware
  • GIMP
  • Graphics Software
  • Home Recording Software
  • Microsoft Access
  • Microsoft Excel
  • Microsoft Publisher
  • Microsoft Word
  • Open Source Code
  • Andra datorprogram
  • PC-spel
  • Photoshop
  • Portable Document Format
  • PowerPoint
  • presentationsprogram
  • Produktivitet Software
  • quicktime
  • Remote Desktop Management
  • SQL Server
  • Skype
  • Programvara betaversioner
  • Programvara Konsulter
  • Software Development Companies
  • Software Licensing
  • Spreadsheets
  • Skatt förberedelse programvara
  • Utility Software
  • Web Clip Art
  • Windows Media Player
  • Ordbehandlingsprogram
  • Facebook
  • Twitter
  • Instagram
  • LinkedIn
  • TikTok
  • WhatsApp
  • WordPress
  • Chrome
  • Discord
  • Amazon
  • * Dator Kunskap >> Programvara >> quicktime >> Content

    Hur timer avbrottsprogram utförts?

    Ett timeravbrottsprograms exekvering utlöses av en hårdvarutimer som når ett fördefinierat värde. Här är en uppdelning av processen:

    1. Hårdvarutimerinställning:

    * Initialisering: Timern initialiseras med ett specifikt värde (räkning) som representerar önskat tidsintervall. Detta kan innebära att inställningsregister inom timerens hårdvara. Timern behöver också sitt läge konfigurerat (t.ex. en-shot för en enda trigger, periodisk för upprepade avbrott).

    * Klockkälla: Timern är ansluten till en klockkälla (t.ex. en systemklocka). Denna klocka ökar timerens räknare.

    2. Timeravbrottsgenerering:

    * räknare når noll: När klockan ökar timerens räknare når den så småningom noll (eller ett specifikt terminalantal). Denna händelse utlöser en hårdvaruavbrottssignal.

    * avbrottsförfrågan (IRQ): Hårdvarutimern skickar en avbrottsförfrågan (IRQ) till processorn. Denna begäran signalerar att en händelse behöver omedelbar uppmärksamhet.

    3. Avbrottshantering av CPU:

    * Avbrottsbekräftelse: CPU erkänner avbrottet och avbryter sitt nuvarande utförande. Timernavbrottets prioritering avgör om den hanteras omedelbart eller efter avbrott med högre prioriteringar.

    * Sparande sammanhang: CPU sparar det nuvarande programmets tillstånd (register, programräknare etc.) på en stack. Detta är avgörande att återuppta avrättningen senare.

    * Interrupt Vector Table: CPU konsulterar avbrottsvektortabellen för att hitta minnesadressen för avbrottstjänstrutinen (ISR) associerad med timeravbrottet.

    * Hoppa till ISR: CPU hoppar till minnesplatsen för timern Interrupt's ISR.

    4. Interrupt Service Routine (ISR) Exekvering:

    * ISR -kod: Detta är den specifika kodstycket som är utformat för att hantera timeravbrottet. Dess uppgifter kan inkludera:

    * Uppdatera en räknare: Hålla reda på förfluten tid.

    * växling av en utgång: Kontrollerar en LED eller annan perifer.

    * schemaläggningsuppgifter: Utföra andra programfunktioner med specifika intervall.

    * Läsningssensordata: Provtagningsdata från sensorer med regelbundna intervall.

    * Kommunikation: Skicka/ta emot data över ett nätverk eller serieport.

    * håller det kort: ISR:er bör hållas så kort som möjligt för att minimera tiden huvudprogrammet avbryts. Långvariga uppgifter bör lossas till huvudprogrammet efter att ISR har ställt in en flagga eller uppdaterar en delad datastruktur.

    5. Återvänder från avbrott:

    * Återställ sammanhang: ISR återställer CPU:s tillstånd som sparades tidigare (register, programräknare etc.).

    * Return från avbrott (IRET eller RTI): En speciell instruktion (IRET eller RTI, beroende på arkitekturen) körs för att returnera kontrollen till huvudprogrammet. CPU:erna återupptar exekveringen där den slutade före avbrottet.

    Exempel (konceptuell C-liknande kod):

    `` `c

    // timer ISR

    void timer_isr () {

    statisk osignerad int -räknare =0; // räknare för spårningstid

    Counter ++;

    if (counter ==1000) {// Kontrollera om 1000 timeravbrott har inträffat

    Counter =0;

    // Utför lite åtgärder, till exempel att växla en LED

    TOGGLE_LED ();

    }

    }

    `` `

    Viktiga överväganden:

    * Avbrottslatens: Den tid det tar mellan avbrottsbegäran och början av ISR är avbrottslatensen. Det är avgörande att hålla detta lågt för realtidsapplikationer.

    * Interrupt prioritering: Flera avbrott kan inträffa samtidigt. CPU hanterar dessa baserat på deras tilldelade prioriteringar.

    * reentrancy: ISR:er måste vara reentrant; vilket innebär att de kan avbrytas igen innan de slutför sin körning utan att orsaka datakorruption.

    * delade resurser: Noggrann synkroniseringsmekanismer (t.ex. semaforer, mutexer) behövs om ISR -åtkomsterna delade resurser också som används av huvudprogrammet.

    Denna process gäller ett brett utbud av mikrokontroller och inbäddade system. De specifika detaljerna (registernamn, instruktioner) kommer att variera beroende på hårdvaruarkitekturen.

    Tidigare:

    nästa:
    relaterade artiklar
    ·Vad innehåller verktygsfältet och snabbåtkomst?
    ·Hur man gör Quicktime filer mindre
    ·Vad ska jag göra när de snabba startknapparna inte sv…
    ·Vilka är de viktigaste funktionerna och fördelarna me…
    ·Hur till låsa upp QuickTime Pro
    ·Hur man roterar en QuickTime- film utan att förlora lj…
    ·Hur gör man en kortkommando?
    ·Vad är användningen av klockan?
    ·Hur man installerar QuickTime 7 på Snow Leopard
    ·Varför använda QuickBooks?
    Utvalda artiklarna
    ·Hur man skapar gränser i Word
    ·Hur man definierar en datumformat för en Microsoft Acc…
    ·Vad betyder villkoren och i genomsnitt ett Excel -kalky…
    ·Hur man bränner CD-skivor med Windows Media Player
    ·Hur Jämför MP3 till WMA
    ·Hur konvertera MicroStation till PDF-filer
    ·Hur att redigera ljud på en dator
    ·Hur du gör din egen Game Cam & Säkerhet Box
    ·Hur man skapar en digital bakgrund Använda Photoshop C…
    ·Hur ansluter man en Mac-anteckningsbok till ljudkortet …
    Copyright © Dator Kunskap https://www.dator.xyz