[comp.unix.xenix] ulimit in XENIX

dave@elandes.UUCP (05/11/87)

	I have run into the 2Mb ulimit a few times on my system.  The way
around this is to set ulimit in sh ( I normally use csh) and start the
process over.  Needless to say, I feel this to be a waste of machine time.

	Does anyone know how to raise the default ulimit?  I've tried setting
it in /etc/rc, but since that is just an invoked shell, it goes away by
the time anyone logs in.  I can't seem to find a tunable parameter for it 
in  /usr/sys/conf so a simple relinking is out until  I find it.  Can
anyone help??

	The system I use is a IBM AT (old) with IBM XENIX 2.0, a hacked serial
board for extra serial ports and a 1/4 inch tape.


Dave Mathis    UUCP ...oliveb!elandes!dave

jim@applix.UUCP (Jim Morton) (05/12/87)

In article <517@elandes.UUCP>, dave@elandes.UUCP (d. mathis) writes:
> 	Does anyone know how to raise the default ulimit?  I've tried setting
> it in /etc/rc, but since that is just an invoked shell, it goes away by
> the time anyone logs in.  I can't seem to find a tunable parameter for it 

I was amazed at how obscure the documentation for this was since I knew
how to do it but just wanted to quote the right manual page...anyways the
file /etc/default/login can contain a value for ULIMIT. If you put a line
that says ULIMIT=4096 in this file and then log in again, you will have
a file limit of 4 meg. The man page is default(F).

-- 
--
Jim Morton, APPLiX Inc., Westboro, MA
UUCP: ...seismo!harvard!halleys!applix!jim

gm@trsvax.UUCP (05/18/87)

As in another response, you can set the ULIMIT in /etc/default/login.
However, there are some Xenix's that do not support a large ULIMIT.

I know that the older IBM and SCO /etc/login's will not accept a 
ULIMIT larger than 32767. Some Xenix's will support larger, but the
login program will say "Could not set ULIMIT", even though the ULIMIT
was indeed set.

I complained about this during the Tandy release of Xenix. On Tandy Xenix,
you can set ULIMIT to a value larger than 32767 without anybody 
complaining. I personally have tested it up to ULIMIT=100000.

Warning to those people running an older 286 Xenix: If you have a file 
larger than 33MB, and you do a "cp filename bigfile" or you have any 
program which does a `fopen(bigfile, "w")', the system will trash your 
free list.  There is a bug in older Xenix kernels in the itrunc() routine
which loses track of the disk space above the 33MB limit. Anything
that calls unlink(), such as "rm" will work fine. 

One way to test this would be to set your ULIMIT above 32767, mount a 
floppy and do a:

	dd if=/.profile of=bigfile seek=63b

This will create a 33.6MB file on your floppy (!) with a huge hole in it. 
Now copy a smaller file on top of bigfile, umount the floppy and do a fsck 
of it.  If your kernel has the bug, you will wind up with several hundred 
blocks missing from the free list.


						-gm@trsvax.UUCP

			"I hear he checks his sanity with a stopwatch."
				"What do you check yours with, a dipstick?"

src@elandes.UUCP (D. Mathis) (05/22/87)

		For everyone who responded to my ulimit question, thanks, even
	those who suggested RTFM.  After reading the posted solution (which
	does the job very nicely, thank you), I went back to the docs to
	see how I missed it.   Obscure is not the word I would have used
	to describe this situation!!!!
		Its too bad I can't add lines like:
		MEM=40000  or
		SPEED=100  or
		RESOLUTION=2048x2048x1048576

		maybe next year....

		
-- 
	Dave Mathis, ELAN designs           UUCP  ...oliveb!elandes!dave