Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips) (06/14/90)
Daniel> On 12 Jun 90 01:08:49 GMT, dz@lemon.ucsb.edu (Daniel James Zerkle) said: Randell> In article <12477@cbmvax.commodore.com> jesup@cbmvax (Randell Jesup) writes: Randell> Our SysVR4 Unix will support both X and OpenLook (on top of X I think), Randell> so it should work. (No Suntools, of course.) Daniel> Wonderful! Is this official? >I think X works in 4MB, but >OpenLook may require more than 4MB ram to work well. THe unix guys could >answer more precisely. Daniel> Being a "Unix Guy", I pity the fool who tries to run ANY windowing Daniel> environment, and expecially X, in less than 8 megabytes on UNIX. For the MC680x0 architecture, I agree. Unsurprisingly most RISC processors want _lots_ more. (12-16MB for Sparc) There are mitigating factors on the Amiga, however. One is shared libraries (which UNIX didn't have until SVr4 ;-). The other is the fact that many of the graphics routines are in ROM or hardware and needn't be compiled into the server. (Compare this to the Mac and PC situations. ;-) Daniel> I don't know about OpenLook, but as it is a huge application that runs Daniel> on top of X, I would add memory appropriately. "olwm" Open Look Window Manager) isn't the largest window manager for X (mwm and gwm are larger), but it isn't the smallest, either. "twm" by comparison is smaller and faster, just not as fancy. Who knows, C= could write "wbwm" (WorkBench Window Manager) that would provide a Workbench like look and feel and release a compatibility library to allow old Workbench programs to be recompiled to run under X. This is essentially what Sun did when they wrote the Open Look toolkit. Sun also made the source code for the Open Look libraries and window manager freely redistributable. (Hint, hint. :-) Daniel> Also, remember that if you get Unix, you will need high performance disk Daniel> storage. EVERYTHING that Unix does requires an access to the disk. Very true. Question: Does the C= (or any other) Amiga SCSI controller suport "synchronous" SCSI? I seem to recall the difference in maximum throughput being more than a factor of 3. (BTW, the Quantum 110MB drives support this.) Daniel> What's more, the virtual memory system swaps and pages memory that has Daniel> not been used lately to the disk drive. Under SVr4 UNIX (and SunOS >= 4.0), the paging algorithm is a bit different than most versions of UNIX. Memory is only paged out when more RAM is needed than is available. In a machine with lots of memory, unused pages could hang around for a long time. Daniel> However, I cringe at the thought of Unix Daniel> running on a slow disk with not enough RAM. Actually, I cringe at the Daniel> memory of doing this. To be fair, UNIX isn't much worse about memory consumption than OS/2. The CPU overhead of UNIX is also _much_ less than that of OS/2. (Based on the results of benchmarks run on an NCR 486 PC published recently in "Personal Workstation") Daniel> Anyway- Here's a summary of performance effects from most to least Daniel> important: Daniel> ... Other than to comment that the RAM estimates might be a bit high, I'd like to add: 6. Programs that read and write files sequentially (rather than random access) may see a dramatic improvement in execution time. In UNIX, disk writes are asynchronous and parallel to the the process requesting the write. (This can be overridden in SVr4 and Xenix.) Many versions of UNIX will also read ahead, so disk reads may see an improvement, also. In UNIX, you can actually have a program complete execution in less wall clock time than the sum of disk seek times required for the program's I/O. Daniel> | Dan Zerkle home:(805) 968-4683 work:687-0110 | Daniel> | dz@cornu.ucsb.edu dz%cornu@ucsbuxa.bitnet ...ucbvax!hub!cornu!dz | Daniel> | Snailmail: 6681 Berkshire Terrace #5, Isla Vista, CA 93117 | Daniel> | Disclaimer: My fish are stupid. | Disclaimer: Not a spokesman, etc., etc. And his fish ARE stupid. (Just kidding! See the smiley? -> :-) -- Chuck Phillips MS440 NCR Microelectronics Chuck.Phillips%FtCollins.NCR.com Ft. Collins, CO. 80525 uunet!ncrlnk!ncr-mpd!bach!chuckp
thad@cup.portal.com (Thad P Floryan) (06/15/90)
{Subject: UNIX memory consumption (was: Amiga-Sun unix question)}
{Newsgroups: comp.sys.amiga.hardware}
Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips) in
<CHUCK.PHILLIPS.90Jun14140200@haydn.FtCollins.NCR.COM> writes:
For the MC680x0 architecture, I agree. Unsurprisingly most RISC
processors want _lots_ more. (12-16MB for Sparc) There are mitigating
factors on the Amiga, however. One is shared libraries (which UNIX
didn't have until SVr4 ;-).
^^^^^^^^^^^^^^^^^^^^^^
Oh? The following is just some "random" output captured from my 3B1/UNIXPC,
a 10 MHz MC68010-based system circa 1985. For those who attended the FAUG
meeting several months ago when I demo'd AmigaUUCP, the host-server system to
which my Amiga was connected over StarLAN was another one of my 3B1 identical
to this one. The two systems (Amiga and 3B1) are quite similar except the 3B1
runs UNIX and its dynamically-loaded device drivers can also be UN-loaded!
There's probably several screenfuls following, so hit 'n' now if you're not
interested in the details.
Thad
-------------------- begin included screen capture --------------------
ksh 3957/3958> uname -a
UNIX thadlabs SYSTEM5 3.51a mc68k
ksh 3957/3958> /usr/net/bin/memsize -p
3584K
ksh 3957/3958> ll
total 154
-rw-r--r-- 1 thad users 306 Jun 12 02:23 Makefile
-rw-r--r-- 1 thad users 2103 Jun 12 01:58 POSTER
-rwxr-xr-x 1 thad users 15640 Jun 12 02:23 finger
-rw-r--r-- 1 thad users 25945 Jun 12 02:20 finger.c
-rw-r--r-- 1 thad users 25816 Jun 12 01:58 finger.c-orig
-rw-r--r-- 1 thad users 7315 Jun 12 01:58 finger.diff
ksh 3957/3958> file finger
finger: mc68k executable (shared demand paged with shared library) -F (0413 de
mand paged)
ksh 3957/3958> cd /usr/bin
ksh 3957/3958> ls
300 Ulogin fdfmt10.vl o_ve_t tr
300s Uninstall.sh findem osdd tsort
4014 Users.sh finger pack tutor
450 admin fpcp page ua
470 arconvert fsetup password uahelp
478 arpbypass ftp paste uaupd
BAutoBack.sh asa fx path umodem
BAutomatic.sh async_main get pcal unget
Backup.sh awk getinum pcat uniq
CMB232.sh bach getoff.sh phconvert units
Diagnos.sh banner geton.sh phcreate unpack
Fcopy.sh bc getopt phdial uucall
Fformat.sh bdiff gettable phnum uucp
Fformat10.sh bfs getterm phpinks uucppwd
FlpyChk.sh blast16 greek phpref uulog
Funlock.sh blast64 help phslan uuname
GSS.sh cal hostid phstub uupick
Install.sh cancel hostname phtoggle uupoll
Instcpio.sh captoinfo hp pollsetup uustat
Ldriver cb hplj prof uuto
Lsys.sh cdc htable prs uux
Modem.sh cflow hyphen prstat val
MsdosF.sh cfont id ptx vc
MsdosR.sh checkcw ifconfig pwait vconvert
MsdosW.sh checkmm imagfilt pwdlogdir vda
Namesys.sh checkmm1 info pwdmenu vdb
Pclear.sh cmpdt infocmp qtapecpio vddaily
Phones.sh cnclform.sh ipcrm rcp vdfold
Phonesinit.sh col ipcs regcmp vdiag
Qbackup.sh comb ismpx remsh vdkill
QdsplSS comm join rlogin vdprint
QgetFtype crypt jterm rmchg vdsnap
Qgetovwrit csetup jwin rmdel vdstart
Qinfo.sh csplit layers route vdump
QmakeLmenu cu lex ruptime ve
QmakessList cut lint rwho ve_t
Qpartial.sh cw logname sact vevents
QprintSS cxref lp sccsdiff vfmtupd
Qreport dbuf lpinfo scrset vfmtupd.sh
Qrestore.sh dc lpsetup sdb vi
Qrestore.sh-or deQuote lpstat sdiff view
QsetBegin delta m4 setdate vlog
QskipNext deroff macref setgetty voice_news
RS232.sh diff3 mailq setprint voicecards
RSfree.sh diffmk mailsetup setuname voiceupd
Restore.sh dircmp mailx shapewin vplay
Showsoft.sh disable man shform vrecord
Tape edit md_format shform.sh vringtest
Tbackup.sh edlibuucp md_write sp_print vtts
TdsplSSs egrep message spell vwait
Tformat.sh enable mm split wfc
TgetFtype erricon more spr what
TgetOffsets ex msdos sprint xargs
Tgetname execStrip ndx subj xtd
Tgetovwrit extractname neqn tabs xts
Tinfo.sh factor netstat tapecpio xtt
TmakeLmenu fc newform tar yacc
Tmakedesc fdfmt.nl newform.sh tbl zap
TmakessList fdfmt.sl newwind telnet
TprintSS fdfmt.vl nl tftp
Trestore.sh fdfmt10.nl nroff tic
Trestore.sh-or fdfmt10.sl o_ve tput
ksh 3957/3958> file m4 mailx tic vi
m4: mc68k executable (shared demand paged with shared library)
mailx: mc68k executable (shared demand paged) -n (0410 read-only)
tic: mc68k executable (shared demand paged)
vi: mc68k executable (shared demand paged)
ksh 3957/3958> cd /bin
ksh 3957/3958> ls
OLDrmail dirname lmail passwd sum
adb du ln pdp11 sync
ar dump login pr tail
as echo lorder ps tee
basename ed ls pwd telinit
cat env lx red time
cc expr mail rm touch
chgrp false mail.original rmail true
chmod fgrep make rmdir tset
chown file mc68k rsh tty
clear find mesg sdb u370
cmp grep mkdir sed u3b
convert hd mld sh uname
cp head mv size vax
cpio kill netlogin sleep wc
csh ksh newgrp smail who
date ld nice sort wnlessmsg
dd lf nm strip write
df line nohup stty
diff ll od su
ksh 3957/3958> file ls sort smail grep
ls: cannot open for reading
sort: mc68k executable (shared demand paged with shared library)
smail: mc68k executable (shared demand paged)
grep: mc68k executable (shared demand paged with shared library)
ksh 3957/3958> ll ls
---x--x--x 5 bin bin 8596 Jan 1 1970 ls
ksh 3957/3958> su
Password:
ksh-su 3958/4525# file ls
ls: mc68k executable (shared demand paged with shared library)
ksh-su 3958/4525#
ksh 3957/3958> cd /usr/local/bin
ksh 3957/3958> ls
arc fdwrite lastlogin pcomm_input sz
bison flopcp loglook purge today
bl flopfmt mapmem rb uncompress
cdraw flopmkfs mdel remcr utc7300
cktime flopstat mdir rename utc7300.sh
compress fsizes mmd rx uudecode
ctags ftimes mrd rz uustatus
diskfree fuser mread sb uutraf
dpasswd gcc mren setlp vitals
dstconvert hdwarn.day mtype shar xcal
du-logs.day indent mush slogin xdump
elock isroot mwrite strings zcat
emacs kermit patch sudo zoo
etags kshpr pathalias sx
fdread lastboot pcomm sysinfo
ksh 3957/3958> file arc bison emacs patch shar strings sz utc7300 zoo
arc: mc68k executable (shared demand paged with shared library)
bison: mc68k executable (shared demand paged)
emacs: mc68k executable (shared demand paged)
patch: mc68k executable (shared demand paged)
shar: mc68k executable (shared demand paged with shared library)
strings: mc68k executable (shared demand paged with shared library)
sz: mc68k executable (shared demand paged with shared library)
utc7300: mc68k executable (shared demand paged with shared library) -F (0413 de
mand paged)
zoo: mc68k executable (shared demand paged)
ksh 3957/3958> ps -ef
UID PID PPID C STIME TTY TIME COMMAND
root 0 0255 Jun 11 ? 4451:50 swapper
root 1 0 3 Jun 11 ? 0:13 init
root 2 0 3 Jun 11 ? 0:01 pagedaemon
root 3 0 3 Jun 11 ? 1:27 windaemon
root 1067 1 3 Jun 12 w1 0:01 getty
root 1779 1 3 Jun 12 ? 0:00 uugetty
listen 3957 262 3 00:19:22 p0 0:00 sl
root 242 1 8 Jun 11 w5 7:08 smgr
lp 220 1 3 Jun 11 ? 0:00 lpsched
root 124 1 3 Jun 11 ? 0:00 telnetd
root 104 1 3 Jun 11 ? 0:00 rasdaemon
root 126 1 3 Jun 11 ? 0:00 ftpd
root 128 1 3 Jun 11 ? 0:47 rwhod
root 130 1 3 Jun 11 ? 0:00 fingerd
thad 3958 3957 3 00:19:23 p0 0:38 ksh
root 229 1 3 Jun 11 w3 0:19 ph
root 253 1 3 Jun 11 001 0:01 uugetty
root 254 1 3 Jun 11 ? 0:01 uugetty
root 238 1 3 Jun 11 w4 0:02 wmgr
root 248 1 3 Jun 11 ? 0:05 loadavgd
root 255 1 3 Jun 11 ? 0:00 uugetty
listen 262 1 3 Jun 11 ? 0:01 listen
thad 4482 3958115 02:44:59 p0 0:03 ps
ksh 3957/3958> ls /lib
ccom crt0.o ifile.0413 libld.a optim
cpp crt0s.o libPW.a libm.a shlib
cpp-gcc ifile.0407 libc.a libp shlib.ifile
cpp-stock ifile.0410 libg.a mcrt0.o
ksh 3957/3958> ls /dev
console ph0 rfp01f v_phone0 voice6
error ph1 rfp020 v_phone1 voice7
fdswap psx rfp021 v_phone2 w1
fp000 ptyp0 rft0 v_phone3 w10
fp001 ptyp1 rft3 v_phone4 w11
fp002 ptyp2 rmt0 v_phone5 w12
fp003 ptyp3 rmt1 v_phone6 w2
fp004 ptyp4 rmt2 v_phone7 w3
fp005 ptyp5 rmt4 v_recda w4
fp006 ptyp6 rmt6 v_recda0 w5
fp007 ptyp7 starlan v_recda1 w6
fp008 rawlp swap v_recda2 w7
fp009 rfp000 syscon v_recda3 w8
fp00a rfp001 systty v_recda4 w9
fp00b rfp002 tcp v_recda5 window
fp00c rfp003 tty v_recda6 xt000
fp00d rfp004 tty000 v_recda7 xt001
fp00e rfp005 tty001 v_ring xt002
fp00f rfp006 tty002 v_ttsda xt003
fp010 rfp007 tty003 v_ttsda0 xt004
fp011 rfp008 tty004 v_ttsda1 xt005
fp012 rfp009 tty005 v_ttsda2 xt006
fp013 rfp00a tty006 v_ttsda3 xt007
fp014 rfp00b ttyp0 v_ttsda4 xt010
fp015 rfp00c ttyp1 v_ttsda5 xt011
fp016 rfp00d ttyp2 v_ttsda6 xt012
fp017 rfp00e ttyp3 v_ttsda7 xt013
fp018 rfp00f ttyp4 v_vcc xt014
fp019 rfp010 ttyp5 v_vcc0 xt015
fp01a rfp011 ttyp6 v_vcc1 xt016
fp01b rfp012 ttyp7 v_vcc2 xt017
fp01c rfp013 udp v_vcc3 xt020
fp01d rfp014 v_ctrl v_vcc4 xt021
fp01e rfp015 v_ctrl0 v_vcc5 xt022
fp01f rfp016 v_ctrl1 v_vcc6 xt023
fp020 rfp017 v_ctrl2 v_vcc7 xt024
fp021 rfp018 v_ctrl3 voice xt025
kmem rfp019 v_ctrl4 voice0 xt026
lp rfp01a v_ctrl5 voice1 xt027
mem rfp01b v_ctrl6 voice2
net rfp01c v_ctrl7 voice3
null rfp01d v_mac voice4
p0 rfp01e v_phone voice5
ksh 3957/3958> ls /etc/lddrv
InstDrv ether ifile.starlan o_voice.o voice.o
ate ether.o ifile.tp qt.o voice30.o
ate.o ether.rc ifile.voice starlan voice35.o
cmb ether.rc-new ifile.wind starlan.o wbrast.nl
cmb.brc fpa.o ifile.xt starlan.rc wind
cmb.o ifile.ate lddrv tp wind.o
cmb.rc ifile.cmb lipc tp.o xt
cmbpcnt ifile.ether lipc.o unix.sym xt.o
cmbupd ifile.lipc mkifile unix.syma
drivers ifile.qt nipc.o voice
ksh 3957/3958>
Thad Floryan [ thad@cup.portal.com (OR) ..!sun!portal!cup.portal.com!thad ]
ath@lcs.mit.edu (Andrew Heybey) (06/15/90)
In article <CHUCK.PHILLIPS.90Jun14140200@haydn.FtCollins.NCR.COM> Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips) writes:
Daniel> Also, remember that if you get Unix, you will need high performance disk
Daniel> storage. EVERYTHING that Unix does requires an access to the disk.
Very true. Question: Does the C= (or any other) Amiga SCSI controller
suport "synchronous" SCSI? I seem to recall the difference in maximum
throughput being more than a factor of 3. (BTW, the Quantum 110MB drives
support this.)
If we can believe Dave Haynie (personally, I believe *everything* that
Mr. Haynie says :-), the disk performance of the 3000, at least, is
limited by the disk. Furthermore, DEC's PMaxen (just as one example)
get perfectly acceptable disk performance out of an asynchronous SCSI
disk while running Unix. Therefore, an A3000 should do just fine
disk-performance-wise running Unix.
andrew
--
Andrew Heybey, ath@ptt.lcs.mit.edu, uunet!ptt.lcs.mit.edu!ath
daveh@cbmvax.commodore.com (Dave Haynie) (06/16/90)
In article <CHUCK.PHILLIPS.90Jun14140200@haydn.FtCollins.NCR.COM> Chuck.Phillips@FtCollins.NCR.COM (Chuck.Phillips) writes: >Very true. Question: Does the C= (or any other) Amiga SCSI controller >suport "synchronous" SCSI? I seem to recall the difference in maximum >throughput being more than a factor of 3. (BTW, the Quantum 110MB drives >support this.) The A3000 controller definitely does, I don't know about the other Commodore controllers. The transfer rate is a max of about 1.5 MB/s for asynchronous SCSI, a max of around 4-5 MB/s for synchronous SCSI. The A2000 bus bandwidth is about 3.75 MB/s, the A3000 SCSI device runs about 20 MB/s. The Commodore software never requests synchronous operation, since apparently some drives that don't support it lock up when polled for it. A simple program can use the scsi.device to explicitly ask for it if you know your drive supports it. Steve Beats could supply all the ugly details. >Chuck Phillips MS440 -- Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy "I have been given the freedom to do as I see fit" -REM