11 1 What is Embedded System University of Electronic Science Technology of China(UESTC) Case 1 Symbol table /*swap.c*/ /*main.c* extern int buft] int *bufp0=&bufTo] void swap(); int *bufp1; int buft2]=(1,2) void swap() int main() int temp; bufp1=&bufT1] swap() temp=*bufp0; return 0: *bufpO=*bufp1; *bufp1=temp; Real-Time System Lab LIAO Yong
11 Real-Time System Lab LIAO Yong University of Electronic Science & Technology of China (UESTC) Case 1 Symbol table 1 What is Embedded System /*main.c*/ void swap(); int buf[2]=(1,2); int main() { swap(); return 0; } /*swap.c*/ extern int buf[]; int *bufp0=&buf[0]; int *bufp1; void swap() { int temp; bufp1=&buf[1]; temp=*bufp0; *bufp0=*bufp1; *bufp1=temp; }
12 1 What is Embedded System University of Electronic Science Technology of China(UESTC) Case 1 00 Symbol Swap.o.symtab Symtab Type Modular section buf bufp0 bufp1 swap temp Real-Time System Lab LIAO Yong
12 Real-Time System Lab LIAO Yong University of Electronic Science & Technology of China (UESTC) Case 1 1 What is Embedded System Symbol Swap.o.symtab Symtab Type Modular section buf bufp0 bufp1 swap temp
13 1 What is Embedded System University of Electronic Science Technology of China(UESTC) 7F454C46 ELF header .text .rodata .data .bss 64线 FF45554454156555555国 symtab .rel.text Rel.data .debug .line .strtab Section header Relocatable Object File Real-Time System Lab LIAO Yong
13 Real-Time System Lab LIAO Yong University of Electronic Science & Technology of China (UESTC) 1 What is Embedded System Relocatable Object File 7F 45 4C 46 ELF header .text .rodata .data .bss symtab .rel.text .Rel.data .debug .line .strtab Section header
14 1 What is Embedded System University of Electronic Science Technology of China(UESTC) Case 1 typedef struct int name; int value; int size; char type:4; binding:4 char reserved; char section; HElf Symbol Value size type bind op ndx name 8 OBJECT GLOBAL 0 3 buf Real-Time System Lab LIAO Yong
14 Real-Time System Lab LIAO Yong University of Electronic Science & Technology of China (UESTC) Case 1 1 What is Embedded System typedef struct{ int name; int value; int size; char type:4; binding:4 char reserved; char section; }Elf_Symbol Value size type bind op ndx name 0 8 OBJECT GLOBAL 0 3 buf
15 1 What is Embedded System University of Electronic Science Technology of China(UESTC) Case 1 Symbol Swap.o.symtab Symtab Type Modular section buf Global (extern) main.o .data bufp0 V Global swap.o .data bufp1 √ Global swap.o .bss swap √ Global swap.o .text temp × Real-Time System Lab LIAO Yong
15 Real-Time System Lab LIAO Yong University of Electronic Science & Technology of China (UESTC) Case 1 1 What is Embedded System Symbol Swap.o.symtab Symtab Type Modular section buf √ Global (extern) main.o .data bufp0 √ Global swap.o .data bufp1 √ Global swap.o .bss swap √ Global swap.o .text temp ×