vmlinux.lds.s

来自「h内核」· S 代码 · 共 163 行

S
163
字号
/* ld script to make ARM Linux kernel * taken from the i386 version by Russell King * Written by Martin Mares <mj@atrey.karlin.mff.cuni.cz> */#include <asm-generic/vmlinux.lds.h>#include <linux/config.h>	OUTPUT_ARCH(arm)ENTRY(stext)#ifndef __ARMEB__jiffies = jiffies_64;#elsejiffies = jiffies_64 + 4;#endifSECTIONS{	. = TEXTADDR;	.init : {			/* Init code and data		*/		_stext = .;			_sinittext = .;			*(.init.text)			_einittext = .;		__proc_info_begin = .;			*(.proc.info)		__proc_info_end = .;		__arch_info_begin = .;			*(.arch.info)		__arch_info_end = .;		__tagtable_begin = .;			*(.taglist)		__tagtable_end = .;		. = ALIGN(16);		__setup_start = .;			*(.init.setup)		__setup_end = .;		__early_begin = .;			*(__early_param)		__early_end = .;		__initcall_start = .;			*(.initcall1.init)			*(.initcall2.init)			*(.initcall3.init)			*(.initcall4.init)			*(.initcall5.init)			*(.initcall6.init)			*(.initcall7.init)		__initcall_end = .;		__con_initcall_start = .;			*(.con_initcall.init)		__con_initcall_end = .;		__security_initcall_start = .;			*(.security_initcall.init)		__security_initcall_end = .;		. = ALIGN(32);		__initramfs_start = .;			usr/built-in.o(.init.ramfs)		__initramfs_end = .;		. = ALIGN(64);		__per_cpu_start = .;			*(.data.percpu)		__per_cpu_end = .;#ifndef CONFIG_XIP_KERNEL		__init_begin = _stext;		*(.init.data)		. = ALIGN(4096);		__init_end = .;#endif	}	/DISCARD/ : {			/* Exit code and data		*/		*(.exit.text)		*(.exit.data)		*(.exitcall.exit)	}	.text : {			/* Real text segment		*/		_text = .;		/* Text and read-only data	*/			*(.text)			SCHED_TEXT			LOCK_TEXT			*(.fixup)			*(.gnu.warning)			*(.rodata)			*(.rodata.*)			*(.glue_7)			*(.glue_7t)		*(.got)			/* Global offset table		*/	}	. = ALIGN(16);	__ex_table : {			/* Exception table		*/		__start___ex_table = .;			*(__ex_table)		__stop___ex_table = .;	}	RODATA	_etext = .;			/* End of text and rodata section */#ifdef CONFIG_XIP_KERNEL	__data_loc = ALIGN(4);		/* location in binary */	. = DATAADDR;#else	. = ALIGN(8192);	__data_loc = .;#endif	.data : AT(__data_loc) {		__data_start = .;	/* address in memory */		/*		 * first, the init task union, aligned		 * to an 8192 byte boundary.		 */		*(.init.task)#ifdef CONFIG_XIP_KERNEL		. = ALIGN(4096);		__init_begin = .;		*(.init.data)		. = ALIGN(4096);		__init_end = .;#endif		. = ALIGN(4096);		__nosave_begin = .;		*(.data.nosave)		. = ALIGN(4096);		__nosave_end = .;		/*		 * then the cacheline aligned data		 */		. = ALIGN(32);		*(.data.cacheline_aligned)		/*		 * and the usual data section		 */		*(.data)		CONSTRUCTORS		_edata = .;	}	.bss : {		__bss_start = .;	/* BSS				*/		*(.bss)		*(COMMON)		_end = .;	}					/* Stabs debugging sections.	*/	.stab 0 : { *(.stab) }	.stabstr 0 : { *(.stabstr) }	.stab.excl 0 : { *(.stab.excl) }	.stab.exclstr 0 : { *(.stab.exclstr) }	.stab.index 0 : { *(.stab.index) }	.stab.indexstr 0 : { *(.stab.indexstr) }	.comment 0 : { *(.comment) }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?