cc(1): Questions about "-i"

Mark E. Sunderlin megabyte at chinet.UUCP
Tue Jun 17 05:58:25 AEST 1986


   My SYSIII machine has a -i option to its ld(1) command. It is described
as such:
-i	Seperate the program text and data areas when the output file is
executed.  Text occupies segement 0; its origin is 0x0000. Data and bss
occupy segement 1;data's origin is 0x0000. Bss follows data.

I am unsuure as to the exact effects of this option.  If I understand it,
when my program runs it is in memory as such:

_______________________
| program   code      |   / \ Lower addresses
-----------------------    |
| program   data      |    |
-----------------------   \ / Higher addresses

As opposed to having the program instructions and data mixed in among each
other.  I have a friend who says this is true and it is done so that two 
people running the same program can share text segments and each have its
own data area.  This saving memory and time.  

Could some one explain the -i option to me.  I don't even see it in my SYSV
documentation.  Also, does UN*X keep only one copy of a program in memory,
even if two or more people are running it?

If it means anything , I am running on a Zilog S8000 wih ZEUS 3.21 which is a
sysIII port.  
-- 
_________________________________________________________________________
UUCP:	(1) seismo!dolqci!irsdcp!scsnet!sunder		Mark E. Sunderlin
	(2) ihnp4!chinet!megabyte			aka Dr. Megabyte
CIS:	74026,3235					(202) 634-2529
Quote:	"You have to have FAITH, for that to work on me!"   
Mail:	IRS 1111 Constitution Ave. NW  PM:PFR:D:NO Washington, DC 20224  



More information about the Comp.unix mailing list