[comp.unix.xenix] SCO "runbig" strangeness

root@libove.UUCP (The Super User) (04/10/88)

Hi world. I just tried to use the "runbig" command to execute a
very large editor I just built, because just executing the program
gets a "not enough core" error. The executable is 330K or so, and
my machine has a maximum process size of 1400K. But "runbig" says
that the executable for the editor isn't found, even though just
typing the name of the program will attempt to execute it, and
"runbig emacs" will find /usr/local/bin/emacs (micro emacs) and
run it...
Is there some given bogosity in "runbig" on SCO Xenix 2.2.1 ?
Any help would be appreciated.
Thanks
-Jay (Jay.Libove@andrew.cmu.edu  or  pitt!darth!libove!libove)

donegan@stanton.TCC.COM (Steven P. Donegan) (04/12/88)

In article <18@libove.UUCP>, root@libove.UUCP (The Super User) writes:
> 
> Hi world. I just tried to use the "runbig" command to execute a
> very large editor I just built, because just executing the program
> gets a "not enough core" error. The executable is 330K or so, and

I have found that the following compile switch works well and does not
require any use of runbig (and I've never seen runbig work):

add this to your compile lines   -Ml2t128

This seems to work for my monster size programs (I know, size is relative
but what do you want from a segmented architecture).
-- 
Steven P. Donegan
Sr. Telecommunications Analyst
Western Digital Corp.
donegan@stanton.TCC.COM

rosso@sco.COM (Ross Oliver) (04/15/88)

In article <12@stanton.TCC.COM> donegan@stanton.TCC.COM (Steven P. Donegan) writes:
>In article <18@libove.UUCP>, root@libove.UUCP (The Super User) writes:
>> 
>> Hi world. I just tried to use the "runbig" command to execute a
>> very large editor I just built, because just executing the program
>> gets a "not enough core" error. The executable is 330K or so, and
>
>I have found that the following compile switch works well and does not
>require any use of runbig (and I've never seen runbig work):
>
>add this to your compile lines   -Ml2t128
>
>This seems to work for my monster size programs (I know, size is relative
>but what do you want from a segmented architecture).
>-- 
>Steven P. Donegan
>Sr. Telecommunications Analyst
>Western Digital Corp.
>donegan@stanton.TCC.COM

The "not enough core" message (from the C shell, or "too big" from the
Bourne shell) means that your first data segment plus your stack exceeds
64K.  It has nothing to do with the total size of the program, or your
maximum process size.  Mr. Donegan's solution forces some data out of the
first segment into other data segments.  You can also use fixhdr(C) to
reduce the stack allocation (default is 4K).  The size(CP) utility
will tell you the size of the first data segment.  For a more detailed
explanation of this and other problems related to programming in the *86
segmented architecture, see my article on memory models in the March/April
issue of Discover, SCO's bimonthly newsletter.  If you don't have a copy,
I can e-mail the article on request.

Ross Oliver
Technical Support
The Santa Cruz Operation, Inc.
{uunet, decvax!microsoft, ucbvax!ucscc}!sco!rosso