mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 08:42:43 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| /* The bootloader will look at this image and start execution at the symbol
 | |
|    designated as the entry point. */
 | |
| ENTRY(_start)
 | |
| 
 | |
| /* Tell where the various sections of the object files will be put in the final
 | |
|    kernel image. */
 | |
| SECTIONS
 | |
| {
 | |
| 	/* Begin putting sections at 1 MiB, a conventional place for kernels to be
 | |
| 	   loaded at by the bootloader. */
 | |
| 	. = 0x10000;
 | |
| 
 | |
| 	/* First put the multiboot header, as it is required to be put very early
 | |
| 	   early in the image or the bootloader won't recognize the file format.
 | |
| 	   Next we'll put the .text section. */
 | |
| 	.text BLOCK(4K) : ALIGN(4K)
 | |
| 	{
 | |
|         _start.o
 | |
| 		*(.multiboot)
 | |
| 		*(.text)
 | |
| 	}
 | |
| 
 | |
| 	/* Read-only data. */
 | |
| 	.rodata BLOCK(4K) : ALIGN(4K)
 | |
| 	{
 | |
| 		*(.rodata)
 | |
| 	}
 | |
| 
 | |
| 	/* Read-write data (initialized) */
 | |
| 	.data BLOCK(4K) : ALIGN(4K)
 | |
| 	{
 | |
| 		*(.data)
 | |
| 	}
 | |
| 
 | |
| 	/* Read-write data (uninitialized) and stack */
 | |
| 	.bss BLOCK(4K) : ALIGN(4K)
 | |
| 	{
 | |
| 		*(COMMON)
 | |
| 		*(.bss)
 | |
| 	}
 | |
| 
 | |
| 	/* The compiler may produce other sections, by default it will put them in
 | |
| 	   a segment with the same name. Simply add stuff here as needed. */
 | |
| }
 | 
