Re: A89: nostub programs and shells.


[Prev][Next][Index][Thread]

Re: A89: nostub programs and shells.




On Tue, Nov 07, 2000, Zeljko Juric wrote:
> 
> Hi!
> 
> > Also, many programmers (not me) hate nostub programs because :
> > - the relocation table make them bigger
> 
> My experience shows that 40K long program compiled in "nostub" mode
> becomes 38-39K long in "DoorsOS" mode, so this is not so drastical
> difference.

Now add the new mlink relocation method on top of that and suddenly the
nostub program is about 37-38K.  :)


Here are two real-world examples:

			tichess		squarez
--------------------------------------------------------
number of relocations:	 1,325		 239
--------------------------------------------------------
(sizes in bytes)
nostub program:		50,179		9,853
kernel program:		47,759		9,141 *
mlink nostub program:	46,264		9,182
--------------------------------------------------------

* The kernel program is smaller because squarez has a 290 byte BSS block
  that is not included in the program image.  mlink will hopefully support
  BSS blocks in the future, making the squarez program image even smaller.


Ok, I know that this comparison is not quite fair.  tichess and squares are
in fact nostub programs so they don't take advantage of all the features of
the kernel (libraries and in-place patched ROM calls).  However, they DO
take advantage of the relocation method and the BSS support.

--
Johan  "Knowledge is an illusion without answers."



References: