Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!sunybcs!bingvaxu!leah!uwmcsd1!ig!jade!ucbvax!CORY.BERKELEY.EDU!dillon From: dillon@CORY.BERKELEY.EDU (Matt Dillon) Newsgroups: comp.sys.amiga Subject: Re: Use of Resident Message-ID: <8710250912.AA17748@cory.Berkeley.EDU> Date: Sun, 25-Oct-87 04:12:24 EST Article-I.D.: cory.8710250912.AA17748 Posted: Sun Oct 25 04:12:24 1987 Date-Received: Tue, 27-Oct-87 01:48:57 EST Sender: daemon@ucbvax.BERKELEY.EDU Lines: 20 >I recently read that non-reentrant programs can still be made resident as >long as you only attempt to run one copy at a time. I am pretty sure the 'resident' programs are stored as segment lists (via LoadSeg). In this case, you cannot make a program resident unless it was written to be resident, EVEN IF YOU ONLY RUN ONE COPY AT A TIME!. The reason is simply... global variables. If the program modifies any of it's global variables, they will stay modified when the program is rerun at some later time. When one makes a declaration like: int GlobalVariable = 4; One assumes that the variable will hold 4 when the program is first run. Not so if the program modifies it and you then attempt to run the program again (if it is resident). The value will not initially be 4 on the second running. -Matt