亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? elf.h

?? 自己動手寫操作系統(tǒng)的隨書光盤
?? H
字號:

//	Name           Size Alignment   Purpose
//	====           ==== =========   =======
//	Elf32_Addr      4       4       Unsigned program address
//	Elf32_Half      2       2       Unsigned medium integer
//	Elf32_Off       4       4       Unsigned file offset
//	Elf32_Sword     4       4       Signed large integer
//	Elf32_Word      4       4       Unsigned large integer
//	unsigned char   1       1       Unsigned small integer
	typedef	DWORD	Elf32_Addr;
	typedef	WORD	Elf32_Half;
	typedef	DWORD	Elf32_Off;
	typedef	DWORD	Elf32_Sword;
	typedef	DWORD	Elf32_Word;

#define EI_NIDENT       16

	// ELF header
	typedef struct {
		unsigned char       e_ident[EI_NIDENT];
		Elf32_Half          e_type;
					//	e_type
					//
					//	該成員確定該object的類型。
					//
					//	Name        Value  Meaning
					//	====        =====  =======
					//	ET_NONE         0  No file type
					//	ET_REL          1  Relocatable file
					//	ET_EXEC         2  Executable file
					//	ET_DYN          3  Shared object file
					//	ET_CORE         4  Core file
					//	ET_LOPROC  0xff00  Processor-specific
					//	ET_HIPROC  0xffff  Processor-specific

		Elf32_Half          e_machine;
					//	e_machine
					//			
					//	該成員變量指出了運(yùn)行該程序需要的體系結(jié)構(gòu)。
					//
					//	Name      Value  Meaning
					//	====      =====  =======
					//	EM_NONE       0  No machine
					//	EM_M32        1  AT&T WE 32100
					//	EM_SPARC      2  SPARC
					//	EM_386        3  Intel 80386
					//	EM_68K        4  Motorola 68000
					//	EM_88K        5  Motorola 88000
					//	EM_860        7  Intel 80860
					//	EM_MIPS       8  MIPS RS3000
			
		Elf32_Word          e_version;
					//	e_version
					//
					//	這個成員確定object文件的版本。
					//
					//	Name         Value  Meaning
					//	====         =====  =======
					//	EV_NONE          0  Invalid version
					//	EV_CURRENT       1  Current version
			
		Elf32_Addr          e_entry;
					//	該成員是系統(tǒng)第一個傳輸控制的虛擬地址,在那啟動進(jìn)程。
					//	假如文件沒有如何關(guān)聯(lián)的入口點(diǎn),該成員就保持為 0。

		Elf32_Off           e_phoff;
					//	該成員保持著程序頭表(program header table)在文件中的偏移量(以字節(jié)計(jì)數(shù))。
					//	假如該文件沒有程序頭表的的話,該成員就保持為 0。

		Elf32_Off           e_shoff;
					//	該成員保持著section頭表(section header table)在文件中的偏移量(以字節(jié)計(jì)數(shù))。
					//	假如該文件沒有section頭表的的話,該成員就保持為0。

		Elf32_Word          e_flags;
					//	該成員保存著相關(guān)文件的特定處理器標(biāo)志。
					//	flag的名字來自于EF_<machine>_<flag>。看下機(jī)器信息“Machine Information”部分的flag的定義。

		Elf32_Half          e_ehsize;
					//	該成員保存著ELF頭大小(以字節(jié)計(jì)數(shù))。

		Elf32_Half          e_phentsize;
					//	該成員保存著在文件的程序頭表(program header table)中一個入口的大小
					//	(以字節(jié)計(jì)數(shù))。所有的入口都是同樣的大小。

		Elf32_Half          e_phnum;
					//	該成員保存著在程序頭表中入口的個數(shù)。
					//	因此,e_phentsize和e_phnum的乘機(jī)就是表的大小(以字節(jié)計(jì)數(shù)).
					//	假如沒有程序頭表(program header table),e_phnum變量為0。

		Elf32_Half          e_shentsize;
					//	該成員保存著section頭的大小(以字節(jié)計(jì)數(shù))。
					//	一個section頭是在section頭表(section header table)的一個入口;
					//	所有的入口都是同樣的大小。

		Elf32_Half          e_shnum;
					//	該成員保存著在section header table中的入口數(shù)目。
					//	因此,e_shentsize和e_shnum的乘積就是section頭表的大小(以字節(jié)計(jì)數(shù))。
					//	假如文件沒有section頭表,e_shnum值為0。

		Elf32_Half          e_shstrndx;
					//	該成員保存著跟section名字字符表相關(guān)入口的section頭表(section header table)索引。
					//	假如文件中沒有section名字字符表,該變量值為SHN_UNDEF。
					//	更詳細(xì)的信息 看下面“Sections”和字符串表(“String Table”) 。

	} Elf32_Ehdr;

	char sz_desc_e_type[][128] = {	"No file type",
									"Relocatable file",
									"Executable file",
									"Shared object file",
									"Core file"
									};

	char sz_desc_e_machine[][128] = {"No mach", "AT&T", "SPARC", "80386", "Motorola 68", "Motorola 88", "Unknown", "8086", "MIPS"};
	
	char sz_desc_e_entry[] = "Entry point.";


	// Program Header		
	typedef struct {
		Elf32_Word p_type;
					//	Name             Value
					//	====             =====
					//	PT_NULL              0
					//	PT_LOAD              1
					//	PT_DYNAMIC           2
					//	PT_INTERP            3
					//	PT_NOTE              4
					//	PT_SHLIB             5
					//	PT_PHDR              6
					//	PT_LOPROC   0x70000000
					//	PT_HIPROC   0x7fffffff

		Elf32_Off  p_offset;
					//	該成員給出了該段的駐留位置相對于文件開始處的偏移。

		Elf32_Addr p_vaddr;
					//	該成員給出了該段在內(nèi)存中的首字節(jié)地址。

		Elf32_Addr p_paddr;
		
		Elf32_Word p_filesz;
					//	文件映像中該段的字節(jié)數(shù);它可能是 0 。

		Elf32_Word p_memsz;
					//	內(nèi)存映像中該段的字節(jié)數(shù);它可能是 0 。

		Elf32_Word p_flags;

		Elf32_Word p_align;
					//	該成員給出了該段在內(nèi)存和文件中排列值。
					//	0 和 1 表示不需要排列。否則, p_align 必須為正的 2 的冪,
					//	并且 p_vaddr 應(yīng)當(dāng)?shù)扔?p_offset 模 p_align 。


	} Elf32_Phdr;
	
	
	char sz_desc_p_type[][128] = {"PT_NULL", "PT_LOAD", "PT_DYNAMIC", "PT_INTERP", "PT_NOTE", "PT_SHLIB", "PT_PHDR"};

	// Section Header
	typedef struct {
		Elf32_Word sh_name;
					//	該成員指定了這個section的名字。
					//	它的值是section報頭字符表section的索引。[看以下的“String Table”], 以NULL空字符結(jié)束。

		Elf32_Word sh_type;
					//	Section Types, sh_type
					//	---------------------------
					//	Name                 Value    Description
					//	====                 =====    ===========
					//	SHT_NULL				 0    該值表明該section頭是無效的;它沒有相關(guān)的section。
					//	SHT_PROGBITS			 1    該section保存被程序定義了的一些信息,它的格式和意義取決于程序本身。
					//	SHT_SYMTAB				 2    該sections保存著一個符號表(symbol table)。
					//	SHT_STRTAB				 3    該section保存著一個字符串表。
					//	SHT_RELA				 4    該section保存著具有明確加數(shù)的重定位入口。
					//	SHT_HASH				 5    該標(biāo)號保存著一個標(biāo)號的哈希(hash)表。
					//	SHT_DYNAMIC				 6    該section保存著動態(tài)連接的信息。
					//	SHT_NOTE				 7    該section保存著其他的一些標(biāo)志文件的信息。
					//	SHT_NOBITS				 8    該類型的section在文件中不占空間,但是類似SHT_PROGBITS。
					//	SHT_REL					 9    該section保存著重定位的入口。
					//	SHT_SHLIB				10    該section類型保留但語意沒有指明。包含這個類型的section的程序是不符合ABI的。
					//	SHT_DYNSYM				11    該sections保存著一個符號表(symbol table)。
					//	SHT_LOPROC		0x70000000    在這范圍之間的值為特定處理器語意保留的。
					//	SHT_HIPROC		0x7fffffff    在這范圍之間的值為特定處理器語意保留的。
					//	SHT_LOUSER		0x80000000    該變量為應(yīng)用程序保留的索引范圍的最小邊界。
					//	SHT_HIUSER		0xffffffff    該變量為應(yīng)用程序保留的索引范圍的最大邊界。

			
		Elf32_Word sh_flags;
					//	Section Attribute Flags, sh_flags
					//	-----------------------------------		
					//	Name                Value    Description
					//	====                =====    ===========
					//	SHF_WRITE             0x1    該section包含了在進(jìn)程執(zhí)行過程中可被寫的數(shù)據(jù)。
					//	SHF_ALLOC             0x2    該section在進(jìn)程執(zhí)行過程中占據(jù)著內(nèi)存。
					//	SHF_EXECINSTR         0x4    該section包含了可執(zhí)行的機(jī)器指令。
					//	SHF_MASKPROC   0xf0000000    所有的包括在這掩碼中的位為特定處理語意保留的。

		Elf32_Addr sh_addr;
					//	假如該section將出現(xiàn)在進(jìn)程的內(nèi)存映象空間里,該成員給出了一個該section在內(nèi)存中的位置。否則,該變量為0。

		Elf32_Off  sh_offset;
					//	該成員變量給出了該section的字節(jié)偏移量(從文件開始計(jì)數(shù))。

		Elf32_Word sh_size;
					//	該成員給你了section的字節(jié)大小。

		Elf32_Word sh_link;
					//	該成員保存了一個section報頭表的索引連接,它的解釋依靠該section的類型。
					//	更多信息參見表"sh_link and sh_info Interpretation"

		Elf32_Word sh_info;
					//	該成員保存著額外的信息,它的解釋依靠該section的類型。

					//	sh_link and sh_info Interpretation

					//	-------------------------------------------------------------------------------
					//	sh_type        sh_link                          sh_info
					//	=======        =======                          =======
					//	SHT_DYNAMIC    The section header index of      0
					//	               the string table used by
					//	               entries in the section.
					//	-------------------------------------------------------------------------------
					//	SHT_HASH       The section header index of      0
					//	               the symbol table to which the
					//	               hash table applies.
					//	-------------------------------------------------------------------------------
					//	SHT_REL        The section header index of      The section header index of
					//	SHT_RELA       the associated symbol table.     the section to which the
					//	                                                relocation applies.
					//	-------------------------------------------------------------------------------
					//	SHT_SYMTAB     The section header index of      One greater than the symbol
					//	-------------------------------------------------------------------------------
					//	SHT_DYNSYM     the associated string table.     table index of the last local
					//	               symbol (binding STB_LOCAL).
					//	-------------------------------------------------------------------------------
					//	other          SHN_UNDEF                        0
					//	-------------------------------------------------------------------------------
			

		Elf32_Word sh_addralign;
					//	一些sections有地址對齊的約束。

		Elf32_Word sh_entsize;
					//	一些sections保存著一張固定大小入口的表,就象符號表。
					//	對于這樣一個section來說,該成員給出了每個入口的字節(jié)大小。
					//	如果該section沒有保存著一張固定大小入口的表,該成員就為0。
	} Elf32_Shdr;
	
	
	char sz_desc_sh_type[][128] = {	"SHT_NULL", "SHT_PROGBITS", "SHT_SYMTAB", "SHT_STRTAB",
									"SHT_RELA", "SHT_HASH", "SHT_DYNAMIC", "SHT_NOTE",
									"SHT_NOBITS", "SHT_REL", "SHT_SHLIB", "SHT_DYNSYM"};	
	char sz_desc_sh_flags[][128] = {"Unknown", "SHF_WRITE", "SHF_ALLOC", "SHF_WRITE & SHF_ALLOC", "SHF_EXECINSTR",
									"SHF_WRITE & SHF_ALLOC", "SHF_ALLOC & SHF_EXECINSTR",
									"SHF_WRITE & SHF_ALLOC & SHF_EXECINSTR"};
	
	char sz_desc_sh_addr[] = "Position in Mem.";
	
	char sz_desc_sh_offset[] = "Position in file.";

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美电影在线免费观看| 韩国女主播一区| 国产精品久久久久久久裸模| 久久久久久久性| 久久久精品欧美丰满| 久久色视频免费观看| 精品国产一区二区三区久久影院| 欧美α欧美αv大片| 精品欧美久久久| 久久网这里都是精品| 国产欧美日韩中文久久| 国产欧美一区二区精品性| 国产欧美一区二区精品忘忧草 | 国产丝袜美腿一区二区三区| 欧美一级高清片| 精品久久久久久综合日本欧美| 日韩女优毛片在线| 日韩亚洲国产中文字幕欧美| 久久久亚洲午夜电影| 中文字幕在线不卡| 亚洲狠狠爱一区二区三区| 日本女人一区二区三区| 黄色成人免费在线| 色婷婷综合久久久| 51精品国自产在线| 久久亚洲一级片| 亚洲欧美日本在线| 麻豆精品一二三| 97久久超碰精品国产| 日韩欧美一区在线| 国产精品美女久久久久久| 亚洲自拍偷拍麻豆| 国产毛片精品国产一区二区三区| 99国产精品久久久久久久久久| 成人性视频网站| 欧日韩精品视频| 精品盗摄一区二区三区| 国产精品高潮呻吟久久| 一区二区三区精密机械公司| 久久精品国产精品青草| 国产精品1024久久| 色一区在线观看| 久久综合色天天久久综合图片| 亚洲精品免费在线播放| 日韩不卡一区二区三区| 美女性感视频久久| www.欧美.com| 日韩视频在线一区二区| 在线电影院国产精品| 欧美va亚洲va| 亚洲乱码中文字幕| 天堂av在线一区| 色婷婷久久久久swag精品| 精品视频全国免费看| 国产精品超碰97尤物18| 国产一区二区三区黄视频| 欧美久久一二区| 玉米视频成人免费看| 成人黄色在线看| 久久综合久久久久88| 日韩黄色在线观看| 欧美日韩一级黄| 一区二区欧美精品| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 国产精品国产三级国产三级人妇| 日本不卡一二三| 欧美一区中文字幕| 天天影视涩香欲综合网| 欧美性xxxxxxxx| 亚洲女人小视频在线观看| 成人午夜精品在线| 中文字幕av一区二区三区免费看 | caoporn国产精品| 国产欧美精品一区二区色综合| 黑人巨大精品欧美黑白配亚洲| 56国语精品自产拍在线观看| 日韩电影在线观看网站| 欧美电影影音先锋| 青青草97国产精品免费观看 | 国产美女精品人人做人人爽| 日韩欧美一级精品久久| 久久精品99国产国产精| 精品福利在线导航| 国产酒店精品激情| 欧美韩日一区二区三区四区| 国产**成人网毛片九色| 中文字幕免费不卡在线| 国产精品白丝av| 久久久91精品国产一区二区精品 | 亚洲18色成人| 在线观看一区日韩| 五月激情综合婷婷| 精品成人在线观看| 成人av网站大全| 亚洲国产一二三| 日韩精品自拍偷拍| 高清shemale亚洲人妖| 综合av第一页| 欧美精品三级日韩久久| 国产在线精品一区二区| 日韩一区在线播放| 欧美日韩dvd在线观看| 国产综合久久久久影院| 国产精品欧美极品| 欧美片网站yy| 国产超碰在线一区| 亚洲成人精品一区| 久久久99精品久久| 欧美日韩www| 成人美女在线视频| 日韩国产在线一| 国产精品免费久久| 欧美丝袜自拍制服另类| 国产在线一区观看| 一区精品在线播放| 精品国产免费视频| 91福利社在线观看| 九九九久久久精品| 亚洲第一搞黄网站| 国产精品久久毛片av大全日韩| 欧美日韩视频一区二区| 丁香六月综合激情| 日本午夜一区二区| 夜夜嗨av一区二区三区中文字幕| 日韩一级高清毛片| 色综合色狠狠综合色| 精品在线播放免费| 亚洲欧美另类小说视频| 日韩一区二区免费高清| 欧美亚洲另类激情小说| 国产91丝袜在线播放0| 天堂资源在线中文精品| 亚洲天堂a在线| 国产精品乱码人人做人人爱 | 欧美精品一二三区| 欧美主播一区二区三区美女| 成人中文字幕电影| 国产馆精品极品| 蜜臀av一区二区| 亚洲成a人v欧美综合天堂| 综合久久国产九一剧情麻豆| 日韩欧美激情一区| 91精品国产综合久久精品图片| 色嗨嗨av一区二区三区| 97se亚洲国产综合自在线| 成人午夜电影小说| 国产精品亚洲一区二区三区妖精| 久久成人免费日本黄色| 美国av一区二区| 麻豆成人综合网| 蜜臂av日日欢夜夜爽一区| 日本大胆欧美人术艺术动态| 午夜影院久久久| 亚洲成人www| 日韩av在线免费观看不卡| 亚欧色一区w666天堂| 亚洲国产日产av| 无吗不卡中文字幕| 日韩va亚洲va欧美va久久| 蜜臀国产一区二区三区在线播放| 日韩av一区二区三区| 卡一卡二国产精品| 国产在线播放一区| 成人污视频在线观看| av成人免费在线| 欧美亚洲另类激情小说| 91麻豆精品91久久久久同性| 欧美一级高清大全免费观看| 日韩美女视频一区二区在线观看| 久久网站最新地址| 亚洲天堂精品在线观看| 亚洲第一av色| 国产一区二区三区日韩| 成人综合在线观看| 欧美日韩一区中文字幕| 日韩写真欧美这视频| 国产色综合久久| 亚洲制服丝袜av| 韩国视频一区二区| 91在线云播放| 欧美成人精品二区三区99精品| 久久久综合精品| 亚洲国产一二三| 国产一区二区三区av电影| 91免费在线视频观看| 日韩一区二区三区免费观看| 国产精品日韩成人| 日本强好片久久久久久aaa| 国产成人自拍高清视频在线免费播放| 91在线视频免费观看| 欧美一区二区视频在线观看2022| 久久久高清一区二区三区| 一区二区三区精密机械公司| 国产麻豆成人传媒免费观看| 在线亚洲欧美专区二区| 国产日产精品1区| 日韩国产成人精品| 91视频观看免费| 久久综合九色综合欧美98| 亚洲午夜在线电影|