intel terminology
play

Intel Terminology Interrupt Asynchronous event, typically - PowerPoint PPT Presentation

Intel Terminology Interrupt Asynchronous event, typically triggered by an I/O device Eventually resumes at next instruction Hardware Level Exceptional Control Flow; Exception Again Synchronous event, triggered by the


  1. Intel Terminology • Interrupt – Asynchronous event, typically triggered by an I/O device – Eventually resumes at next instruction Hardware Level Exceptional Control Flow; • Exception …Again – Synchronous event, triggered by the processing of an instruction • Three classes of exceptions – Trap • Intentional. Resumes at next instruction Tore Larsen – Fault University of Tromsø • Error conditions that may be handled by handler. Re-executes faulting instruction if doable, otherwise makes sure faulting process is aborted University of Oslo – Abort • Unrecoverable, fatal error. Terminates process, …possibly also system • IA-32 supports precise interrupts 27.08.03 Tore Larsen 1 27.08.03 Tore Larsen 2 Interrupt Description Table (IDT) Actions taken on interrupt/exception • Used to locate appropriate service routine for each interrupt • Processor pushes status information (SS, type EFLAGS register, CS (code segment register), • Used similarly for interrupts and exceptions and return address (EIP) onto stack • IDTR register specifies base address & length of IDT • Intel uses vectored interrupts . The vector is a number • Pushes error code (if appropriate) onto stack provided by the interrupting unit that identifies the interrupt • Service routine executed type. The vector (scaled by eight) is used to index into the IDT • Each entry in IDT is an eight-byte descriptor which contains a • Return from interrupt instruction restores state segment selector for the handler’s code segment, an offset of interrupted process within the code segment, and access rights information 27.08.03 Tore Larsen 3 27.08.03 Tore Larsen 4

  2. IDT entries Interrupt priorities • Max 256 entries • Simultaneous exceptions and interrupts are prioritized in eight classes • 0—31: Architecture-defined, or reserved by Intel for future use • Highest class (1) • 32—255: ”User defined,” i.e. OS-defined – Hardware reset, machine check • Lowest class (8) – Faults on executing an instruction 27.08.03 Tore Larsen 5 27.08.03 Tore Larsen 6 Masking Some interrupt handling instructions • LIDT • IF- and RF-flags in the EFLAGS register may – Load IDTR register (32 bit) from memory. Privileged instruction (CPL = 0) be used to inhibit the generation of some • SIDT – Store IDTR register (32 bit) to memory. Non-privileged instruction interrupts • INT – Explicit call to any specific exception • INTO, INT 3, BOUND – Allow SW exception checking. Respectively Overflow, Breakpoint, and Range • CLI, STI – Clear/Set Interrupt Enable Flag • PUSHF, POPF – Push/pop Flags on/off stack • IRET – Return from interrupt 27.08.03 Tore Larsen 7 27.08.03 Tore Larsen 8

  3. Software Level Exceptional Control Processes Flow • Bryant and O’Hallaron extends the term • Context switches among concurrently running “exceptional control flow” beyond the HW processes level. Reference below • System calls • Let’s use a few slides, visiting their • Creating and terminating processes, loading organization: programs • Signals 27.08.03 Tore Larsen 9 27.08.03 Tore Larsen 10 References • Intel IA-32 Intel Architectures Software Development Manual. Vol.1. Ch. 6, Procedure Calls, Interrupts, and Exceptions – http://developer.intel.com/design/pentium4/manuals/24547012.pdf • Intel IA-32 Intel Architectures Software Development Manual. Vol.3. Ch. 5, Interrupt and Exception Handling – http://developer.intel.com/design/pentium4/manuals/24547212.pdf • Randal E. Bryant and David O’Hallaron, Computer Systems: A Programmer’s Perspective, Prentice-Hall, 2003. Chapter Eight, pp. 585-648. – http://csapp.cs.cmu.edu/ 27.08.03 Tore Larsen 11

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend