The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [pups] bsd2.11 kernel compile
@ 2002-06-18  3:11 Steven M. Schultz
  0 siblings, 0 replies; 5+ messages in thread
From: Steven M. Schultz @ 2002-06-18  3:11 UTC (permalink / raw)


Hi!

> From: "Chuck Dickman" <chd_1 at nktelco.net>

	I see you beat me to the answer ;)

> During the compile 'size' outputs a list of the sizes of the
> overlays. Look at the output. For mine....
> 
> > How do I figure out which overlay (or base) is the problem?
> 
> The base must be less than 7 8k pages or 57344(decimal) bytes.
> Each overlay must be less than 8k bytes or 8192(decimal).
> The network code is not overlayed, so you have 8 pages or the
> full 64k. 

	And you use "size" on the .o files to see how much each object file
	contributes to an overlay.

	With the exception of a few .o files which *must* be in the base
	segment (and these are identified in the Makefile) anything can go
	anywhere it will fit.  The overlay switching is extremely efficient
	so don't worry about the 'affinity' of modules too much.

	Oh, it should be mentioned that it is not legal to have an empty 
	(0 length) overlay except at the end - i.e. you can't have overlay 3
	be 0 bytes if overlay 4 or higher has nonzero size.

> To make it work, just get the sizes below the limits. The 
> optimal arrangement would be placing the code in such that
> the overlay changes were minimized. So... move your system
> disk drivers into base and change the configuration to
> remove any hardware you don't actually have. 
	
	With the exception of perhaps the tty driver for the specific serial
	devices present on the system it's not worth trying to pack things
	"optimally".   The overhead of overlays is inhererent in the function
	prologue and epilogue - the only extra overhead of actually switching
	overlays is stuffing ~two words or so into the MMU registers.

	DO NOT remove anything from the actual OV lines in the makefile - just
	make sure you define/configure devices as not being present in the
	config file (by saying you have 0 of them).  Then the .o files do
	not take up any space and can be segregated into unused overlays
	at the end (OV9 or 10 or so).

	Good Luck!

	Steven Schultz
	sms at 2bsd.com



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [pups] bsd2.11 kernel compile
  2002-06-18  0:41 joseph lang
  2002-06-18  2:40 ` Chuck Dickman
  2002-06-18  7:55 ` Jochen Kunz
@ 2002-06-19  0:42 ` joseph lang
  2 siblings, 0 replies; 5+ messages in thread
From: joseph lang @ 2002-06-19  0:42 UTC (permalink / raw)


Thank you for your quick and accurate answers. 

My "junk-box" 11 (jb11.notms.net) is happy and 
on my local network.

For those of you who may be interested the system is built
entirely from scrap..

The CPU is from a Decserver 550. It's a j11 (18mhz.) with 
1.5 meg of ram. and pdp11/53 proms. I bought the RQDX3 on 
E-bay. The disk drive was from My ever decreasing pile of
MFM drives (rd32)
The chassis is home built. (stop laughing it looks pretty 
good ;-) The power supply is an open frame switcher from a 
local electronics scrap dealer. I wire-wrapped the power-on
reset and line time clock generator circuits. The boards 
are in a H-9270 (Q-18) backplane with additional lines
wrapped to make it Q-22.

It sounds like a real kludge! Anybody got a spare BA23? ;-) 

I loaded the root filesystem with vtserver. Thanks Warren!
VTC and vtserver were used to load /usr. I had to strip 
a lot of stuff from /usr to get it to fit on a single 
drive. (games doc ingres and man pages)

# df
Filesystem  1K-blocks     Used    Avail Capacity  Mounted on
/dev/ra0a        9842     2952     6890    30%    /
/dev/ra0c       26084    14966    11118    57%    /usr


As soon as I build a copy of Chuck Dickman's ATA board
I'll load up everything. 

joe lang



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [pups] bsd2.11 kernel compile
  2002-06-18  0:41 joseph lang
  2002-06-18  2:40 ` Chuck Dickman
@ 2002-06-18  7:55 ` Jochen Kunz
  2002-06-19  0:42 ` joseph lang
  2 siblings, 0 replies; 5+ messages in thread
From: Jochen Kunz @ 2002-06-18  7:55 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1347 bytes --]

On 2002.06.18 02:41 joseph lang wrote:

> How do I figure out which overlay (or base) is the problem?
Add this to your Makefile and you can "make" a list of the individual
overlay sizes:

sizes: sizes.awk
	@echo -n "BASE	" ; size ${BASE} | awk -f sizes.awk
	@echo -n "OV1	" ; size ${OV1} | awk -f sizes.awk
	@echo -n "OV2	" ; size ${OV2} | awk -f sizes.awk
	@echo -n "OV3	" ; size ${OV3} | awk -f sizes.awk
	@echo -n "OV4	" ; size ${OV4} | awk -f sizes.awk
	@echo -n "OV5	" ; size ${OV5} | awk -f sizes.awk
	@echo -n "OV6	" ; size ${OV6} | awk -f sizes.awk
	@echo -n "OV7	" ; size ${OV7} | awk -f sizes.awk
	@echo -n "OV8	" ; size ${OV8} | awk -f sizes.awk
	@echo -n "OV9	" ; size ${OV9} | awk -f sizes.awk

sizeb: FRC
	size ${BASE}

size1: FRC
	size ${OV1}

size2: FRC
	size ${OV2}

size3: FRC
	size ${OV3}

size4: FRC
	size ${OV4}

size5: FRC
	size ${OV5}

size6: FRC
	size ${OV6}

size7: FRC
	size ${OV7}

size8: FRC
	size ${OV8}

size9: FRC
	size ${OV9}


sizes.awk: FRC
	echo 'BEGIN {sum=0' > sizes.awk
	echo 'sum2=0' >> sizes.awk
	echo 'sum3=0}' >> sizes.awk
	echo '/^[0-9]/ {sum=sum+$$1' >> sizes.awk
	echo 'sum2=sum2+$$1+$$2' >> sizes.awk
	echo 'sum3=sum3+$$4}' >> sizes.awk
	echo 'END {print "text: "sum "	text+data: " sum2
"	dec: " sum3}' >> sizes.awk

-- 



tschüß,
         Jochen

Homepage: http://www.unixag-kl.fh-kl.de/~jkunz/



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [pups] bsd2.11 kernel compile
  2002-06-18  0:41 joseph lang
@ 2002-06-18  2:40 ` Chuck Dickman
  2002-06-18  7:55 ` Jochen Kunz
  2002-06-19  0:42 ` joseph lang
  2 siblings, 0 replies; 5+ messages in thread
From: Chuck Dickman @ 2002-06-18  2:40 UTC (permalink / raw)


joseph lang wrote:
> When compiling a new kernel (to include network) I get an error
> 
> ld: too big for type 431
> *** exit 2
> 
> I assume this error is due to one of the overlays being too
> large. (this is pointed out in the install docs)

During the compile 'size' outputs a list of the sizes of the
overlays. Look at the output. For mine....

# size unix	! the OS kernel                                           
text    data    bss     dec     hex
55296   6492    20738   82526   1425e   total text: 106752
	overlays: 7744,7360,7872,7296,3072,7680,4864,5568
# size netnix	! the network code
text    data    bss     dec     hex
60864   2362    38448   101674  18d2a
                       
 
> How do I figure out which overlay (or base) is the problem?

The base must be less than 7 8k pages or 57344(decimal) bytes.
Each overlay must be less than 8k bytes or 8192(decimal).
The network code is not overlayed, so you have 8 pages or the
full 64k. 

> Is there a more scientific way to arrange the overlays?

To make it work, just get the sizes below the limits. The 
optimal arrangement would be placing the code in such that
the overlay changes were minimized. So... move your system
disk drivers into base and change the configuration to
remove any hardware you don't actually have. 

> Am I missing something obvious?

No, it just requires some tweeking.....

> joe lang

Good luck,

-chuck



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [pups] bsd2.11 kernel compile
@ 2002-06-18  0:41 joseph lang
  2002-06-18  2:40 ` Chuck Dickman
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: joseph lang @ 2002-06-18  0:41 UTC (permalink / raw)


I am building a PDP 11 from junked parts and have it 
mostly working. I'm now installing BSD 2.11 and have run into 
a problem i could use some help with.

When compiling a new kernel (to include network) I get an error

ld: too big for type 431
*** exit 2

I assume this error is due to one of the overlays being too 
large. (this is pointed out in the install docs)

How do I figure out which overlay (or base) is the problem?
The random module shuffle in the documents only has 10 million 
combinations and at 30 minutes to compile, well I'm not going
to live that long. 

Is there a more scientific way to arrange the overlays?
Am I missing something obvious?

joe lang
langj at bellsouth.net



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2002-06-19  0:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-06-18  3:11 [pups] bsd2.11 kernel compile Steven M. Schultz
  -- strict thread matches above, loose matches on Subject: below --
2002-06-18  0:41 joseph lang
2002-06-18  2:40 ` Chuck Dickman
2002-06-18  7:55 ` Jochen Kunz
2002-06-19  0:42 ` joseph lang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).