* Re: On-line linking? [not found] <CABdhv6+J+gr57SpAxtqZF3Lj9MGu9QkB04HoaqEJkgjYvcP8zQ@mail.gmail.com> @ 2020-02-11 19:31 ` Marc-F. Lucca-Daniau [not found] ` <CABdhv6JZ9F7eZdOhM2wkdoyvd4FtnjtT4a1-1b_2+xbnryzBvA@mail.gmail.com> 0 siblings, 1 reply; 3+ messages in thread From: Marc-F. Lucca-Daniau @ 2020-02-11 19:31 UTC (permalink / raw) To: Marcin Laszewski, ELKS Hello Marcin, It looks like you are hitting the 64K limit that Jody experienced in his previous attempt to make 'busyelks', so the splitting in 3 executables... ELKS does not support dynamic linking. Even with that linking, the IA16 architecture could not break the 64K limit without 'magic' tricks like 'far' pointers, segmentation in 286 protected mode, external MMU, etc, that are definitively not in today scope of ELKS. On-line linking could appear as a good idea on the paper or in modern 4 GHz emulators, but on real & antic HW with slow disk I/O, it merely does not work (or maybe with a very big coffee mug ?). I am not even talking of embedded systems... LD86 was part of the DEV86 set that we dropped some months ago, for some very very good reasons. Welcome to the "small is beautiful" world, where ELKS contributors have to write compact & efficient C code :-) ! Thanks, MFLD Le 11/02/2020 à 14:37, Marcin Laszewski a écrit : > Hello Marc, > > The current size of 'busyelks' is approaching to 64kB. > > As I know ELKS does not support 'dynamic libraries', but what about > on-line static linking? > We can keep 'main.o' file, link it on-line with the appropriate > 'plugins' (eg. dirname.o, basename.o, du.o, ...) statically and run. > Look at the attached piece of code - there is an exmple of this idea > for Debian/Linux. > > The only problem: there is no linker working in ELKS system. > ia16-elf-ld is too large. Can we adopt ld86? > > ml. ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <CABdhv6JZ9F7eZdOhM2wkdoyvd4FtnjtT4a1-1b_2+xbnryzBvA@mail.gmail.com>]
* Re: On-line linking? [not found] ` <CABdhv6JZ9F7eZdOhM2wkdoyvd4FtnjtT4a1-1b_2+xbnryzBvA@mail.gmail.com> @ 2020-02-15 13:59 ` Marc-F. Lucca-Daniau [not found] ` <CABdhv6JDmQfwLZUWdvZwTJPZVFU7pgqT7jnH10t9VCZeyZ-52Q@mail.gmail.com> 0 siblings, 1 reply; 3+ messages in thread From: Marc-F. Lucca-Daniau @ 2020-02-15 13:59 UTC (permalink / raw) To: Marcin Laszewski; +Cc: ELKS Hello Marcin, The executable file format is still the old 'a.out' one: Documentation/html/exe_format.html Please tell me if anything is not clear so that we would address it in the documentation. Stripping ? 'ia16-elf-strip' knows how to strip the ELF format (as it name tells it :-), but even if intermediate object files (*.o *.a) are in ELF, ELKS has custom 'ld' scripts (see '*.ld' in the repository) that convert ELF format to 'a.out' format, and drop out all that is not 'code', 'data', 'bbs' and 'rodata'. So they already strip... Thanks, MFLD Le 13/02/2020 à 13:42, Marcin Laszewski a écrit : > Thank you for your explanation. > > Could you tell me... > > - ...where I can find description of ELKS executable file? 'file' > oprogram recognize it as 'Linux-8086', but there is no info about this > format. Ihave found description of process' memory only in > 'Documentation' directory. > > - ...how to perform 'strip'. There is ia16-elf-strip program but it > says it doesn't recognize output format. > > Thanks in advance, Marcin. ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <CABdhv6JDmQfwLZUWdvZwTJPZVFU7pgqT7jnH10t9VCZeyZ-52Q@mail.gmail.com>]
[parent not found: <a1cb725a-1076-cab5-e48e-53c269b268f1@gmail.com>]
[parent not found: <CABdhv6LTUQwi2vXi8+n9pGD1WdTF-_YFtSpXRGsJu139F1KaiA@mail.gmail.com>]
* Re: On-line linking? [not found] ` <CABdhv6LTUQwi2vXi8+n9pGD1WdTF-_YFtSpXRGsJu139F1KaiA@mail.gmail.com> @ 2020-02-19 20:36 ` Marc-F. Lucca-Daniau 0 siblings, 0 replies; 3+ messages in thread From: Marc-F. Lucca-Daniau @ 2020-02-19 20:36 UTC (permalink / raw) To: Marcin Laszewski; +Cc: ELKS Thank you Marcin ! Committed to https://github.com/elks-org/elks/commit/63378c86ea0ddf717a8429fa5728e52f4fcbe1b5 MFLD Le 17/02/2020 à 08:56, Marcin Laszewski a écrit : > Thank you very much, > > I see it in our git repository now. I've atteched two small patches > (HTML formatting). > > Sincerely. marcin. > > 2020-02-16 17:59 GMT+01:00, Marc-F. Lucca-Daniau <mfld.fr@gmail.com>: >> (...) >> Here is the right link: >> (...) ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-02-19 20:36 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <CABdhv6+J+gr57SpAxtqZF3Lj9MGu9QkB04HoaqEJkgjYvcP8zQ@mail.gmail.com>
2020-02-11 19:31 ` On-line linking? Marc-F. Lucca-Daniau
[not found] ` <CABdhv6JZ9F7eZdOhM2wkdoyvd4FtnjtT4a1-1b_2+xbnryzBvA@mail.gmail.com>
2020-02-15 13:59 ` Marc-F. Lucca-Daniau
[not found] ` <CABdhv6JDmQfwLZUWdvZwTJPZVFU7pgqT7jnH10t9VCZeyZ-52Q@mail.gmail.com>
[not found] ` <a1cb725a-1076-cab5-e48e-53c269b268f1@gmail.com>
[not found] ` <CABdhv6LTUQwi2vXi8+n9pGD1WdTF-_YFtSpXRGsJu139F1KaiA@mail.gmail.com>
2020-02-19 20:36 ` Marc-F. Lucca-Daniau
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox