On ELF, Part 2 (2018)
31–36 of 36 posts
Re: On ELF, Part 2 (2018)
#32I worked with a.out on early unixes and elf on later ones - not addressed here is the main reason for switching: ELF allowed you manage pages contiguously on disk so that they could be paged in directly (stuff can be page aligned within the file at it's natural offsets), while a.out was designed for swapped kernels where you would just read() data into a text section, address 0 might be 32 bytes from the start of a f…
What’s the advantage of that? Would the kernel just load the entire file into contiguous memory and set up pages at the correct physical addresses?
Re: On ELF, Part 2 (2018)
#33Re: On ELF, Part 2 (2018)
#34I worked with a.out on early unixes and elf on later ones - not addressed here is the main reason for switching: ELF allowed you manage pages contiguously on disk so that they could be paged in directly (stuff can be page aligned within the file at it's natural offsets), while a.out was designed for swapped kernels where you would just read() data into a text section, address 0 might be 32 bytes from the start of a f…
It is a kind of funny feeling to deal with import libraries and definition files on an UNIX.
Re: On ELF, Part 2 (2018)
#35I worked with a.out on early unixes and elf on later ones - not addressed here is the main reason for switching: ELF allowed you manage pages contiguously on disk so that they could be paged in directly (stuff can be page aligned within the file at it's natural offsets), while a.out was designed for swapped kernels where you would just read() data into a text section, address 0 might be 32 bytes from the start of a f…
What’s the advantage of that? Would the kernel just load the entire file into contiguous memory and set up pages at the correct physical addresses?