x386 and x486 Monitor

Size: px
Start display at page:

Download "x386 and x486 Monitor"

Transcription

1 x386 and x486 Monitor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... x386 and x x386 and x486 Monitor... 1 Brief Overview of Documents for New Users... 4 Warning... 5 Quick Start 386 ESI-ROM Monitor... 6 Troubleshooting... 8 FAQ... 8 Basics Monitor Features 10 Monitor Files 10 Address Layout 11 Vector Table 12 General SYStem Commands SYStem.CPU CPU type 13 SYStem.CpuAccess Run-time memory access (intrusive) 13 SYStem.MemAccess Real-time memory access (non-intrusive) 14 SYStem.Mode Establish the communication with the CPU 14 SYStem.Option MMUSPACES Enable space IDs 15 CPU specific MMU Commands MMU.DUMP Page wise display of MMU translation table 16 MMU.List Compact display of MMU translation table 17 MMU.SCAN Load MMU table from CPU 18 General SYStem Settings and Restrictions General Restrictions 20 Memory Classes Support Available Tools 22 Compilers (Protected Mode) 22 x386 and x486 Monitor 1

2 Compilers (Real Mode) 23 Target Operating Systems 24 3rd Party Tool Integrations 25 Products Product Information 26 Order Information 26 x386 and x486 Monitor 2

3 x386 and x486 Monitor Version 06-Nov-2017 PP: \\SCO386I\func MIX AI E::w.d.l addr/line code label mnemonic comment 163 autovar = regvar = fstatic; PP: B 8B1D6C0C4000 mov ebx,[400c6c] ; ebx,fstat PP: DFC mov [ebp-4],ebx 164 autovar++; PP: FF45FC inc dword ptr [ebp-4] 166 func1( &autovar ); * to force autovar as stack-s PP: D45FC lea eax,[ebp-4] E::w.r E::w.v.v %c %m ast Cy C EAX 1 EBX 0 SP > ast = ( P _ ECX 3 EDX 4-0C word = 0x0, Ac _ DS 38 ESI count = 12345, Zr _ ES 30 EDI left = 0x401E14, S _ SS 34 ESP 3FBC FP >00003FFC right = 0x0, T _ EBP 3FCC C8C field1 = 1, I _ CS 28 EIP field2 = 2) D _ FS 30 TR 40 +0C O _ GS 30 LDTR PL 0 EF x386 and x486 Monitor 3

4 Brief Overview of Documents for New Users Architecture-independent information: Debugger Basics - Training (training_debugger.pdf): Get familiar with the basic features of a TRACE32 debugger. T32Start (app_t32start.pdf): T32Start assists you in starting TRACE32 PowerView instances for different configurations of the debugger. T32Start is only available for Windows. General Commands (general_ref_<x>.pdf): Alphabetic list of debug commands. Architecture-specific information: Processor Architecture Manuals : These manuals describe commands that are specific for the processor architecture supported by your debug cable. To access the manual for your processor architecture, proceed as follows: - Choose Help menu > Processor Architecture Manual. RTOS Debuggers (rtos_<x>.pdf): TRACE32 PowerView can be extended for operating systemaware debugging. The appropriate RTOS manual informs you how to enable the OS-aware debugging. x386 and x486 Monitor 4

5 Warning NOTE: Do not connect or remove probe from target while target power is ON. Power up: Switch on emulator first, then target Power down: Switch off target first, then emulator x386 and x486 Monitor 5

6 Quick Start 386 ESI-ROM Monitor Starting up the ROM Monitor is done as follows: 1. Select the device B: for the ROM Monitor. b: 2. Power the system down (optional). sys.d This instruction is necessary when the system is restarted. When the system is active while you try to reinitialize it, you get an error message. 3. Set the CPU type in the ROM Monitor program to load the CPU specific settings. sys.cpu I Map the EPROM simulator. The mapping of the EPROM simulator is described in the section Mapping the EPROM Simulator. 5. Load the application program. d.load.coff sco386i.x The format of the Data.LOAD command depends on the file format generated by the compiler. The corresponding options for all available compilers are listed in the compiler list. A detailed description of the Data.LOAD command is given in the Emulator Reference Manual. NOTE: The application must have a gap for the monitor program (see Address Layout below). 6. Load the monitor program. Usually the monitor program runs at top of memory in the ROM area. The binary file contains the monitor, the startup sequence which brings CPU into Protected Mode and all necessary descriptor tables. Loading the whole file can be used to run the monitor without an application. d.load.b rom386b.bin a:0x0ffff Set the polarity of the Reset and NMI signal according to your target. The NMI signal is optional, it can be use to interrupt the program. x.respol + x.nmipol + x.nmibreak on ; Reset and NMI signal should be connected ; from ESI to target. NMI is used for ; manual break. x386 and x486 Monitor 6

7 8. Start the ROM Monitor. If the RESET output of the ESI is not connected you must press the RESET button of your target after entering this command. sys.up The start up can be automated using the programming language PRACTICE. A typical start sequence is shown below: ; the EPROM is in the addressrange 0x0ffff x0ffff ; the RAM is in the addressrange 0x x7ffff b: sys.d winclear sys.cpu i80486 map.res map.rom a:0ffff ffffffff d.load.b rom386b.bin a:0ffff0000 x.respol + x.nmipol + x.nmibreak on sys.up d.load.coff sco386i.x /flat d.s ap:38 0ff 0ff 0 0 d.s ap:3c 0 9a 0cf 0 d.s ap: d.s ap:84 0 8e 0ff 0ff d.s ap: d.s ap:84 0 8e 0ff 0ff d.s ap: d.s ap:84 0 8e 0ff 0ff r.s gdtb 10 r.s gdtl 2ff r.s ds 38 r.s cs 28 r.s idtb 78 r.s idtl 0ffff ; select the Debugger device ; switch the system down ; clear all windows ; set the CPU type for the user ; interface ; map the EPROM simulator ; map the EPROM simulator ; load the monitor ; adapt the polarity of RES and NMI ; enables the connection of the NMI signal ; power the system up ; set code segment descriptor(s), if ; not included in application file ; set interrupt descriptor 1, if not ; incl. ; set interrupt descriptor 2, if not ; incl. ; set interrupt descriptor 3, if not ; incl. ; set GDT base register ; set GDT limit register ; set ds selector ; set cs selector ; set IDT base register ; set IDT limit register ; Important: All used register, tables and selectors must be initialized ; correctly. Although it is possible to reload all registers by ; application program, it is important to have valid selectors and ; descriptors at every time. Using r.s ds 38 for example directly loads ; the selector and descriptor into the segment register. A wrong ; descriptor will generate a trap into the monitor. x386 and x486 Monitor 7

8 Troubleshooting No information available. FAQ EPROM Simulator Error on Data Modification Ref: 0056 Step or Breakpoint Fails Ref: 0061 Stepping Fails when Executing MOV SP,xxx Ref: 0062 Why crashes ROM monitor after modification of EPROM? Check that there is enough space left on the stack. See also "Restrictions for Stack Requirements". Why does single step or breakpoint not work? Check that there is enough space left on the stack before and after the execution of the instruction. See "Restrictions for Stack Requirements". Make sure that the single step and INT3 vector (1 + 3) are valid and point to the correct monitor entry. Why does stepping fail, when executing a MOV SP,xxx instruction? Check that there is enough space left on the stack before and after the execution of the instruction. See "Restrictions for Stack Requirements". Check that the value for the CP is within limits for the CPU and that the register space ist not beeing overwritten by the stack. See "Restrictions for Stack Requirements". EPROM Simulator Error on Data Modification Ref: 0056 Step or Breakpoint Fails Ref: 0061 Why crashes ROM monitor after modification of EPROM? Check that there is enough space left on the stack. See also "Restrictions for Stack Requirements". Why does single step or breakpoint not work? Check that there is enough space left on the stack before and after the execution of the instruction. See "Restrictions for Stack Requirements". Make sure that the single step and INT3 vector (1 + 3) are valid and point to the correct monitor entry. x386 and x486 Monitor 8

9 Stepping Fails when Executing MOV SP,xxx Ref: Manual Break Fails Ref: 0060 Why does stepping fail, when executing a MOV SP,xxx instruction? Check that there is enough space left on the stack before and after the execution of the instruction. See "Restrictions for Stack Requirements". Check that the value for the CP is within limits for the CPU and that the register space ist not beeing overwritten by the stack. See "Restrictions for Stack Requirements". Why does manual break fail? Check that there is enough space left on the stack before and after the execution of the instruction (see Restrictions for stack requirements). Check exception control (x.nmipol +, x.nmibreak on) and NMI connection from EPROM simulator to target. Make sure that the NMI vector (2) is valid and points to the correct Monitor entry. x386 and x486 Monitor 9

10 Basics Monitor Features The monitor requires no stack during startup and memory operations. A valid stack is always required. The NMI pin of the Eprom Simulator can be used to manually stop the target program. Monitor Files The 'rom386b', 'rom386w' and 'rom386l' monitors are for Eprom Simulator solutions (8bit, 16bit and 32 bit). The target program can be single stepped without stopping the target processors interrupts. The source file of the monitor is 'rom386.asm'. This source file should not be modified, it is only included for reference purposes. There are two possibilities to include the monitor in the application: loading the '.bin' by the Eprom Simulator or linking the '.src' file together with the application. The '.src' files contain only the monitor code, a corresponding configuration table must be included in the target program. x386 and x486 Monitor 10

11 Address Layout The Rom Monitor and the startup sequence to bring CPU into Protected Mode is normally located at top of memory (boot ROM). The communication area for the Eprom Simulator is located at the fixed address 1000 to 1FFF of the first EPROM. The CPU address depends on the bus width of the EPROMs. The following table shows the address ranges occupied by the communication port: bus width start address end address 8 bit FFF 16 bit FFF 32 bit FFF The monitor program consists of three parts: Startup Code to bring CPU into Protected Mode All necessary Descriptor Tables Monitor Program Code The '.bin' and '.asm' files contain all parts of the monitor. The address layout of the default monitor is as follows: 0x x00FFF 0x x07FFF 0x x080CD 0x080CE--0x x0FFF0--0x0FFF7 Monitor Code Monitor Communication Area (depends on bus width) Global and Interrupt Descriptor Tables Setup Code to bring CPU into Protected Mode Jump after RESET x386 and x486 Monitor 11

12 Vector Table For the first tests of a software, the '.bin' files can be loaded with descriptor tables. When the descriptor tables becomes part of the application, it is not loaded with the monitor. Instead the tables are setup according to the application (the table may also reside in RAM). Some descriptors (interrupt descriptor 1, 2, 3) must be set up to point into the monitor program code. The entry points are located at the beginning of the monitor. vec offs ent usage Reset (optional, can also go to application) Single Step Break Manual Break by NMI (optional) Breakpoint Trap (used for breakpoints) Any unused trap maybe handled by monitor " " NOTE: The entry point is given relative to the start of the monitor. x386 and x486 Monitor 12

13 General SYStem Commands SYStem.CPU CPU type Format: SYStem.CPU <mode> <mode>: 8086 I80186 I80386 I80386EX I80486 Selects the processor type. The ROM debugger requires also a modification in the debug monitor for different processor types. SYStem.CpuAccess Run-time memory access (intrusive) Format: SYStem.CpuAccess Enable Denied Nonstop Default: Denied. Enable Denied Nonstop Allow intrusive run-time memory access. In order to perform a memory read or write while the CPU is executing the program, the debugger stops the program execution shortly. Each short stop takes ms depending on the speed of the debug interface and on the number of the read/write accesses required. A red S in the state line of the TRACE32 main window indicates this intrusive behavior of the debugger. Lock intrusive run-time memory access. Lock all features of the debugger that affect the run-time behavior. Nonstop reduces the functionality of the debugger to: Run-time access to memory and variables Trace display The debugger inhibits the following: To stop the program execution All features of the debugger that are intrusive (e.g. action Spot for breakpoints, performance analysis via StopAndGo mode, conditional breakpoints, etc.) x386 and x486 Monitor 13

14 SYStem.MemAccess Real-time memory access (non-intrusive). Format: SYStem.MemAccess CPU Denied <cpu_specific> SYStem.ACCESS (deprecated) CPU Denied (default) Real-time memory access during program execution to target is enabled. Real-time memory access during program execution to target is disabled. SYStem.Mode Establish the communication with the CPU Format: SYStem.Mode <mode> <mode>: Down NoDebug Go Up Default: Down. Selects the target operating mode. tbd. Down NoDebug Go Up The CPU is in reset. Debug mode is not active. Default state and state after fatal errors. The CPU is running. Debug mode is not active. Debug port is tristate. In this mode the target should behave as if the debugger is not connected. The CPU is running. Debug mode is active. After this command the CPU can be stopped with the break command or if any break condition occurs. The CPU is not in reset but halted. Debug mode is active. In this mode the CPU can be started and stopped. This is the most typical way to activate debugging. If the mode Go is selected, this mode will be entered, but the control button in the SYStem window jumps to the mode UP. x386 and x486 Monitor 14

15 SYStem.Option MMUSPACES Enable space IDs Format: SYStem.Option MMUSPACES [ON OFF] SYStem.Option MMUspaces [ON OFF] (deprecated) SYStem.Option MMU [ON OFF] (deprecated) Default: OFF. Enables the use of space IDs for logical addresses to support multiple address spaces. A space ID is a 16- bit memory space identifier which extends a logical TRACE32 address. With space IDs, TRACE32 can handle multiple address spaces in the debugger address translation. Space IDs are defined within a loaded TRACE32 OS awareness extension. Often, space IDs are directly derived from the OS process ID. Be aware that this depends on the OS and the loaded awareness extension. NOTE: SYStem.Option MMUSPACES should not be used if only one translation table is used on the target. If a debug session requires space IDs, you must observe the following sequence of steps: 1. Activate SYStem.Option MMUSPACES. 2. Load the symbols with Data.LOAD. Otherwise, the internal symbol database of TRACE32 may become inconsistent. Examples: ;Dump logical address 0xC00208A belonging to memory space with ;space ID 0x012A: Data.dump D:0x012A:0xC00208A ;Dump logical address 0xC00208A belonging to memory space with ;space ID 0x0203: Data.dump D:0x0203:0xC00208A x386 and x486 Monitor 15

16 CPU specific MMU Commands MMU.DUMP Page wise display of MMU translation table Format: MMU.DUMP <table> [<range> <addr> <range> <root> <addr> <root>] MMU.<table>.dump (deprecated) <table>: PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> <cpu_specific_tables> Displays the contents of the CPU specific MMU translation table. If called without parameters, the complete table will be displayed. If the command is called with either an address range or an explicit address, table entries will only be displayed, if their logical address matches with the given parameter. The optional <root> argument can be used to specify a page table base address deviating from the default page table base address. This allows to display a page table located anywhere in memory. PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> Display the current MMU translation table entries of the CPU. This command reads all tables the CPU currently uses for MMU translation and displays the table entries. Display the MMU translation table of the kernel. If specified with the MMU.FORMAT command, this command reads the MMU translation table of the kernel and displays its table entries. Display the MMU translation table entries of the given process. In MMU based operating systems, each process uses its own MMU translation table. This command reads the table of the specified process, and displays its table entries. See also the appropriate OS awareness manuals: RTOS Debugger for <x>. For information about the parameters, see What to know about Magic Numbers, Task IDs and Task Names (general_ref_t.pdf). CPU specific tables: GDT Displays the contents of the Global Descriptor Table. x386 and x486 Monitor 16

17 IDT Displays the contents of the IDT table. LDT Displays the contents of the Local Descriptor Table. MMU.List Compact display of MMU translation table Format: MMU.List <table> [<range> <addr> <range> <root> <addr> <root>] MMU.<table>.List (deprecated) <table>: PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> <space_id>:0x0 Lists the address translation of the CPU-specific MMU table. If called without address or range parameters, the complete table will be displayed. If called without a table specifier, this command shows the debugger-internal translation table. See TRANSlation.List. If the command is called with either an address range or an explicit address, table entries will only be displayed, if their logical address matches with the given parameter. <root> PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> The optional <root> argument can be used to specify a page table base address deviating from the default page table base address. This allows to display a page table located anywhere in memory. List the current MMU translation of the CPU. This command reads all tables the CPU currently uses for MMU translation and lists the address translation. List the MMU translation table of the kernel. If specified with the MMU.FORMAT command, this command reads the MMU translation table of the kernel and lists its address translation. List the MMU translation of the given process. In MMU-based operating systems, each process uses its own MMU translation table. This command reads the table of the specified process, and lists its address translation. See also the appropriate OS awareness manuals: RTOS Debugger for <x>. For information about the parameters, see What to know about Magic Numbers, Task IDs and Task Names (general_ref_t.pdf). x386 and x486 Monitor 17

18 MMU.SCAN Load MMU table from CPU Format: MMU.SCAN <table> [<range> <address>] MMU.<table>.SCAN (deprecated) <table>: PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> ALL <cpu_specific_tables> Loads the CPU-specific MMU translation table from the CPU to the debugger-internal translation table. If called without parameters, the complete page table will be loaded. The loaded address translation can be viewed with TRANSlation.List. If the command is called with either an address range or an explicit address, page table entries will only be loaded if their logical address matches with the given parameter. PageTable KernelPageTable TaskPageTable <magic_number> <task_id> <task_name> ALL Load the current MMU address translation of the CPU. This command reads all tables the CPU currently uses for MMU translation, and copies the address translation into the debugger-internal translation table. Load the MMU translation table of the kernel. If specified with the MMU.FORMAT command, this command reads the table of the kernel and copies its address translation into the debugger-internal translation table. Load the MMU address translation of the given process. In MMU-based operating systems, each process uses its own MMU translation table. This command reads the table of the specified process, and copies its address translation into the debugger-internal translation table. See also the appropriate OS awareness manual: RTOS Debugger for <x>. For information about the parameters, see What to know about Magic Numbers, Task IDs and Task Names (general_ref_t.pdf). Load all known MMU address translations. This command reads the OS kernel MMU table and the MMU tables of all processes and copies the complete address translation into the debuggerinternal translation table. See also the appropriate OS awareness manual: RTOS Debugger for <x>. x386 and x486 Monitor 18

19 CPU specific tables: GDT GDTLDT LDT Loads the Global Descriptor Table from the CPU to the debugger internal translation table. Loads the Global and Local Descriptor Table from the CPU to the debugger internal translation table. Loads the Local Descriptor Table from the CPU to the debugger internal translation table. x386 and x486 Monitor 19

20 General SYStem Settings and Restrictions General Restrictions Stack Memory The ROM debugger needs memory on the current stack. For only starting the Monitor and memory read or modify commands 8 bytes of stack are used. To start application, 40 bytes of stack are used. Modification of the EPROM while the monitor is running (Hot Patch) requires 64 bytes (at all) on the stack. x386 and x486 Monitor 20

21 Memory Classes Memory Class D P IO Description Data Program I/O C E A Memory access by CPU Emulation memory access Absolute (physical) memory access x386 and x486 Monitor 21

22 Support Available Tools CPU ICE FIRE ICD DEBUG ICD MONITOR ICD TRACE POWER INTEGRATOR INSTRUCTION SIMULATOR 486 YES Compilers (Protected Mode) Language Compiler Company Option Comment C SCO-UNIX-CC COFF C GNU-C Free Software DBX Foundation, Inc. C GNU-C Free Software Foundation, Inc. ELF/DWARF2 C GCC386 Greenhills Software Inc. COFF C IC386 Intel Corporation OMF-386 C IC286 Intel Corporation OMF-286 C MCC386 Mentor Graphics EOMF-386 Corporation C MSVC-1.5 Microsoft Corporation EOMF-386 Pharlap ETS C MSVC Microsoft Corporation EXE/CV C MSVC Microsoft Corporation OMF-386/CV SSI Link386 C MSVC/CSI Microsoft Corporation EOMF-386 C HC386 Synopsys, Inc OMF386/SPF C HIGHC Synopsys, Inc ELF/DWARF C++ BORLAND-C Borland Software Corporation EXE/BC5 x386 and x486 Monitor 22

23 Language Compiler Company Option Comment C++ ORGANON CAD-UL OMF386++ ElectronicServices GmbH C++ GNU-C++ Free Software DBX Foundation, Inc. C++ MSVC Microsoft Corporation EXE/CV4 C++ HC386 Synopsys, Inc OMF/SPF C++ HIGH-C++ Synopsys, Inc ELF/DWARF Compilers (Real Mode) Language Compiler Company Option Comment ASM AXLS HP Source level debugging C BORLANDC Borland Software Corporation EOMF-86 with Paradigm LOCATE C ORGANON CAD-UL EOMF-86 Banking support ElectronicServices GmbH C IC86 Intel Corporation OMF-86 C MCC86 Mentor Graphics EOMF-86 incl. Microtec ext. Corporation C MSC/MSVC-16BIT Microsoft Corporation EOMF-86 with Paradigm LOCATE C MSC/MSVC Microsoft Corporation EXE/TD with Paradigm LOCATE C ICC86 TASKING OMF-86 C ICC86 TASKING IEEE C++ BORLANDC Borland Software EXE/TD Corporation C++ MSVC-16BIT Microsoft Corporation EXE/CV MODULA LOGITECH-M2 Terra Datentechnik MAP/REF PASCAL TEK-PASCAL Tektronix TEK PLM PL/M86 Intel Corporation OMF-86 reads src or list file x386 and x486 Monitor 23

24 Target Operating Systems Company Product Comment Oracle Corporation ChorusOS - Linux Kernel Version 2.4 and 2.6, 3.x, 4.x Mentor Graphics Nucleus Corporation QNX Software Systems QNX 6.0 to 7.0 Quadros Systems Inc. RTXC 3.2 Wind River Systems VxWorks 5.x to 7.x Microsoft Corporation Windows CE 6.0 Microsoft Corporation Windows Embedded Compact EC7, EC2013 Microsoft Corporation Windows Standard XP, Vista, 7, 8, 10 x386 and x486 Monitor 24

25 3rd Party Tool Integrations CPU Tool Company Host WINDOWS CE PLATF. - Windows BUILDER CODE::BLOCKS - - C++TEST - Windows ADENEO - X-TOOLS / X32 blue river software GmbH Windows CODEWRIGHT Borland Software Windows Corporation CODE CONFIDENCE Code Confidence Ltd Windows TOOLS CODE CONFIDENCE Code Confidence Ltd Linux TOOLS EASYCODE EASYCODE GmbH Windows ECLIPSE Eclipse Foundation, Inc Windows CHRONVIEW Inchron GmbH Windows LDRA TOOL SUITE LDRA Technology, Inc. Windows UML DEBUGGER LieberLieber Software Windows GmbH SIMULINK The MathWorks Inc. Windows ATTOL TOOLS MicroMax Inc. Windows VISUAL BASIC Microsoft Corporation Windows INTERFACE LABVIEW NATIONAL Windows INSTRUMENTS Corporation RAPITIME Rapita Systems Ltd. Windows RHAPSODY IN MICROC IBM Corp. Windows RHAPSODY IN C++ IBM Corp. Windows DA-C RistanCASE Windows TRACEANALYZER Symtavision GmbH Windows TA INSPECTOR Timing Architects GmbH Windows UNDODB Undo Software Linux VECTORCAST UNIT Vector Software Windows TESTING VECTORCAST CODE COVERAGE Vector Software Windows x386 and x486 Monitor 25

26 Products Product Information OrderNo Code LA-7530 MON-386 Text ROM Monitor for 386/486 family on ESI supports 386/486 includes HLL debugger, operation system, includes software for Windows Order Information Order No. Code Text LA-7530 MON-386 ROM Monitor for 386/486 family on ESI x386 and x486 Monitor 26

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... NS NS32000 Monitor... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... NS NS32000 Monitor... 1 NS32000 Monitor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... NS32000... NS32000 Monitor... 1 Brief Overview of Documents

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... TriCore... TriCore Monitor... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... TriCore... TriCore Monitor... 1 TriCore Monitor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... TriCore... TriCore Monitor... 1 Brief Overview of Documents

More information

H8S and H8/300H Monitor

H8S and H8/300H Monitor H8S and H8/300H Monitor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... H8S... H8S and H8/300H Monitor... 1 Brief Overview

More information

Simulator for H8/300, H8/300H and H8S

Simulator for H8/300, H8/300H and H8S Simulator for H8/300, H8/300H and H8S TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for H8/300, H8/300H and H8S... 1 TRACE32 Simulator

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Z80... Z80 Monitor... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Z80... Z80 Monitor... 1 Z80 Monitor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Z80... Z80 Monitor... 1 Brief Overview of Documents for

More information

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for Z TRACE32 Simulator License Quick Start of the Simulator...

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for Z TRACE32 Simulator License Quick Start of the Simulator... Simulator for Z80+ TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for Z80+... 1 TRACE32 Simulator License... 3 Quick Start of the

More information

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for MIPS TRACE32 Simulator License Quick Start of the Simulator...

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for MIPS TRACE32 Simulator License Quick Start of the Simulator... Simulator for MIPS TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for MIPS... 1 TRACE32 Simulator License... 4 Quick Start of the

More information

Simulator for PowerPC

Simulator for PowerPC Simulator for PowerPC TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for PowerPC... 1 TRACE32 Simulator License... 4 Quick Start

More information

Simulator for 68K/ColdFire

Simulator for 68K/ColdFire Simulator for 68K/ColdFire TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for 68K/ColdFire... 1 TRACE32 Simulator License... 4

More information

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for ARC... 1

TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for ARC... 1 Simulator for ARC TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for ARC... 1 Introduction... 3 Supported ARC Cores 3 Brief Overview

More information

Simulator for HC08/MSC08

Simulator for HC08/MSC08 Simulator for HC08/MSC08 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for HC08/MSC08... 1 TRACE32 Simulator License... 3 Quick

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MCS08... MCS08 Debugger... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MCS08... MCS08 Debugger... 1 MCS08 Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MCS08... MCS08 Debugger... 1 Brief Overview of Documents

More information

Simulator for TriCore

Simulator for TriCore Simulator for TriCore TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for TriCore... 1 TRACE32 Simulator License... 4 Brief Overview

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Blackfin... Blackfin Debugger General Note...

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Blackfin... Blackfin Debugger General Note... Blackfin Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Blackfin... Blackfin Debugger... 1 General Note...

More information

ICE Emulator for 68000

ICE Emulator for 68000 ICE Emulator for 68000 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICE In-Circuit Emulator... ICE Target Guides... ICE Emulator for 68000... 1 Warning... 3 Quick Start... 4

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... XC XC800 Debugger... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... XC XC800 Debugger... 1 XC800 Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... XC800... XC800 Debugger... 1 Introduction... 3 Brief

More information

Native Process Debugger

Native Process Debugger Native Process Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... Native Process Debugger... 1 Operation Theory... 3 Quick Start... 4 Starting a new process 4 Attach to a

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... H8S... H8S/23x9 Debugger General Note... 3

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... H8S... H8S/23x9 Debugger General Note... 3 H8S/23x9 Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... H8S... H8S/23x9 Debugger... 1 General Note... 3 Brief

More information

M32R Debugger and Trace

M32R Debugger and Trace M32R Debugger and Trace TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... M32R... M32R Debugger and Trace... 1 General

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MMDSP... MMDSP Debugger General Note... 3

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MMDSP... MMDSP Debugger General Note... 3 MMDSP Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MMDSP... MMDSP Debugger... 1 General Note... 3 Brief

More information

NIOS II Debugger and Trace

NIOS II Debugger and Trace NIOS II Debugger and Trace TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... NIOS... NIOS II Debugger and Trace... 1

More information

Simulator for Intel x86/x64

Simulator for Intel x86/x64 Simulator for Intel x86/x64 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for Intel x86/x64... 1 TRACE32 Simulator License...

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals XC... R8051XC Debugger General Note...

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals XC... R8051XC Debugger General Note... R8051XC Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... 8051XC... R8051XC Debugger... 1 General Note... 4

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Andes... Andes Debugger... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Andes... Andes Debugger... 1 Andes Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... Andes... Andes Debugger... 1 Brief Overview of Documents

More information

CS3210: Booting and x86. Taesoo Kim

CS3210: Booting and x86. Taesoo Kim 1 CS3210: Booting and x86 Taesoo Kim 2 What is an operating system? e.g. OSX, Windows, Linux, FreeBSD, etc. What does an OS do for you? Abstract the hardware for convenience and portability Multiplex the

More information

CS3210: Booting and x86

CS3210: Booting and x86 CS3210: Booting and x86 Lecture 2 Instructor: Dr. Tim Andersen 1 / 34 Today: Bootstrapping CPU -> needs a first instruction Memory -> needs initial code/data I/O -> needs to know how to communicate 2 /

More information

SH2, SH3 and SH4 Debugger

SH2, SH3 and SH4 Debugger SH2, SH3 and SH4 Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... SuperH... SH2, SH3 and SH4 Debugger... 1

More information

OS Awareness Manual Sciopta

OS Awareness Manual Sciopta OS Awareness Manual Sciopta TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... OS Awareness Manuals... OS Awareness Manual Sciopta... 1 History... 2 Overview... 2 Brief Overview of

More information

IA32 Intel 32-bit Architecture

IA32 Intel 32-bit Architecture 1 2 IA32 Intel 32-bit Architecture Intel 32-bit Architecture (IA32) 32-bit machine CISC: 32-bit internal and external data bus 32-bit external address bus 8086 general registers extended to 32 bit width

More information

UMBC. contain new IP while 4th and 5th bytes contain CS. CALL BX and CALL [BX] versions also exist. contain displacement added to IP.

UMBC. contain new IP while 4th and 5th bytes contain CS. CALL BX and CALL [BX] versions also exist. contain displacement added to IP. Procedures: CALL: Pushes the address of the instruction following the CALL instruction onto the stack. RET: Pops the address. SUM PROC NEAR USES BX CX DX ADD AX, BX ADD AX, CX MOV AX, DX RET SUM ENDP NEAR

More information

Integration for CodeWright

Integration for CodeWright Integration for CodeWright TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... 3rd Party Tool Integrations... Integration for CodeWright... 1 Overview... 2 Brief Overview of Documents

More information

Hypervisor Awareness for Wind River Hypervisor

Hypervisor Awareness for Wind River Hypervisor Hypervisor Awareness for Wind River Hypervisor TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... Hypervisor Support... Hypervisor Awareness for Wind River Hypervisor... 1 Overview...

More information

RTOS Debugger for RTX-ARM

RTOS Debugger for RTX-ARM RTOS Debugger for RTX-ARM TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for RTX-ARM... 1 Overview... 2 Brief Overview of Documents for New Users...

More information

Assembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam

Assembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam Assembly Language Lecture 2 - x86 Processor Architecture Ahmed Sallam Introduction to the course Outcomes of Lecture 1 Always check the course website Don t forget the deadline rule!! Motivations for studying

More information

RTOS Debugger for ChibiOS/RT

RTOS Debugger for ChibiOS/RT RTOS Debugger for ChibiOS/RT TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for ChibiOS/RT... 1 Overview... 3 Brief Overview of Documents for New

More information

Computer Organization (II) IA-32 Processor Architecture. Pu-Jen Cheng

Computer Organization (II) IA-32 Processor Architecture. Pu-Jen Cheng Computer Organization & Assembly Languages Computer Organization (II) IA-32 Processor Architecture Pu-Jen Cheng Materials Some materials used in this course are adapted from The slides prepared by Kip

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... C166 Family... C166 Family Trace... 1

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... C166 Family... C166 Family Trace... 1 C166 Family Trace TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... C166 Family... C166 Family Trace... 1 Installation...

More information

Low Level Programming Lecture 2. International Faculty of Engineerig, Technical University of Łódź

Low Level Programming Lecture 2. International Faculty of Engineerig, Technical University of Łódź Low Level Programming Lecture 2 Intel processors' architecture reminder Fig. 1. IA32 Registers IA general purpose registers EAX- accumulator, usually used to store results of integer arithmetical or binary

More information

RTOS Debugger for CMX

RTOS Debugger for CMX RTOS Debugger for CMX TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for CMX... 1 Overview... 2 Brief Overview of Documents for New Users... 3

More information

Assembly Language. Lecture 2 x86 Processor Architecture

Assembly Language. Lecture 2 x86 Processor Architecture Assembly Language Lecture 2 x86 Processor Architecture Ahmed Sallam Slides based on original lecture slides by Dr. Mahmoud Elgayyar Introduction to the course Outcomes of Lecture 1 Always check the course

More information

The Instruction Set. Chapter 5

The Instruction Set. Chapter 5 The Instruction Set Architecture Level(ISA) Chapter 5 1 ISA Level The ISA level l is the interface between the compilers and the hardware. (ISA level code is what a compiler outputs) 2 Memory Models An

More information

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II) MICROPROCESSOR UOP S.E.COMP (SEM-II) 80386 MICROPROCESSOR ARCHITECTURE Prof. P. C. Patil Department of Computer Engg Sandip Institute of Engineering & Management Nashik pc.patil@siem.org.in 1 Introduction

More information

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... M8051EW... M8051EW Debugger General Note...

TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... M8051EW... M8051EW Debugger General Note... M8051EW Debugger TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... M8051EW... M8051EW Debugger... 1 General Note... 4

More information

We can study computer architectures by starting with the basic building blocks. Adders, decoders, multiplexors, flip-flops, registers,...

We can study computer architectures by starting with the basic building blocks. Adders, decoders, multiplexors, flip-flops, registers,... COMPUTER ARCHITECTURE II: MICROPROCESSOR PROGRAMMING We can study computer architectures by starting with the basic building blocks Transistors and logic gates To build more complex circuits Adders, decoders,

More information

Simulator for HC12/MCS12

Simulator for HC12/MCS12 Simulator for HC12/MCS12 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... TRACE32 Instruction Set Simulators... Simulator for HC12/MCS12... 1 TRACE32 Simulator License... 4 Quick

More information

RTOS Debugger for OS-9

RTOS Debugger for OS-9 RTOS Debugger for OS-9 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for OS-9... 1 Overview... 3 Brief Overview of Documents for New Users...

More information

The Microprocessor and its Architecture

The Microprocessor and its Architecture The Microprocessor and its Architecture Contents Internal architecture of the Microprocessor: The programmer s model, i.e. The registers model The processor model (organization) Real mode memory addressing

More information

Program Exploitation Intro

Program Exploitation Intro Program Exploitation Intro x86 Assembly 04//2018 Security 1 Univeristà Ca Foscari, Venezia What is Program Exploitation "Making a program do something unexpected and not planned" The right bugs can be

More information

IA32/Linux Virtual Memory Architecture

IA32/Linux Virtual Memory Architecture IA32/Linux Virtual Memory Architecture Basic Execution Environment Application Programming Registers General-purpose registers 31 0 EAX AH AL EBX BH BL ECX CH CL EDX DH DL EBP ESI EDI BP SI DI Segment

More information

Tutorial 10 Protection Cont.

Tutorial 10 Protection Cont. Tutorial 0 Protection Cont. 2 Privilege Levels Lower number => higher privilege Code can access data of equal/lower privilege levels only Code can call more privileged data via call gates Each level has

More information

RTOS Debugger for MicroC/OS-II

RTOS Debugger for MicroC/OS-II RTOS Debugger for MicroC/OS-II TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for MicroC/OS-II... 1 Overview... 3 Brief Overview of Documents for

More information

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

MICROPROCESSOR MICROPROCESSOR ARCHITECTURE. Prof. P. C. Patil UOP S.E.COMP (SEM-II) MICROPROCESSOR UOP S.E.COMP (SEM-II) 80386 MICROPROCESSOR ARCHITECTURE Prof. P. C. Patil Department of Computer Engg Sandip Institute of Engineering & Management Nashik pc.patil@siem.org.in 1 Introduction

More information

Moodle WILLINGDON COLLEGE SANGLI (B. SC.-II) Digital Electronics

Moodle WILLINGDON COLLEGE SANGLI (B. SC.-II) Digital Electronics Moodle 4 WILLINGDON COLLEGE SANGLI (B. SC.-II) Digital Electronics Advanced Microprocessors and Introduction to Microcontroller Moodle developed By Dr. S. R. Kumbhar Department of Electronics Willingdon

More information

RTOS Debugger for MicroC/OS-III

RTOS Debugger for MicroC/OS-III RTOS Debugger for MicroC/OS-III TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for MicroC/OS-III... 1 Overview... 2 Brief Overview of Documents

More information

EPROM/FLASH Simulator

EPROM/FLASH Simulator EPROM/FLASH Simulator TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... EPROM/FLASH Simulator... 1 Introduction... 4 Basics 4 Warning 4 Configuration... 5 ICD Configuration for ROM

More information

MicroBlaze Debugger and Trace

MicroBlaze Debugger and Trace MicroBlaze Debugger and Trace TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICD In-Circuit Debugger... Processor Architecture Manuals... MicroBlaze... MicroBlaze Debugger and

More information

RTOS Debugger for FreeRTOS

RTOS Debugger for FreeRTOS RTOS Debugger for FreeRTOS TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for FreeRTOS... 1 Overview... 2 Brief Overview of Documents for New Users...

More information

Microkernel Construction

Microkernel Construction Kernel Entry / Exit SS2013 Control Transfer Microkernel User Stack A Address Space Kernel Stack A User Stack User Stack B Address Space Kernel Stack B User Stack 1. Kernel Entry (A) 2. Thread Switch (A

More information

RTOS Debugger for ThreadX

RTOS Debugger for ThreadX RTOS Debugger for ThreadX TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for ThreadX... 1 Overview... 3 Brief Overview of Documents for New Users...

More information

Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 2: IA-32 Processor Architecture. Chapter Overview.

Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 2: IA-32 Processor Architecture. Chapter Overview. Assembly Language for Intel-Based Computers, 4 th Edition Kip R. Irvine Chapter 2: IA-32 Processor Architecture Slides prepared by Kip R. Irvine Revision date: 09/25/2002 Chapter corrections (Web) Printing

More information

The IA-32 Stack and Function Calls. CS4379/5375 Software Reverse Engineering Dr. Jaime C. Acosta

The IA-32 Stack and Function Calls. CS4379/5375 Software Reverse Engineering Dr. Jaime C. Acosta 1 The IA-32 Stack and Function Calls CS4379/5375 Software Reverse Engineering Dr. Jaime C. Acosta 2 Important Registers used with the Stack EIP: ESP: EBP: 3 Important Registers used with the Stack EIP:

More information

iapx Systems Electronic Computers M

iapx Systems Electronic Computers M iapx Systems Electronic Computers M 1 iapx History We analyze 32 bit systems: generalization to 64 bits is straigtforward Segment Registers (16 bits) Code Segment Stack Segment Data Segment Extra Ssegment

More information

OS Awareness Manual OSEK/ORTI

OS Awareness Manual OSEK/ORTI OS Awareness Manual OSEK/ORTI TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... OS Awareness Manuals... OS Awareness for OSEK/ORTI... OS Awareness Manual OSEK/ORTI... 1 History...

More information

RTOS Debugger for MQX

RTOS Debugger for MQX RTOS Debugger for MQX TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for MQX... 1 Overview... 3 Brief Overview of Documents for New Users... 4

More information

Reverse Engineering II: Basics. Gergely Erdélyi Senior Antivirus Researcher

Reverse Engineering II: Basics. Gergely Erdélyi Senior Antivirus Researcher Reverse Engineering II: Basics Gergely Erdélyi Senior Antivirus Researcher Agenda Very basics Intel x86 crash course Basics of C Binary Numbers Binary Numbers 1 Binary Numbers 1 0 1 1 Binary Numbers 1

More information

IA-32 Architecture COE 205. Computer Organization and Assembly Language. Computer Engineering Department

IA-32 Architecture COE 205. Computer Organization and Assembly Language. Computer Engineering Department IA-32 Architecture COE 205 Computer Organization and Assembly Language Computer Engineering Department King Fahd University of Petroleum and Minerals Presentation Outline Basic Computer Organization Intel

More information

ICE Emulator for 68HC05 and 68HC08

ICE Emulator for 68HC05 and 68HC08 ICE Emulator for 68HC05 and 68HC08 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICE In-Circuit Emulator... ICE Target Guides... ICE Emulator for 68HC05 and 68HC08... 1 Warning...

More information

Mechanisms for entering the system

Mechanisms for entering the system Mechanisms for entering the system Yolanda Becerra Fontal Juan José Costa Prats Facultat d'informàtica de Barcelona (FIB) Universitat Politècnica de Catalunya (UPC) BarcelonaTech 2017-2018 QP Content Introduction

More information

Machine-level Representation of Programs. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Machine-level Representation of Programs. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Machine-level Representation of Programs Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Program? 짬뽕라면 준비시간 :10 분, 조리시간 :10 분 재료라면 1개, 스프 1봉지, 오징어

More information

x86 architecture et similia

x86 architecture et similia x86 architecture et similia 1 FREELY INSPIRED FROM CLASS 6.828, MIT A full PC has: PC architecture 2 an x86 CPU with registers, execution unit, and memory management CPU chip pins include address and data

More information

RTOS Debugger for RTX51 tiny

RTOS Debugger for RTX51 tiny RTOS Debugger for RTX51 tiny TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for RTX51 tiny... 1 Overview... 3 Brief Overview of Documents for New

More information

Reverse Engineering II: The Basics

Reverse Engineering II: The Basics Reverse Engineering II: The Basics Gergely Erdélyi Senior Manager, Anti-malware Research Protecting the irreplaceable f-secure.com Binary Numbers 1 0 1 1 - Nibble B 1 0 1 1 1 1 0 1 - Byte B D 1 0 1 1 1

More information

W4118: PC Hardware and x86. Junfeng Yang

W4118: PC Hardware and x86. Junfeng Yang W4118: PC Hardware and x86 Junfeng Yang A PC How to make it do something useful? 2 Outline PC organization x86 instruction set gcc calling conventions PC emulation 3 PC board 4 PC organization One or more

More information

Microkernel Construction

Microkernel Construction Microkernel Construction Kernel Entry / Exit Nils Asmussen 05/04/2017 1 / 45 Outline x86 Details Protection Facilities Interrupts and Exceptions Instructions for Entry/Exit Entering NOVA Leaving NOVA 2

More information

Binghamton University. CS-220 Spring X86 Debug. Computer Systems Section 3.11

Binghamton University. CS-220 Spring X86 Debug. Computer Systems Section 3.11 X86 Debug Computer Systems Section 3.11 GDB is a Source Level debugger We have learned how to debug at the C level Now, C has been translated to X86 assembler! How does GDB play the shell game? Makes it

More information

EECE416 :Microcomputer Fundamentals and Design. X86 Assembly Programming Part 1. Dr. Charles Kim

EECE416 :Microcomputer Fundamentals and Design. X86 Assembly Programming Part 1. Dr. Charles Kim EECE416 :Microcomputer Fundamentals and Design X86 Assembly Programming Part 1 Dr. Charles Kim Department of Electrical and Computer Engineering Howard University www.mwftr.com 1 Multiple Address Access

More information

ICE Emulator for Hitachi H8/300 and H8/500

ICE Emulator for Hitachi H8/300 and H8/500 ICE Emulator for Hitachi H8/300 and H8/500 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICE In-Circuit Emulator... ICE Target Guides... ICE Emulator for Hitachi H8/300 and H8/500...

More information

3. Process Management in xv6

3. Process Management in xv6 Lecture Notes for CS347: Operating Systems Mythili Vutukuru, Department of Computer Science and Engineering, IIT Bombay 3. Process Management in xv6 We begin understanding xv6 process management by looking

More information

OS Awareness Manual OSE Delta

OS Awareness Manual OSE Delta OS Awareness Manual OSE Delta TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... OS Awareness Manuals... OS Awareness Manual OSE Delta... 1 History... 3 Overview... 3 Brief Overview

More information

Assembly Language for Intel-Based Computers, 4 th Edition. Kip R. Irvine. Chapter 2: IA-32 Processor Architecture

Assembly Language for Intel-Based Computers, 4 th Edition. Kip R. Irvine. Chapter 2: IA-32 Processor Architecture Assembly Language for Intel-Based Computers, 4 th Edition Kip R. Irvine Chapter 2: IA-32 Processor Architecture Chapter Overview General Concepts IA-32 Processor Architecture IA-32 Memory Management Components

More information

Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD /12/2014 Slide 1

Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD /12/2014 Slide 1 Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD 21252 rkarne@towson.edu 11/12/2014 Slide 1 Intel x86 Aseembly Language Assembly Language Assembly Language

More information

For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to

For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. Contents at a Glance About the Author...xi

More information

Scott M. Lewandowski CS295-2: Advanced Topics in Debugging September 21, 1998

Scott M. Lewandowski CS295-2: Advanced Topics in Debugging September 21, 1998 Scott M. Lewandowski CS295-2: Advanced Topics in Debugging September 21, 1998 Assembler Syntax Everything looks like this: label: instruction dest,src instruction label Comments: comment $ This is a comment

More information

6/17/2011. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to:

6/17/2011. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to: Chapter 2: The Microprocessor and its Architecture Chapter 2: The Microprocessor and its Architecture Chapter 2: The Microprocessor and its Architecture Introduction This chapter presents the microprocessor

More information

ICE Emulator for 386/486

ICE Emulator for 386/486 ICE Emulator for 386/486 TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... ICE In-Circuit Emulator... ICE Target Guides... ICE Emulator for 386/486... 1 WARNING... 6 Quick Start...

More information

Chapter 2: The Microprocessor and its Architecture

Chapter 2: The Microprocessor and its Architecture Chapter 2: The Microprocessor and its Architecture Chapter 2: The Microprocessor and its Architecture Chapter 2: The Microprocessor and its Architecture Introduction This chapter presents the microprocessor

More information

x86 segmentation, page tables, and interrupts 3/17/08 Frans Kaashoek MIT

x86 segmentation, page tables, and interrupts 3/17/08 Frans Kaashoek MIT x86 segmentation, page tables, and interrupts 3/17/08 Frans Kaashoek MIT kaashoek@mit.edu Outline Enforcing modularity with virtualization Virtualize processor and memory x86 mechanism for virtualization

More information

MICROPROCESSOR ALL IN ONE. Prof. P. C. Patil UOP S.E.COMP (SEM-II)

MICROPROCESSOR ALL IN ONE. Prof. P. C. Patil UOP S.E.COMP (SEM-II) MICROPROCESSOR UOP S.E.COMP (SEM-II) 80386 ALL IN ONE Prof. P. C. Patil Department of Computer Engg Sandip Institute of Engineering & Management Nashik pc.patil@siem.org.in 1 Architecture of 80386 2 ARCHITECTURE

More information

RTOS Debugger for RTXC Quadros

RTOS Debugger for RTXC Quadros RTOS Debugger for RTXC Quadros TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for RTXC Quadros... 1 Overview... 3 Brief Overview of Documents for

More information

Buffer Overflow Attack

Buffer Overflow Attack Buffer Overflow Attack What every applicant for the hacker should know about the foundation of buffer overflow attacks By (Dalgona@wowhacker.org) Email: zinwon@gmail.com 2005 9 5 Abstract Buffer overflow.

More information

Machine and Assembly Language Principles

Machine and Assembly Language Principles Machine and Assembly Language Principles Assembly language instruction is synonymous with a machine instruction. Therefore, need to understand machine instructions and on what they operate - the architecture.

More information

Reverse Engineering II: The Basics

Reverse Engineering II: The Basics Reverse Engineering II: The Basics This document is only to be distributed to teachers and students of the Malware Analysis and Antivirus Technologies course and should only be used in accordance with

More information

ICS143A: Principles of Operating Systems. Midterm recap, sample questions. Anton Burtsev February, 2017

ICS143A: Principles of Operating Systems. Midterm recap, sample questions. Anton Burtsev February, 2017 ICS143A: Principles of Operating Systems Midterm recap, sample questions Anton Burtsev February, 2017 Describe the x86 address translation pipeline (draw figure), explain stages. Address translation What

More information

COS 318: Operating Systems. Overview. Prof. Margaret Martonosi Computer Science Department Princeton University

COS 318: Operating Systems. Overview. Prof. Margaret Martonosi Computer Science Department Princeton University COS 318: Operating Systems Overview Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Precepts: Tue (Tonight)!

More information

NEW CEIBO DEBUGGER. Menus and Commands

NEW CEIBO DEBUGGER. Menus and Commands NEW CEIBO DEBUGGER Menus and Commands Ceibo Debugger Menus and Commands D.1. Introduction CEIBO DEBUGGER is the latest software available from Ceibo and can be used with most of Ceibo emulators. You will

More information

Memory Models. Registers

Memory Models. Registers Memory Models Most machines have a single linear address space at the ISA level, extending from address 0 up to some maximum, often 2 32 1 bytes or 2 64 1 bytes. Some machines have separate address spaces

More information

Lecture Dependable Systems Practical Report Software Implemented Fault Injection. July 31, 2010

Lecture Dependable Systems Practical Report Software Implemented Fault Injection. July 31, 2010 Lecture Dependable Systems Practical Report Software Implemented Fault Injection Paul Römer Frank Zschockelt July 31, 2010 1 Contents 1 Introduction 3 2 Software Stack 3 2.1 The Host and the Virtual Machine.....................

More information

Introduction to IA-32. Jo, Heeseung

Introduction to IA-32. Jo, Heeseung Introduction to IA-32 Jo, Heeseung IA-32 Processors Evolutionary design Starting in 1978 with 8086 Added more features as time goes on Still support old features, although obsolete Totally dominate computer

More information

INTRODUCTION TO IA-32. Jo, Heeseung

INTRODUCTION TO IA-32. Jo, Heeseung INTRODUCTION TO IA-32 Jo, Heeseung IA-32 PROCESSORS Evolutionary design Starting in 1978 with 8086 Added more features as time goes on Still support old features, although obsolete Totally dominate computer

More information

RTOS Debugger for RTXC Quadros

RTOS Debugger for RTXC Quadros RTOS Debugger for RTXC Quadros TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents... RTOS Debuggers... RTOS Debugger for RTXC Quadros... 1 Overview... 3 Brief Overview of Documents for

More information