This is the Frequently Asked Questions (and their answers) about the ULTRIX and DEC OSF/1 AXP operating systems from Digital Equipment Corporation.
This FAQ is archived in the following locations:
The archive name for this FAQ is dec-faq/common
This is part 2 of the Frequently Asked Questions posting for comp.unix.ultrix, with answers that apply to both ULTRIX and DEC OSF/1 AXP (hereafter referred to as OSF/1). It is also posted on comp.sys.dec and comp.unix.osf.osf1, but it is not a full FAQ for those groups. Companion postings have answers specific to ULTRIX and OSF/1.
A separate FAQ describes how to get information about Digital products and interacting with Digital.
To make suggestions for changes or additions to this Frequently Asked Questions list, send mail to lionel@quark.enet.dec.com. Answers are especially appreciated.
An archive of recent postings to comp.unix.ultrix can be found at ftp://ftp.cc.rochester.edu/pub/usenet/comp.unix.ultrix Thanks to folks at the University of Rochester for providing this service.
When used alone, the word "DECstation" is used to mean any of the DECstations or DECsystems that use MIPS RISC processors. Similarly, "Alpha" refers to any DEC systems that use the Alpha AXP processor.
Unless otherwise specified, these answers refer to ULTRIX 4.3, which is the current release of ULTRIX, or DEC OSF/1 AXP 3.0, the current version.
World-Wide Web Universal Resource Locator (URL) notation is used for FTP addresses.
Many people have contributed to this list, directly or indirectly. In some cases, an answer has been adapted from one or more postings on the comp.unix.ultrix and comp.unix.osf.osf1 newsgroups. Our thanks to all of those who post answers. The name (or names) at the end of an entry indicate that the information was taken from postings by those individuals; the text may have been edited for this FAQ. These citations are only given to acknowledge the contribution.
Although the editor of this FAQ is an employee of Digital Equipment Corporation, this posting is not an official statement from Digital Equipment Corporation.
Alpha AXP, AXP, DEC, DECstation, DECsystem, OpenVMS, ULTRIX, VAX and VMS are trademarks of Digital Equipment Corporation. Other names are properties of their respective owners.
In 1992, Digital's "European UNIX Competency Circle" produced a CDROM of free software for UNIX, but it is out of print now. Because the disk is in ISO 9660 format, it can be mounted and used on almost any UNIX system and many proprietary systems, including ULTRIX, OSF/1, Solaris, DOS, and VMS. The disk is mounted at several places on the Internet, including
/rom/euuc-freeware
Although some of the documentation on the disk is obsolete, and much of the software has been superseded by later versions, most things still work. For questions or suggestions about it, except about availability, write to
freeware@vbo.dec.com
Answer A1 in the OSF/1 FAQ says how to order the Alpha OSF/1 Freeware CD.
[Peter Kaiser, kaiser@acm.org]
The version of tcsh on the OSF/1 Freeware CD-ROM is out of date; get 6.05.
Two software packages are available to drive audio on Alpha systems:
MME implements a Microsoft-style API and comes bundled with OSF/1.
AF, developed at Digital's Cambridge Research Laboratory runs on a wide range of platforms including DECstation, Alpha, Sun, SGI, and HP. It is available in source form from
ftp://ftp.digital.com/pub/DEC/AF
[Lance Berc, berc@src.dec.com]
Several different programs are available. One command line version and a Motif-based version can be found in:
ftp://ftp.digital.com/pub/DEC/cdp.c.z /*command line version */ ftp://ftp.digital.com/pub/DEC/xcd_source.tar.z/* Motif version */
For DEC OSF/1, sources for xcd are included in /usr/examples/motif/xcd. Another version of xcd is on the Freeware CD-ROM in both source and binary form, but that version may have been superseded by the one distributed with the operating system. Neither cdp nor xcd is supported by Digital.
Two other programs are Workman and xmcd, both of which can be found on
ftp.x.org. Of all these programs, xmcd seems to be the widest used and to
have the largest database of audio CD data.
[Anthony Baxter, anthony@aaii.oz.au]
[Peter Kaiser, kaiser@acm.org]
ftp://ftp.digital.com/pub/DEC/DECinfo/DECnews-UNIX/0117.txt
and the DECmigrate for DEC OSF/1 AXP Software Product Description (SPD):
[Russ Jones,
rjones@pa.dec.com]
Tapes used by setld(8) consist of a number of tape files that contain the product subsets, installation control files and other stuff. The fourth file on the tape is an uncompressed tar(1) archive of the inventory files (.inv), subset control programs (.scp) and control information (.ctrl). There is also a file that lists the subsets, their sizes and checksums (.image). The tapes files after the 4th are the subset files. They may or may not be compressed. They will have a block size of 10 KB. The order of lines in the .image file is the order of subset on the tape, with the classic exception.
There are two flavors of tapes; Layered product tapes and ULTRIX distribution tapes. The first three files on layered product tapes will typically be space holders and only one 10 KB file. Distribution tapes use the first three files for other things. The 3rd of these files is dump(8) image of the root file system. The block size of this file will be 10 KB. In the .image file for the distribution it would be listed ROOT:
44419 12720 ROOT 01690 12080 UDTBASE420 47187 14340 UDTBIN420 etc...So, on this distribution tape ROOT is 3rd, the installation control archive (INSTCTRL) is 4th, UDTBASE420 is 5th and so on.
The first two files are a primary and secondary boot program. Whether the 2nd is necessary depends on system architecture. The MIPS-based systems typically only use the first boot file; the VAX uses both. The block size of the first boot program is 512 bytes.
Copying a setld tape
Use dd(1) to copy each tape file using the appropriate block size. When you run out of tape input files you're done. For example, if you are using two tape drives:
dd bs=512 if=/dev/nrmt0h of=/dev/nrmt1h dd bs=10240 if=/dev/nrmt0h of=/dev/nrmt1h dd bs=10240 if=/dev/nrmt0h of=/dev/nrmt1h ... mt -f /dev/nrmt0h rew mt -f /dev/nrmt1h rew
The two shell shell scripts below can be used to duplicate CDROM or disk layered product distributions (note: not the base system) onto a TK50. They are not supported by Digital.
--------------------------cut here-------------------------------------------- #!/bin/sh5 # cdrom_kitcap # This script is based on one from "Guide for Preparing Software for # Distribution" (but this one really works). This script prepares the # /etc/kitcap file which is needed by the gentapes script to create, # in this specific case, a copy of cdrom software (layered product only) # to TK50... # note: this script uses tmp space, insure $TMPDIR is pointing to a file # system with enough space to copy files... # Original author: John R. Frandsen, Digital Equipment Corporation TMPDIR=/usr/tmp KITCAP=$TMPDIR/kitcap CURVOL=1 BINDIR=`pwd` touch $TMPDIR/space tar cf $TMPDIR/SPACE $TMPDIR/space cd instctrl I=`expr *.image : '\(.*\).image'` echo "Your product code is $I" tar cf $TMPDIR/INSTCTRL * echo "${I}TK:$TMPDIR:SPACE:SPACE:SPACE:INSTCTRL:\\" >> $KITCAP for S in `awk '{print $3}' *.image` do [ $S = ROOT ] && continue . $S.ctrl set -- `(IFS=:;echo $MTLOC)` VOL=$1 LOC=$2 [ $VOL -ne $CURVOL ] && { echo ":%%$VOL CURVOL=$VOL" >> $KITCAP } echo ":$S\\" >> $KITCAP cp $BINDIR/$S $TMPDIR done echo >> $KITCAP mv $TMPDIR/kitcap /etc cd $BINDIR --------------------------cut here-------------------------------------------- #!/bin/sh5 # disk_kitcap # This script is based on one from "Guide for Preparing Software for # Distribution" (but this one really works). This script prepares the # /etc/kitcap file which is needed by the gentapes script to create, # in this specific case, a copy of disk software (layered product only) # to TK50... # Original author: John R. Frandsen, Digital Equipment Corporation KITCAP=/tmp/kitcap CURVOL=1 touch space tar cf SPACE space cd instctrl I=`expr *.image : '\(.*\).image'` echo "Your product code is $I" cp $I.image .. tar cf ../INSTCTRL * cd .. echo "${I}TK:`pwd`:SPACE:SPACE:SPACE:INSTCTRL:\\" >> $KITCAP cd instctrl for S in `awk '{print $3}' *.image` do [ $S = ROOT ] && continue . $S.ctrl set -- `(IFS=:;echo $MTLOC)` VOL=$1 LOC=$2 [ $VOL -ne $CURVOL ] && { echo ":%%$VOL CURVOL=$VOL" >> $KITCAP } echo ":$S\\" >> $KITCAP done echo >> $KITCAP mv /tmp/kitcap /etc #----------------------------------------------------------------------------
On the other hand, you might want to consider running the WU Archive version. The WU Archive ftpd can be configured easily and has lots of options. You can get the WU Archive ftpd from wuarchive.wustl.edu in pub/packages,
Note that the ftpd in DEC OSF/1 does more substantial logging than the
ULTRIX version.
[Mike Iglesias, iglesias@draco.acs.uci.edu]
[Win Treese, treese@lcs.mit.edu]
newfs /dev/rrz#x /dev/rrz#xto do this.
For most uses, you don't need a disktab entry on OSF/1. The disklabel command can get the default partition table and geometry from the disk driver and will put that in the label. When the label is present, newfs doesn't need a disktab entry either.
A collection of contributed disktab entries is in /pub/DEC/ultrix-disktabs on the usual archive machines. Get a copy of the file for an up-to-date list. The disktab collection may also be used on DEC OSF/1, but not all entries have been tested on all platforms.
When you build mtools, you need to find out which device your floppy
is (/dev/rrz2c is common). Then you can clone the SPARC definitions,
or #define SPARC and make /dev/rfd0c a symlink to the one you need.
[Win Treese,
treese@lcs.mit.edu]
1) On ULTRIX, use "rzdisk -c ask"
2) Move a jumper. The location of this varies from drive to drive.
3) Use the SCSI console diagnostics on a DECstation.
4) Use the VAXstation service diagnostics (tricky)
5) On a Macintosh, use the "Silverlining" program.
6) On a DOS PC, use the shareware program SPINUP.
The drives do respond to the START UNIT command.
[William Jackson, jackson@pravda.enet.dec.com]
[David Burren,
davidb@otto.bf.rmit.oz.au]
malloc(3) returns data aligned to the most restrictive alignment (8 byte boundaries on MIPS machines). If you are writing your own malloc wrapper (say to add a reference count) and you write code like this:
char *mymalloc(int size) { short *newmem; newmem = (short *) malloc(size + sizeof(short)); *newmem = 1; /* initialize reference count */ return (char *) (newmem + 1); }you are then returning a pointer that is no longer 8-byte aligned. Now, code like
int *i; i = (int *) mymalloc(sizeof(int)); *i = 10;will generate unaligned access messages whenever *i is used.
An example of dangerous casting would be something like
char buffer[100]; int i; i = (int)*((int *)&buffer[3]);The program will usually still run correctly, because an exception handler in the kernel performs an unaligned read. There are some rare cases, however, where the fixed read yields incorrect results. The messages are printed by default because one usually wants to know when a program is generating the unaligned accesses.
Now, if you're only getting a few of these messages, it might not matter, but if you're getting pages of them (or worse, have turned off the logger because you were getting so many unaligned access messages), you might consider correcting your program.
You can use the uac(1) (Unaligned Acces Message Control) command to turn off the messages.
If you want to find the the problem in the source code, you can use dbx. Suppose the message is:
Fixed up unaligned data access for pid 2337 (bozo) at pc 0x5ad364This tells you that the problem occurs in the program "bozo". In dbx, you would type, for example:
% dbx bozo (dbx) 0x5ad364/i *[main:206, 0x0x5ad364] lw r0,40(sp)dbx prints the offending instruction, along with its location: line 206 in main(). If you need to do unaligned accesses, you might find the following useful:
int unaligned_load_word(int *src); int unaligned_load_half(short *src); unsigned int unaligned_load_uhalf(unsigned short *src); float unaligned_load_float(float *src); double unaligned_load_double(double *src); void unaligned_store_word(int *dst,int val); void unaligned_store_half(short *dst,int val); void unaligned_store_float(float *dst,float val); void unaligned_store_double(double *dst,double val);These unaligned access routines are an unsupported component of the standard C library on RISC/ULTRIX. They provide for alignment-safe access to the primitive data types (short,int,float,double). They are fairly fast as they use the special MIPS unaligned instructions (LWL,LWR,SWL,SWL) for doing the complicated part of the work.
If you are running ULTRIX 4.2, and you would like to disable the automatic fixup of unaligned accesses, use:
#includeThe above code fragment will disable address fixups for your process, and this will be inherited by any children. Where a fixup would have occured, you will get a SIGBUS.#include syscall(SYS_sysmips, MIPS_FIXADE, 0, NULL, NULL, NULL);
DEC carries four DB-to-MMJ adaptors. They are internally wired as follows
Rdy Out TX+ TX- RX- RX+ Rdy In Adaptor Gender 1 2 3 4 5 6 Use with: -------------------------------------------------------------------------- H8575-A F 20 2 7 7 3 6&8 VTxxx terminal H8571-C M 6 3 7 7 2 20 DEC printer H8571-D M 6 3 7 7 2 20 Modem H8571-E M 20 2 7 7 3 6&8 Female terminal or LaserWriter --------------------------------------------------------------------------RS-232 using DB-25 connectors:
DTE DCE Terminal Modem or computer Pin Number Signal Name 2 TD Transmit Data --> 3 RD Receive Data <-- 7 GND Ground --- 6 DSR Data Set Ready <-- 8 DCD Data Carrier Detect <-- 20 DTR Data Terminal Ready -->
Digital had at one time announced that Bookreader would be retired and
replaced with Interleaf's WorldView, but for the forseeable future,
Digital will continue to ship the Bookreader viewer.
[Patrick Stephens, stephens@galvia.enet.dec.com]
[Win Treese, treese@lcs.mit.edu]
[Steve Lionel, lionel@quark.enet.dec.com]
- NFS mount the OSF/1 bookreader directory on an ULTRIX system
- Use DECmigrate to translate the ULTRIX version of BookReader
(DECmigrate is a separate product)
ftp://bongo.cc.utexas.edu/source/util/vmsbackup ftp://cs.tut.fi/pub/src/tape-readers/vmsbackup ftp://emx.cc.utexas.edu:/pub/mnt/source/util/vmsbackup
(These may or may not be exactly the same program.)
[I don't know if vmsbackup runs on Alpha OSF/1 yet. --ed.]
[Timothy Williams,
williams@nvl.army.mil]
Non-US customers may also use these contacts; information will be directed to the appropriate corporate office.
Please include your name, organization, address, phone number and Internet address in all correspondence.
The newsgroup will be organized so that you can use a "kill" file with your newsreader to skip over (or ignore) classes of announcements that are not of interest. All postings will be organized along the following lines:
Subject: Press/... Digital Press Releases Subject: Fact Sheet/... - Supporting Fact Sheets Subject: Backgrounder/... - Supporting Editorial Backgrounders Subject: Partner/... Press Releases from Digital's Partners Subject: Seminar/... Seminars offered by Digital Subject: Promotion/... Sales Promotions offered by Digital Subject: Show/... Digital Tradeshow Activities Subject: Training/... Digital Education & TrainingThe new biz.digital hierarchy is:
biz.digital.announce News and Announcements biz.digital.articles Newsletters, Catalog, and Journal Articles
[End of FAQ]