This commit is contained in:
Oliver Lehmann 1992-10-12 18:45:33 +00:00
parent 1cd0d2a818
commit 60bd55865b
11 changed files with 3439 additions and 0 deletions

182
WEGA/contrib/ingres/dbs/C Normal file
View File

@ -0,0 +1,182 @@
ACCESS= access/*.h \
access/*.c
AMX_CC= amx_cc/AMX.* \
amx_cc/*.h \
amx_cc/*.y \
amx_cc/*.c
AMX_LIB=amx_lib/*.h \
amx_lib/*.c \
amx_lib/Tracefile \
amx_lib/*.asm \
amx_lib/*.inc
AMX= $(AMX_CC) $(AMX_LIB)
CAT1= cat/1doc.[1-4]
CAT2= cat/1doc.[5-6] \
cat/2doc.[1-3]
CAT1_2= $(CAT1) $(CAT2)
CAT3= cat/2doc.[4-6] \
cat/[3-5]*
CONF= conf/Makefile \
conf/conf.h \
conf/gen.h \
conf/machine.h \
conf/cpp.sed \
conf/dbtmplt.?? \
conf/iql_tab.?? \
proto/access \
proto/amx_cc \
proto/amx_lib \
proto/dbu \
proto/decomp \
proto/eql \
proto/etc \
proto/form \
proto/gutil \
proto/h \
proto/iutil \
proto/libq \
proto/monitor \
proto/oamx_lib \
proto/olibq \
proto/ovqp \
proto/parser \
proto/pqr \
proto/redabas \
proto/qrymod \
proto/samx_lib \
proto/slibq \
proto/support \
proto/sys \
proto/yyyacc
DBU= dbu/*.h \
dbu/*.c
DECOMP= decomp/*.h \
decomp/*.c
DEMO= demo/Makefile \
demo/READ_ME \
demo/amx/* \
demo/bank/* \
demo/dbsr/* \
demo/eql/* \
demo/pqr/* \
demo/ql/*
EQL= eql/*.h \
eql/*.y \
eql/*.c
ETC= Makefile \
Installation \
Parallelitaet \
READ_ME \
sys/man/[a-z]* \
sys/ref/[a-z]* \
sys/etc/READ_ME \
sys/etc/*_use \
sys/etc/dayfile6.3 \
sys/etc/error6.3_* \
sys/etc/startup
GUTIL= gutil/*.h \
gutil/*.c \
gutil/bmove.??*
H= h/*.h
IUTIL= iutil/*.h \
iutil/*.c
LIBQ= libq/*.h \
libq/*.c
MONITOR=monitor/*.h \
monitor/*.c
OVQP= ovqp/*.h \
ovqp/*.c
PARSER= parser/*.h \
parser/*.y \
parser/*.c
PQR= pqr/*.h \
pqr/*.y \
pqr/y.tab.c \
pqr/grammar.ed \
pqr/r*.c
QRYMOD= qrymod/*.h \
qrymod/*.c
SUPPORT=support/*.h \
support/*.c
SYS= sys/*.c \
sys/*.sh
YYYACC= yyyacc/*.h \
yyyacc/*.c
SRC1= $(CONF) $(DBU)
SRC2= $(GUTIL) $(LIBQ) $(EQL)
SRC1_2= $(SRC1) $(SRC2)
SRC3= $(MONITOR) $(DECOMP)
SRC4= $(H) $(IUTIL) $(PARSER)
SRC3_4= $(SRC3) $(SRC4)
SRC5= $(SYS) $(YYYACC) $(ACCESS) $(OVQP)
SRC6= $(QRYMOD) $(SUPPORT)
SRC5_6= $(SRC5) $(SRC6)
720kb: E720 S720 D720 C720
S720: S720.1 S720.2 S720.3 SAMX SPQR
C720: C720.1 C720.2
E720:
@-READY E720
@-tar cv $(ETC) || (FMT fd1; tar c $(ETC))
S720.1:
@-echo S720.1
@-cd src; tar cv0 $(SRC1_2) || (FMT fd0; tar c0 $(SRC1_2))
S720.2:
@-READY S720.2
@-cd src; tar cv $(SRC3_4) || (FMT fd1; tar c $(SRC3_4))
S720.3:
@-echo S720.3
@-cd src; tar cv0 $(SRC5_6) || (FMT fd0; tar c0 $(SRC5_6))
SAMX:
mv src/amx_cc/grammar.y src/amx_cc/Y
mv src/amx_cc/grammar.c src/amx_cc/C
@-READY SAMX
@-cd src; tar cv $(AMX) || (FMT fd1; tar c $(AMX))
mv src/amx_cc/Y src/amx_cc/grammar.y
mv src/amx_cc/C src/amx_cc/grammar.c
SPQR:
@-echo SPQR
@-cd src; tar cv0 $(PQR) || (FMT fd0; tar c0 $(PQR))
D720:
@-READY D720
@-tar cv $(DEMO) || (FMT fd1; tar c $(DEMO))
C720.1:
@-echo C720.1
@-tar cv0 $(CAT1_2) || (FMT fd0; tar c0 $(CAT1_2))
C720.2:
@-READY C720.2
@-tar cv $(CAT3) || (FMT fd1; tar c $(CAT3))

View File

@ -0,0 +1,238 @@
MACH=
DEV= fd0
TARDEV= /dev/$(DEV)
FORMAT= FMT $(DEV)
TAR= tar cfv $(TARDEV)
ACCESS= access/*.h \
access/*.c
AMX_CC= amx_cc/AMX.* \
amx_cc/*.h \
amx_cc/*.y \
amx_cc/*.c
AMX_LIB=amx_lib/*.h \
amx_lib/*.c \
amx_lib/Tracefile \
amx_lib/*.asm \
amx_lib/*.inc
AMX= $(AMX_CC) $(AMX_LIB)
CAT1= cat/1doc.[1-4]
CAT2= cat/1doc.[5-6] \
cat/2doc.[1-3]
CAT1_2= $(CAT1) $(CAT2)
CAT3= cat/2doc.[4-6] \
cat/[3-5]*
CONF= conf/Makefile \
conf/conf.h \
conf/gen.h \
conf/machine.h \
conf/cpp.sed \
conf/dbtmplt.?? \
conf/iql_tab.?? \
proto/access \
proto/amx_cc \
proto/amx_lib \
proto/dbu \
proto/decomp \
proto/eql \
proto/etc \
proto/gutil \
proto/h \
proto/iutil \
proto/libq \
proto/monitor \
proto/oamx_lib \
proto/olibq \
proto/ovqp \
proto/parser \
proto/pqr \
proto/qrymod \
proto/samx_lib \
proto/slibq \
proto/support \
proto/sys \
proto/yyyacc
DBU= dbu/*.h \
dbu/*.c
DECOMP= decomp/*.h \
decomp/*.c
DEMO= demo/Makefile \
demo/READ_ME \
demo/amx/* \
demo/bank/* \
demo/dbsr/* \
demo/eql/* \
demo/pqr/* \
demo/ql/*
EQL= eql/*.h \
eql/*.y \
eql/*.c
ETC1= Makefile \
Installation \
Parallelitaet \
READ_ME \
sys/etc/READ_ME \
sys/etc/*_use \
sys/etc/dayfile6.3 \
sys/etc/error6.3_* \
sys/etc/startup \
sys/ref/[a-z]* \
sys/man/[a-c]*
ETC2= sys/man/[d-z]*
ETC= $(ETC1) $(ETC2)
GUTIL= gutil/*.h \
gutil/*.c \
gutil/bmove.??*
H= h/*.h
IUTIL= iutil/*.h \
iutil/*.c
LIBQ= libq/*.h \
libq/*.c
MONITOR=monitor/*.h \
monitor/*.c
OVQP= ovqp/*.h \
ovqp/*.c
PARSER= parser/*.h \
parser/*.y \
parser/*.c
PQR= pqr/*.h \
pqr/*.y \
pqr/y.tab.c \
pqr/grammar.ed \
pqr/r*.c
QRYMOD= qrymod/*.h \
qrymod/*.c
SUPPORT=support/*.h \
support/*.c
SYS= sys/*.c \
sys/*.sh
YYYACC= yyyacc/*.h \
yyyacc/*.c
SRC1= $(CONF) $(DBU)
SRC2= $(GUTIL) $(LIBQ) $(EQL)
SRC1_2= $(SRC1) $(SRC2)
SRC3= $(MONITOR) $(DECOMP)
SRC4= $(H) $(IUTIL) $(PARSER)
SRC3_4= $(SRC3) $(SRC4)
SRC5= $(SYS) $(YYYACC) $(ACCESS) $(OVQP)
SRC6= $(QRYMOD) $(SUPPORT)
SRC5_6= $(SRC5) $(SRC6)
720kb: E720 S720 D720 C720
360kb: E360 M360 S360 D360 C360
C720: C720.1 C720.2
D720:
@-READY D720
@-$(TAR) $(DEMO) || ($(FORMAT); $(TAR) $(DEMO))
E720:
@-READY E720
@-$(TAR) $(ETC) || ($(FORMAT); $(TAR) $(ETC))
S720: S720.1 S720.2 S720.3 SAMX SPQR
C360: C360.1 C360.2 C360.3
D360:
@-READY D360
@-$(TAR) $(DEMO) || ($(FORMAT); $(TAR) $(DEMO))
E360:
@-READY E360
@-$(TAR) $(ETC1) || ($(FORMAT); $(TAR) $(ETC1))
M360:
@-READY M360
@-$(TAR) $(ETC2) || ($(FORMAT); $(TAR) $(ETC2))
S360: S360.1 S360.2 S360.3 S360.4 S360.5 S360.6 SAMX SPQR
C720.1:
@-READY C720.1
@-$(TAR) $(CAT1_2) || ($(FORMAT); $(TAR) $(CAT1_2))
C360.1:
@-READY C360.1
@-$(TAR) $(CAT1) || ($(FORMAT); $(TAR) $(CAT1))
C360.2:
@-READY C360.2
@-$(TAR) $(CAT2) || ($(FORMAT); $(TAR) $(CAT2))
C720.2:
@-READY C720.2
@-$(TAR) $(CAT3) || ($(FORMAT); $(TAR) $(CAT3))
C360.3:
@-READY C360.3
@-$(TAR) $(CAT3) || ($(FORMAT); $(TAR) $(CAT3))
S720.1:
@-READY S720.1
@-cd src; $(TAR) $(SRC1_2) || ($(FORMAT); $(TAR) $(SRC1_2))
S360.1:
@-READY S360.1
@-cd src; $(TAR) $(SRC1) || ($(FORMAT); $(TAR) $(SRC1))
S360.2:
@-READY S360.2
@-cd src; $(TAR) $(SRC2) || ($(FORMAT); $(TAR) $(SRC2))
S720.2:
@-READY S720.2
@-cd src; $(TAR) $(SRC3_4) || ($(FORMAT); $(TAR) $(SRC3_4))
S360.3:
@-READY S360.3
@-cd src; $(TAR) $(SRC3) || ($(FORMAT); $(TAR) $(SRC3))
S360.4:
@-READY S360.4
@-cd src; $(TAR) $(SRC4) || ($(FORMAT); $(TAR) $(SRC4))
S720.3:
@-READY S720.3
@-cd src; $(TAR) $(SRC5_6) || ($(FORMAT); $(TAR) $(SRC5_6))
S360.5:
@-READY S360.5
@-cd src; $(TAR) $(SRC5) || ($(FORMAT); $(TAR) $(SRC5))
S360.6:
@-READY S360.6
@-cd src; $(TAR) $(SRC6) || ($(FORMAT); $(TAR) $(SRC6))
SAMX:
@-READY SAMX
@-cd src; $(TAR) $(AMX) || ($(FORMAT); $(TAR) $(AMX))
SPQR:
@-READY SPQR
@-cd src; $(TAR) $(PQR) || ($(FORMAT); $(TAR) $(PQR))

View File

@ -0,0 +1,365 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | DDDDDD A BBBBBB A 1 66666 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D AAAAAAA BBBBBB AAAAAAA 1 666666 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | DDDDDD A A BBBBBB A A 1 66666 | |#
#| | | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| Relationales Datenbankbetriebssystem |#
#| |#
#| |#
#| VERSION 3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| I N S T A L L A T I O N |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
---- (1) ---- Login MUTOS-Supernutzer
---- (2) ---- Eintragen des Nutzers `daba' in das MUTOS - Nutzer-
verzeichnis `/etc/passwd' in folgender Art:
daba::9:9::/z/daba:
Das Directory `/z/daba' ist das Home-Directory des
Nutzers `daba' , in das alle relevanten Daten des
DABA16.3/4 - Systems eingespielt werden.
Rechnerabhaengig kann das Directory natuerlich auch
woanders angelegt werden, z.B. `/mnt/daba' oder auch
`/usr/daba' usw.
Die Nutzeridentifikation (uid = 9) und die Gruppen-
identifikation (gid = 9) sind unbedingt einzuhalten.
---- (3) ---- Eintragen der Gruppe `daba' in das MUTOS - Gruppen-
verzeichnis `/etc/group' in folgender Art:
daba::9:daba
---- (4) ---- Erstellen des Home-Directory fuer den Nutzer `daba'
mkdir /z/daba
chown daba /z/daba
chgrp daba /z/daba
chmod 0755 /z/daba
---- (5) ---- Login Nutzer `daba'
---- (6) ---- Erstellen des Login-Files fuer den Nutzer `daba'.
Fuer die `sh' das File `/z/daba/.profile' nach
folgendem Muster:
PATH=/z/daba/bin:/z/daba/sys/bin:/bin:/usr/bin:
export PATH
Fuer die `csh' das File `/z/daba/.cshrc' nach
folgendem Muster:
set path=(/z/daba/bin /z/daba/sys/bin /bin /usr/bin)
setenv PATH "/z/daba/bin:/z/daba/sys/bin:/bin:/usr/bin:"
In das Login-File koennen natuerlich weiter Zeilen
zur Terminalinitialisierung usw. eingetragen werden.
Ebenso kann der Suchpfad (PATH) nutzerspezifisch er-
weitert werden. Das Home-Directory ist mit Absicht
nicht Bestandteil des Suchpfades. Anschliessend
sollte das Login-File gegen unberechtigtes Schreiben
geschuetzt werden, z.B. durch
chmod 0400 .profile
fuer die `sh' bzw.
chmod 0400 .cshrc
fuer die `csh'.
---- (7) ---- Login Nutzer `daba'
Um das eben erstellte Login-File auch abzuarbeiten,
ist es notwendig, sich neu anzumelden.
---- (8) ---- Laden der DABA16.3/4 - Installationsroutine mittels
tar xf /dev/geraet (geraet = Ihre Geraetebezeichnung)
von der Diskette E720, E360 oder dem Band ent-
sprechend der Vertriebsform. Der Datentraeger ist
vollstaendig einzulesen.
Wenn Sie das Standardlaufwerk von tar benutzen,
reicht die Angabe
tar x
aus.
---- (9) ---- INSTALLATION des Datanbanksystems DABA16.3/4
Ausfuehrung der Installation durch das Kommando
make disk TAPE=dev [TAR=cmd] [ED=cmd]
fuer die Auslieferung auf 720 KBytes-Disketten bzw.
make disk360 TAPE=dev [TAR=cmd] [ED=cmd]
fuer die Auslieferung auf 360 KBytes-Disketten bzw.
make tape [ED=cmd]
fuer die Auslieferung auf Magnetband.
`dev' ist die Angabe des verwendeten Geraetes in der
Form: fd1, fd096ds9, dmf0, rmt0 usw.
Die Angabe `TAR=cmd' ist notwendig, falls Sie ein zu
`tar' kompatibles Kommando mit dem Namen `cmd' ver-
wenden wollen.
Die Angabe `ED=cmd' gestattet Ihnen, die Verwendung
des Editors `cmd' anstelle von `ed'.
Bei der Installation auftretende Fehler, die mit der
folgenden Mitteilung inhaltlich identisch sind:
*** Error code 1 (ignored)
*** Error code 2 (ignored)
*** Error code 4 (ignored)
usw.
sind vom Entwickler beabsichtigt und beruhen auf der
gleichen Installation fuer verschiedene Rechner.
Die Installation laeuft in folgenden Schritten ab:
- Erzeugen der Systemverzeichnisse
- Laden der Datentraeger
- Anfordern der Betriebsbezeichnung, die von einigen
Kommandos protokolliert wird, durch
Betriebsbezeichnung>
Hier ist eine einzeilige Bezeichnung ohne das Zei-
chen `"' zulaessig.
- Einstellen der richtigen Zugriffsrechte fuer alle
Verzeichnisse und generierten Kommandos.
- Erstellung des Nutzerverzeichnisses, nach der Aus-
schrift
EDITING DBS USERS FILE via ed
koennen Sie das Nutzerverzeichnis (siehe Abschnitt
`Eintragen von Nutzern' in diesem Text)
Ihren Beduerfnissen anpassen, bevor es abgelegt
wird.
--- (10) ---- Login MUTOS-Supernutzer
--- (11) ---- Kopieren der EQL-Laufzeitbibliotheken in ein
oeffentliches Bibliotheks-Directory durch das
Kommando:
cp /z/daba/lib/*libq.a /usr/lib
Einstellen der Zugriffsberechtigungen:
chown daba /usr/lib/*libq.a
chgrp daba /usr/lib/*libq.a
chmod 0644 /usr/lib/*libq.a
--- (12) ---- INSTALLATION der Demonstrationsbeispiele
Das File `demo/Makefile' enthaelt weiter Hinweise
zur Generierung der einzelnen Demonstrationsbeispiele
und deren globale Installation.
--- (13) ---- INSTALLATION des Mehrnutzerbetriebes
DABA16 unterstuetzt grundsaetzlich den parallelen
Zugriff von mehreren Nutzern auf eine Datenbank.
Um den Mehrnutzerbetrieb zu aktivieren, sind die
Hinweise aus dem File `Parallelitaet' zu beachten.
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| Z U S A E T Z L I C H E F U N K T I O N E N |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
make customer
Erstellen einer neuen Betriebsbezeichnung
make mode
Einstellen der richtigen Zugriffsrechte fuer alle
Verzeichnisse und generierten Kommandos.
make users [ED=cmd]
Erstellen des DABA16.3/4 - Nutzerverzeichnisses.
make adduser USER=user [ED=cmd]
Eintragen des neuen Nutzers `user' in das Nutzerver-
zeichnis. Es werden zur Information alle bereits ver-
gebenen DABA16.3/4 - Nutzerkennzeichen ausgegeben.
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| U E B E R P R U E F E N V O N F I L E S |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
Folgende Files sind auf ihren Modus zu pruefen:
/dev/null -rw-rw-rw-
/etc/passwd -rw-r--r--
/etc/group -rw-r--r--
nicht PSU, XENIX /lib/libc.a bzw. /usr/lib/libc.a -rw-r--r--
nicht PSU, XENIX /lib/libm.a bzw. /usr/lib/libm.a -rw-r--r--
nur PSU /SYS/lib/libc.a bzw. /USR/lib/libc.a -rw-r--r--
nur PSU /SYS/lib/libm.a bzw. /USR/lib/libm.a -rw-r--r--
nur XENIX286 /lib/Slibc.a -rw-r--r--
nur XENIX286 /lib/Slibcfp.a -rw-r--r--
nur XENIX286 /lib/Slibm.a -rw-r--r--
nur XENIX286 /lib/Slibx.a -rw-r--r--
nur XENIX286 /lib/Scrt0.o -rw-r--r--
nur XENIX286 /lib/Sseg.o -rw-r--r--
nur XENIX386 /lib/386/Slibc.a -rw-r--r--
nur XENIX386 /lib/386/Slibcfp.a -rw-r--r--
nur XENIX386 /lib/386/Slibm.a -rw-r--r--
nur XENIX386 /lib/386/Slibx.a -rw-r--r--
nur XENIX386 /lib/386/Scrt0.o -rw-r--r--
nur XENIX386 /lib/386/Sseg.o -rw-r--r--
nur P8000, VENIX /lib/crt0.o -rw-r--r--
nicht P8000 /usr/include/setjmp.h -rw-r--r--
nur P8000 /usr/include/setret.h -rw-r--r--
/usr/include/sgtty.h -rw-r--r--
/usr/include/signal.h -rw-r--r--
/usr/include/stdio.h -rw-r--r--
nur LOCKING /usr/include/sys/dir.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/mmu.h -rw-r--r--
nur LOCKING /usr/include/sys/param.h -rw-r--r--
nur LOCKING /usr/include/sys/proc.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/s.out.h -rw-r--r--
/usr/include/sys/stat.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/state.h -rw-r--r--
/usr/include/sys/timeb.h -rw-r--r--
/usr/include/sys/types.h -rw-r--r--
nur LOCKING /usr/include/sys/user.h -rw-r--r--
/tmp -rwxrwxrwx
Folgende Kommandos sind auf ihre Ausfuehrbarkeit durch
daba zu pruefen:
/bin/sh, /lib/cpp, ar
as nur CM1420 CM4 CM52_11 I100 I102 I105 K1630
und PDP34 PDP70
cc, chmod, cp, echo, ed, grep
ld nur P8000 VENIX XENIX
ln, make, mkdir, mknod, mv
ranlib nur A7150 EC1834 ESER_VMX K1820 K1840 PDP70
und PSU VENIX XENIX
rm, rmdir
scc nur P8000
sed, tar, touch
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| E I N T R A G E N V O N N U T Z E R N |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
Durch die Systeminstallation wird das Nutzerverzeichnis
`sys/etc/users' automatisch eingerichtet.
Bei der Anpassung sind folgende Punkte zu beachten:
1) Durch die Systeminstallation wurden alle im MUTOS-
Nutzerverzeichnis `/etc/passwd' stehenden Nutzer in
das DABA16.3/4 Nutzerverzeichnis uebernommen.
2) Alle nicht erwuenschten Nutzer sind zu streichen.
Die MUTOS-Supernutzer sind unbedingt aus dem Nutzerver-
zeichnis zu entfernen !
3) Bei den verbleibenden Nutzer koennen Modifikationen
vorgenommen werden. Die folgende Zeile illustriert
einen Eintrag:
reserved:am:24:15:000000:::/tmp/.ql::
Der Wert `am' ist der DABA16.3/4 Nutzerkode, er
muss zwei Bytes lang und eineindeutig sein, er kann
eigenen Vorstellungen entsprechen geaendert werden.
Der Wert `000000' gibt die DABA16.3/4 Berechtigung
des Nutzers `reserved' an. Die Berechtigung kann in
`000001' geaendert werden, um dem Nutzer die Erlaub-
nis zum Erzeugen von Datenbanken zu geben. Der
Nutzer `daba' muss die Berechtigung `177777' ein-
getragen haben, um seine Systemfunktionen ausueben zu
koennen.
Der Wert `/tmp/.ql' stellt den Prototyp eines
nutzerspezifischen DABA16.3/4 Start-File
(siehe STARTUP(FILES)).
Fuer alle weiteren Fragen siehe USERS(FILES).
4) Die neuen DABA16.3/4 Nutzer sollten auf die Aende-
rung ihres Login-Files hingewiesen werden, damit sie die
Datenbankkommandos aufrufen koennen:
- fuer die `sh' das File `.profile' nach folgendem
Muster:
PATH=/z/daba/bin:/bin:/usr/bin:
export PATH
- fuer die `csh' das File `.cshrc' nach folgendem
Muster:
set path=(/z/daba/bin /bin /usr/bin)
setenv PATH "/z/daba/bin:/bin:/usr/bin:"
Soll zu einem spaeteren Zeitpunkt ein neuer Nutzer in das
das Nutzerverzeichnis aufgenommen werden, so kann das
kann das folgendermassen erfolgen:
make adduser USER=login_name
Es werden zuerst alle verwendeten Nutzerkodes ausgegeben
und anschliessend der Eintrag fuer den Nutzer `login'
zur Korrektur angeboten. Nach Beendigung der Korrektur
wird der neue Nutzer automatisch in das Nutzerverzeich-
nis eingefuegt.

View File

@ -0,0 +1,239 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | | || | | | | | | | | |#
#| | | | | | | | | | | | |#
#| | | | | | | ||| | | |||||| | |#
#| | | | | | | | | | | | | |#
#| | | | || | | | | | | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | ||||||| | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| A relational database managment system |#
#| |#
#| |#
#| VERSION 6.3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
KONTAKTPARTNER:
Akademie der Wissenschaften der DDR
Zentralinstitut fuer Kybernetik und Informationsprozesse
Koll. Wenzlaff
Abteilung RS
Kurstrasse 33
PSF 1298
BERLIN
1086
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| I N S T A L L A T I O N |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
---- (1) ---- login UNIX - super user
---- (2) ---- Eintragen des Nutzers `ing_db' in das UNIX - Nutzer-
verzeichnis `/etc/passwd' in folgender Art:
ing_db::9:9::/z/ing_db:
Das directory `/z/ing_db' ist das home-directory des
Nutzers `ing_db', in das alle relevanten Daten des
ING_DB 6.3/4 - Systems eingespielt werden.
Rechnerabhaengig kann das directory natuerlich auch
anders gelegt werden, z.B. `/mnt/ing_db' oder auch
`/usr/ing_db' usw.
Die Nutzeridentifikation (uid = 9) und die Gruppen-
identifikation (gid = 9) sind unbedingt einzuhalten.
---- (3) ---- Eintragen der Gruppe `ing_db' in das UNIX - Gruppen-
verzeichnis `/etc/group' in folgender Art:
ing_db::9:ing_db
---- (4) ---- Erstellen des home-directory fuer den Nutzer `ing_db'
mkdir /z/ing_db
chown ing_db /z/ing_db
chgrp ing_db /z/ing_db
chmod 755 /z/ing_db
---- (5) ---- Erstellen des login-files fuer den Nutzer `ing_db'.
Fuer die `sh' das file `/z/ing_db/.profile' nach
folgendem Muster:
PATH=:/z/ing_db/bin:/z/ing_db/sys/bin:/bin:/usr/bin:
export PATH
Fuer die `csh' das file `/z/ing_db/.cshrc' nach
folgendem Muster:
set path=(. /z/ing_db/bin /z/ing_db/sys/bin /bin /usr/bin)
setenv PATH ":/z/ing_db/bin:/z/ing_db/sys/bin:/bin:/usr/bin:"
---- (6) ---- login Nutzer `ing_db'
---- (7) ---- Laden der ING_DB 6.3/4 - Installation mittels
tar xf /dev/... (... = Ihre Geraetebezeichnung)
von der Diskette E720, E360 oder dem Band ent-
sprechend der Vertriebsform. Der Datentraeger ist
vollstaendig einzulesen.
---- (8) ---- Ausfuehrung der Installation durch das Kommando
make disk TAPE=dev [TAR=cmd] [ED=cmd]
fuer die Auslieferung auf 720 KBytes-Disketten bzw.
make disk360 TAPE=dev [TAR=cmd] [ED=cmd]
fuer die Auslieferung auf 360 KBytes-Disketten bzw.
make tape [ED=cmd]
fuer die Auslieferung auf Magnetband.
`dev' ist die Angabe des verwendeten Geraetes in der
Form: fd1, fd096ds9, dmf0 usw.
Die Angabe `TAR=cmd' ist notwendig, falls Sie ein zu
`tar' kompatibles Kommando mit dem Namen `cmd' ver-
wenden wollen.
Die Angabe `ED=cmd' gestattet Ihnen, die Verwendung
des Editors `cmd' anstelle von `ed'.
Drucken Sie sich das file `READ_ME', um die Veraende-
rungen im Realease 4 und notwendige Zusatzkenntnisse
zu erhalten.
Auf den files GEN.1 und GEN.2 wird die Generierung
protokolliert, bei auftretenden Fehlern sind diese
an den Entwickler zu schicken.
Bei der Generierung auftretende Fehler, die mit der
folgenden Mitteilung inhaltlich identisch sind:
*** Error code 1 (ignored)
sind vom Entwickler beabsichtigt und beruhen auf der
gleichen Generierung fuer verschiedene Rechner.
Die Generierung erfolgt ab dem Release 4 grundsaetz-
lich von Quelltextniveau, d.h. sie dauert je nach
Anlagentyp zwischen 0,5 .. 36 Stunden.
Die Generierung laeuft in folgenden Schritten ab:
- Erzeugen der Systemverzeichnisse
- Laden der Datentraeger
- Anfordern des Maschinentyps, fuer die das System
generiert werden soll, durch
Maschinentyp>
Vor der Anforderung wird eine Liste der gueltigen
Maschinentypen ausgegeben, aus der ein Typ auszu-
waehlen ist. Die Anforderung wird solange wieder-
holt, bis der eingegebene Typ akzeptiert wird.
- Anfordern der Betriebsbezeichnung, die von einigen
Kommandos protokolliert wird, durch
Betriebsbezeichnung>
Hier ist eine einzeilige Bezeichnung ohne das Zei-
chen `"' zulaessig.
- Generierung des Systems aus den Quellen.
- Einstellen der richtigen Zugriffsrechte fuer alle
Verzeichnisse und generierten Kommandos.
- Erstellung des Nutzerverzeichnisses, nach der Aus-
schrift
EDITING DBS USERS FILE via ED
koennen Sie das Nutzerverzeichnis (siehe READ_ME)
Ihren Beduerfnissen anpassen, bevor es abgelegt
wird.
---- (9) ---- Zusaetzliche Funktionen des Makefiles
make customer
Erstellen einer neuen Betriebsbezeichnung
make conf
Erstellen eines neuen Anlagentyps
make install
Quelltextgenierung des Systems (fuer Update's)
make system
Generierung fuer eine neue Anlage, unter der Bedin-
gung, dass alle Quellen geladen sind (Zusammenfassung
def Funktion `make customer conf install').
make mode
Einstellen der richtigen Zugriffsrechte fuer alle
Verzeichnisse und generierten Kommandos.
make users [ED=cmd]
Erstellen des ING_DB 6.3/4 - Nutzerverzeichnisses.
make adduser USER=user [ED=cmd]
Eintragen des neuen Nutzers `user' in das Nutzerver-
zeichnis. Es werden zur Information alle bereits ver-
gebenen ING_DB 6.3/4 - Nutzerkennzeichen ausgegeben.
make clean
Loeschen aller fuer ein lauffaehiges System nicht be-
noetigter Komponenten.
VORSICHT: Sichern Sie sich vorher de Inhalte der Ver-
zeichnisse `cat', `doc', `lib' und `src'.

View File

@ -0,0 +1,207 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | DDDDDD A BBBBBB A 1 66666 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D AAAAAAA BBBBBB AAAAAAA 1 666666 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | DDDDDD A A BBBBBB A A 1 66666 | |#
#| | | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| Relationales Datenbankbetriebssystem |#
#| |#
#| |#
#| VERSION 3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
ED= ed
LS= ls -l
MAKE= make
MFLAGS= -k
MODE_0644= 0644
MODE_0700= 0700
MODE_0711= 0711
MODE_0755= 0755
MODE_0777= 0777
MODE_6711= 6711
PASSWD= /etc/passwd
RM= rm -rf
SHELL= /bin/sh
TAPE= null
TAR= tar
TAR_X= $(TAR) xf /dev/$(TAPE)
USER= bummi
USERS= sys/etc/users
BIN_0711= bin/eqc \
bin/eql \
bin/rc \
bin/rg \
bin/rp_desc
BIN_6711= bin/amx \
bin/amxf \
bin/amxrm \
bin/copydb \
bin/copyr \
bin/creatdb \
bin/creater \
bin/daba \
bin/destroydb \
bin/destroyr \
bin/helpr \
bin/indexr \
bin/iql \
bin/manr \
bin/modifyr \
bin/oamx \
bin/oamxf \
bin/printr \
bin/purge \
bin/rd \
bin/refr \
bin/restore \
bin/samx \
bin/saver \
bin/sysmod
DIRS_0700= data
DIRS_0755= bin \
demo \
demo/amx \
demo/bank \
demo/dbsr \
demo/eql \
demo/pqr \
demo/redabas \
demo/ql \
lib \
sys \
sys/bin \
sys/etc \
sys/man \
sys/ref
DIRS_0777= data/base
DIRS= $(DIRS_0700) $(DIRS_0755) $(DIRS_0777)
SYS_0700= sys/bin/dbdev \
sys/bin/dbino \
sys/bin/dbrel \
sys/bin/lockinfo \
sys/bin/pager \
sys/bin/unlock \
sys/bin/usersetup
SYS_6711= sys/bin/dbu??_? \
sys/bin/decomp?? \
sys/bin/monitor \
sys/bin/ovqp34 \
sys/bin/parser \
sys/bin/qrymod
FILES_0644= Installation \
Makefile \
Parallelitaet \
lib/* \
sys/etc/* \
sys/man/* \
sys/ref/*
FILES_0700= $(DIRS_0700) $(SYS_0700)
FILES_0711= $(BIN_0711)
FILES_0755= $(DIRS_0755)
FILES_0777= $(DIRS_0777)
FILES_6711= $(BIN_6711) $(SYS_6711)
DISK: disk
disk: sysbgn tar720 sysend
TAPE: tape
tape: dirs sysend
SYSBGN: sysbgn
sysbgn: dirs ready
DIRS: dirs
dirs:
@-mkdir $(DIRS)
ready:
@echo 'echo -n INSERT DBS DISTRIBUTION DISK $$1' > READY
@echo read ok >> READY
@chmod $(MODE_0700) READY
SYSEND: sysend
sysend: customer mode users
CUSTOMER: customer
customer:
@echo 'echo -n "Betriebsbezeichnung> "' > CU
@echo 'read betrieb' >> CU
@echo 'echo $$betrieb > sys/etc/customer' >> CU
@chmod $(MODE_0700) CU
@./CU
@$(RM) CU
MODE: mode
mode:
@-chmod $(MODE_0644) $(FILES_0644)
@-chmod $(MODE_0700) $(FILES_0700)
@-chmod $(MODE_0711) $(FILES_0711)
@-chmod $(MODE_0755) $(FILES_0755)
@-chmod $(MODE_0777) $(FILES_0777)
@-chmod $(MODE_6711) $(FILES_6711)
USERS: users
users:
@usersetup
@echo EDITING DBS USERS FILE via $(ED)
@-$(ED) $(USERS)
ADDUSER: adduser
adduser:
@echo Folgende Nutzerkennzeichen sind vergeben
@-sed "s/[a-z_][a-z_0-9]*:\(..\):.*/\1/" $(USERS)
@-usersetup - | grep $(USER) > $(USERS).tmp || echo USER $(USER) not found in $(PASSWD)
@echo EDITING new USER $(USER) via $(ED)
@-$(ED) $(USERS).tmp
@cat $(USERS).tmp >> $(USERS)
@$(RM) $(USERS).tmp
LIST: list
list:
@$(LS) . $(DIRS)
tar720: B720 S720 L720 D720
B720:
@./READY B720
@$(TAR_X)
S720:
@./READY S720
@$(TAR_X)
L720:
@./READY L720
@$(TAR_X)
D720:
@./READY D720
@$(TAR_X)

View File

@ -0,0 +1,338 @@
HOME= /z/dbs
SHELL= /bin/sh
DISK= /dev/dbs
TAPE= null
PASSWD= /etc/passwd
USER= bummi
USERS= sys/etc/users
ED= ed
LS= ls -l
MAKE= make
MFLAGS= -k
RM= rm -rf
TAR= tar
TAR_X= $(TAR) xf /dev/$(TAPE)
MODE_0644= 0644
MODE_0700= 0700
MODE_0711= 0711
MODE_0755= 0755
MODE_0777= 0777
MODE_6711= 6711
SRC= DABA DOK_MS360 DOK_MSDOS DOK_UNIX \
I.daba I.ing_db INFO.DOK ING_DB \
M.daba M.ing_db P.daba P.ing_db \
READ_ME Customer 720B 720D \
720E 720L 720S
DIRS_0700= data
DIRS_0755= bin \
cat \
demo \
demo/amx \
demo/bank \
demo/dbsr \
demo/eql \
demo/pqr \
demo/redabas \
demo/ql \
doc \
lib \
src \
src/access \
src/amx_cc \
src/amx_lib \
src/conf \
src/dbu \
src/decomp \
src/eql \
src/form \
src/gutil \
src/h \
src/iutil \
src/lib \
src/libq \
src/monitor \
src/oamx_lib \
src/olibq \
src/ovqp \
src/parser \
src/pqr \
src/proto \
src/qrymod \
src/redabas \
src/samx_lib \
src/slibq \
src/support \
src/sys \
src/yyyacc \
sys \
sys/bin \
sys/etc \
sys/man \
sys/ref
DIRS_0777= data/base
DIRS= $(DIRS_0700) $(DIRS_0755) $(DIRS_0777)
BIN_0711= bin/eql \
bin/rc \
bin/rg \
bin/rp_desc
BIN_6711= bin/amx \
bin/amxf \
bin/oamx \
bin/oamxf \
bin/samx \
bin/amxrm \
bin/copydb \
bin/copyr \
bin/creatdb \
bin/creater \
bin/destroydb \
bin/destroyr \
bin/helpr \
bin/indexr \
bin/iql \
bin/manr \
bin/modifyr \
bin/printr \
bin/purge \
bin/rd \
bin/restore \
bin/saver \
bin/sysmod
SYS_0700= sys/bin/pager \
sys/bin/usersetup
SYS_6711= sys/bin/dbu??_? \
sys/bin/decomp?? \
sys/bin/monitor \
sys/bin/ovqp34 \
sys/bin/parser \
sys/bin/qrymod
FILES_0644= Installation \
Makefile \
Parallelitaet \
READ_ME \
lib/* \
sys/etc/* \
sys/man/* \
sys/ref/*
FILES_0700= $(DIRS_0700) $(SYS_0700)
FILES_0711= $(BIN_0711)
FILES_0755= $(DIRS_0755)
FILES_0777= $(DIRS_0777)
FILES_6711= $(BIN_6711) $(SYS_6711)
disk: sysbgn tar720 system sysend
tape: dirs system sysend
disk360: sysbgn tar360 system sysend
sysbgn: dirs ready
dirs:
@-mkdir $(DIRS)
ready:
@echo 'echo -n INSERT DBS DISTRIBUTION DISK $$1' > READY
@echo read ok >> READY
@chmod $(MODE_0700) READY
system: conf install
conf:
@-cd src/conf;$(MAKE) $(MFLAGS) reset
@echo 'cat src/conf/machine.h' > MKCONF.sh
@echo 'echo -n " Maschinentyp> "' >> MKCONF.sh
@echo 'read machine' >> MKCONF.sh
@echo 'until grep "$$machine *== " src/conf/machine.h > /dev/null' >> MKCONF.sh
@echo 'do echo Ungueltige Maschinentyp !' >> MKCONF.sh
@echo 'cat src/conf/machine.h' >> MKCONF.sh
@echo 'echo -n " Maschinentyp> "' >> MKCONF.sh
@echo 'read machine' >> MKCONF.sh
@echo 'done' >> MKCONF.sh
@echo 'echo "# define $$machine" > src/conf/m.h' >> MKCONF.sh
@echo 'echo -n "Betriebsbezeichnung> "' >> MKCONF.sh
@echo 'read betrieb' >> MKCONF.sh
@echo 'echo "$$machine / $$betrieb" > sys/etc/customer' >> MKCONF.sh
@chmod $(MODE_0700) MKCONF.sh
@-./MKCONF.sh
@$(RM) MKCONF.sh
install:
cd src/conf;$(MAKE) $(MFLAGS) allinstall >../../GEN.1 2>../../GEN.2
sysend: mode users
mode:
@-chmod $(MODE_0644) $(FILES_0644)
@-chmod $(MODE_0700) $(FILES_0700)
@-chmod $(MODE_0711) $(FILES_0711)
@-chmod $(MODE_0755) $(FILES_0755)
@-chmod $(MODE_0777) $(FILES_0777)
@-chmod $(MODE_6711) $(FILES_6711)
users:
@usersetup
@echo EDITING DBS USERS FILE via $(ED)
@-$(ED) $(USERS)
adduser:
@echo Folgende Nutzerkennzeichen sind vergeben
@-sed "s/[a-z_][a-z_0-9]*:\(..\):.*/\1/" $(USERS)
@-usersetup - | grep $(USER) > $(USERS).tmp || echo USER $(USER) not found in $(PASSWD)
@echo EDITING new USER $(USER) via $(ED)
@-$(ED) $(USERS).tmp
@cat $(USERS).tmp >> $(USERS)
@$(RM) $(USERS).tmp
clean:
@$(RM) cat/* doc/* src/*
list:
@$(LS) . $(DIRS)
tar720: S720.1 S720.2 S720.3 SAMX SPQR
S720.1:
@./READY S720.1
@cd src; $(TAR_X)
S720.2:
@./READY S720.2
@cd src; $(TAR_X)
S720.3:
@./READY S720.3
@cd src; $(TAR_X)
SAMX:
@./READY SAMX
@cd src; $(TAR_X)
SPQR:
@./READY SPQR
@cd src; $(TAR_X)
C720: C720.1 C720.2 C720.3
C720.1:
@./READY C720.1
@$(TAR_X)
C720.2:
@./READY C720.2
@$(TAR_X)
C720.3:
@./READY C720.3
@$(TAR_X)
tar360: M360 S360.1 S360.2 S360.3 S360.4 S360.5 S360.6 SAMX SPQR
M360:
@./READY M360
$(TAR_X)
S360.1:
@./READY S360.1
@cd src; $(TAR_X)
S360.2:
@./READY S360.2
@cd src; $(TAR_X)
S360.3:
@./READY S360.3
@cd src; $(TAR_X)
S360.4:
@./READY S360.4
@cd src; $(TAR_X)
S360.5:
@./READY S360.5
@cd src; $(TAR_X)
S360.6:
@./READY S360.6
@cd src; $(TAR_X)
C360: C360.1 C360.2 C360.3 C360.4 C360.5
C360.1:
@./READY C360.1
@$(TAR_X)
C360.2:
@./READY C360.2
@$(TAR_X)
C360.3:
@./READY C360.3
@$(TAR_X)
C360.4:
@./READY C360.4
@$(TAR_X)
C360.5:
@./READY C360.5
@$(TAR_X)
DISK: disk
TAPE: tape
DISK360: disk360
SYSBGN: sysbgn
DIRS: dirs
SYSTEM: system
CONF: conf
INSTALL: install
SYSEND: sysend
MODE: mode
USERS: users
ADDUSER: adduser
CLEAN: clean
LIST: list
.save: $(SRC)
mount $(DISK) /wrk
cp $? $@ /wrk
> $@
umount $(DISK)
$(HOME)/.save: $(SRC)
cp $? /z/dbs
> $@
.PRECIOUS: .save
.PRECIOUS: $(HOME)/.save

View File

@ -0,0 +1,254 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | DDDDDD A BBBBBB A 1 66666 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D A A B B A A 1 1 6 | |#
#| | D D AAAAAAA BBBBBB AAAAAAA 1 666666 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | D D A A B B A A 1 6 6 | |#
#| | DDDDDD A A BBBBBB A A 1 66666 | |#
#| | | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| Relationales Datenbankbetriebssystem |#
#| |#
#| |#
#| VERSION 3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| I N S T A L L A T I O N |#
#| der parallelen Verwendbarkeit von DABA16-Datenbanken |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
---- (1) ---- Login MUTOS - Supernutzer
---- (2) ---- cd .../sys/etc
---- (3) ---- make /dev/db_lock
---- (4) ---- Eintragen des Aufrufs `/etc/dbserver > /dev/console'
in `/etc/rc' bzw. `/etc/rc_csh' (P8000)
fuer den Systemstart (INIT 2)
---- (5) ---- Eintragen des Aufrufs `/etc/unlock dbserver' in
`/etc/rc' bzw. `/etc/rc_csh' (P8000) fuer die
Systembeendigung (INIT 1)
---- (6) ---- MUTOS neu starten
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| P R O G R A M M B E S C H R E I B U N G |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
/ E T C / D B S E R V E R
-------------------------
Der Datenbankserver ueberwacht alle Transaktionen, die auf Daten-
banken ausgefuehrt werden. Zur Arbeit mit parallel verwendbaren
Datenbanken muss `/etc/dbserver' gestartet werden. Ansonsten er-
scheint die Ausschrift
`Datenbank zeitweilig nicht verfuegbar'
Der Datenbankserver kann nur vom MUTOS-Supernutzer gestartet werden!
Der Datenbankserver wird durch das Kommando
`/etc/unlock dbserver'
des MUTOS-Supernutzers oder durch das Kommando
`unlock dbserver'
des DABA16-Systemverantwortlichen wieder abgehaengt.
/ E T C / U N L O C K bzw. . . . / S Y S / B I N / U N L O C K
------------------------------------------------------------------
Das Programm `unlock' dient dem Abhaengen des Datenbankservers oder
einzelner Prozesse, die der Datenbankserver eingeschlaefert hat. In
der Kommandoform
`/etc/unlock dbserver' bzw. `unlock dbserver'
werden der Datenbankserver abgehaengt und alle schlafenden Datenbank-
prozesse mit einem Fehler aufgeweckt (abnormal beendet). Ein einzel-
ner Datenbankprozess kann mit
`/etc/unlock pid' bzw. `unlock pid'
abnormal beendet werden. Das Kommando kann nur durch den MUTOS-Super-
nutzer oder den DABA16-Systemverantwortlichen verwendet werden.
`pid' ist die Prozessnummer eines schlafenden Prozesses, die ueber
`lockinfo' beschafft werden kann. Bei (hoffentlich nicht) auftreten-
den Systemverklemmungen sollte nicht der Datenbankserver global,
sondern ein Prozess beendet werden, der die Verklemmung hervorruft.
Es duerfen nur schlafende Prozesse mit `unlock' beendet werden, um
die Konsistenz der Datenbanken nicht zu gefaehrden.
*** Systemverklemmungen sind meldepflichtig !
*** Es mussen die Ausgabe von `lockinfo' und die Aktionen, die die
*** verklemmten Prozesse ausgefuehrt haben, an den Entwickler einge-
*** schickt werden.
. . . / S Y S / B I N / L O C K I N F O
---------------------------------------
`lockinfo' liefert Informationen zu aktiven Datenbankprozessen und
den von ihnen gehaltenen Sperren (locks). In der Form
`lockinfo dbname'
werden alle Prozesse und deren Sperren protokolliert, die auf der Da-
tenbank `dbname' arbeiten. In der Form
`lockinfo'
werden alle Prozesse und deren Sperren protokolliert. Aus dem Proto-
koll ist ersichtlich, welche Prozesse auf welches Ereignis warten,
d.h. schlafen.
Beispielausgabe von `lockinfo':
DB.SERVER: WAITQUEUE--> 434
P 433: L 449 L 450
P 434: L 450 R 449
L 450 | 2RQ 2LK 0TA S | 0 | 4 | 3233 | 3/ 1 | USE
L 449 | 2RQ 1LK 1TA E | 0 | 4 | 3233 | 3/ 1 | REL
Erlaeuterung:
Die Ausgabe `WAITQUEUE--> 434' bedeutet, dass der Prozess
mit der Prozessnummer `434' vom Datenbankserver eingeschlae-
fert wurde, da er eine Sperre wuenscht, die zur Zeit nicht
gegeben werden kann.
Eine durch das Zeichen `P' eingeleitete Zeile beschreibt die
Sperren, die durch einen Prozess gehalten oder gewuenscht wer-
den. Die anschliessende Nummer charakterisiert den Prozess.
Gehaltene Sperren werden durch ein `L' (lock), gewuenschte
durch ein `R' (request) markiert. Die Nummer kennzeichnet die
Sperre, die in der folgenden Tabelle beschrieben ist. Die
Zeile `P 433: L 449 L 450' heisst also, dass der Prozess 433
die Sperren 449 und 450 haelt. Die Zeile `P 434: L 450 R 449'
heisst, dass der Prozess 434 die Sperre 450 haelt und die
die Sperre 449 wuenscht (wesshalb er eingeschlaefert wurde).
Eine durch das Zeichen `L' eingeleitete Zeile beschreibt die
Sperren selbst, nach dem `L' folgt die Nummer der Sperre. An-
schliessend folgen 6 Felder die durch das Zeichen `|' sepa-
riert werden.
FELD 1: spiegelt die Sperranforderungen in folgender Form
wieder `#RQ #LK #TA TYP'. `#RQ' gibt die Zahl der ge-
gebenen und gewuenschten Sperren an. `#LK' gibt die
Zahl der gegebenen Sperren an. ' #TA' gibt die Zahl
der auf der Sperre begonnenen Transaktionen an. Der
`TYP' kann `S' parallel (shared) oder `E' nicht
parallel (exclusive) verwendbar sein. Sperren vom Typ
`S' koennen von mehreren Prozessen gehalten werden,
Sperren vom Typ `E' nur von einem.
FELD 2: gibt die Major-Device-Nummer des Geraets an, auf
dem die Datenbank montiert ist (s. DBDEV).
FELD 3: gibt die Minor-Device-Nummer des Geraets an, auf
dem die Datenbank montiert ist (s. DBDEV).
FELD 4: gibt die Inode-Nummer der Datenbank an (s. DBINO).
FELD 5: gibt den TID (Tupelidentifikator) der Relation an, die
gesperrt wurde. Ein TID besteht aus zwei Teilen, der
Seitennummer `P' und der Zeilennummer `L' getrennt
durch das Zeichen `/' (s. DBREL).
FELD 6: gibt eine Sperrspezifikation oder eine Seitennummer
an. Als Sperrspezifikation kann `CS',`USE' oder `REL'
erscheinen. `CS' markiert eine kritische Region
(critical section), `USE' markiert die Relation als
in Benutzung und `REL' sperrt die Relation selbst.
Erscheint eine Nummer, so ist die Sperre eine Seiten-
sperre, d.h. es wird nur ein Abschnitt der Relation
gesperrt.
Die Zeile `L 450 | 2RQ 2LK 0TA S | 0 | 4 | 3233 | 3/ 1 | USE'
beschreibt die Sperre 450. Sie wird von 2 Prozessen gehalten
(2RQ und 2LK), es liegen keine Transaktionen an (0TA). Der
Sperrtyp ist parallel verwendbar, weswegen auch Prozess 433
und 434 die Sperre gleichzeitig halten. Die Datenbank liegt
auf Major 0 und Minor 4 und hat die
Inode 3233. Die gesperrte Relation wird durch das TID `3/1'
gekennzeichnet. Die Angabe `USE' heisst, dass die Relation,
die durch die Felder 2 bis 5 adressiert wurde, in Benutzung
ist.
Die Zeile `L 449 | 2RQ 1LK 1TA E | 0 | 4 | 3233 | 3/ 1 | REL`
beschreibt die Sperre 449. Sie wird von einem Prozess gehal-
ten und von einem gewuenscht (2RQ und 1LK), es liegt eine
Transaktion an (1TA), die Anforderung R449 des Prozesses 434
ist eine Transaktion. Der Sperrtyp ist nicht parallel ver-
wendbar, weswegen auch Prozess 434 eingeschlaefert wurde.
Die Datenbank liegt auf Major 0 und Minor 4 und hat die
Inode 3233. Die gesperrte Relation wird durch das TID `3/1'
gekennzeichnet. Die Angabe `REL' heisst, dass die Relation,
die durch die Felder 2 bis 5 adressiert wurde, gesperrt ist.
Eine Verklemmung tritt dann auf, wenn mindestens zwei Prozesse schla-
fen und jeder mindestens eine Sperre haelt, die der andere anfordert.
Verklemmungen koennen auch komplizierter strukturiert sein und ueber
Prozessketten gehen.
. . . / S Y S / B I N / D B D E V
---------------------------------
Das Kommando `dbdev' liefert zu einer vorzugebenden Major- und
Minor-Device-Nummer das Geraet, auf dem die Datenbank montiert ist.
Unter Umstaenden kann ein Geraet mehrere logische Namen besitzen.
z.B. koennte `dbdev 0 4' folgendes liefern:
brw-r----- 2 bin system 0, 4 Jul 21 1988 md4
crw-r----- 2 bin system 0, 4 Feb 6 09:05 rmd4
crw-r----- 2 bin system 0, 4 Feb 6 09:05 rz
brw-r----- 2 bin system 0, 4 Jul 21 1988 z
. . . / S Y S / B I N / D B I N O
---------------------------------
Das Kommando `dbino' liefert zu einer vorzugebenden Inode-Nummer den
Namen der zugehoerigen Datenbank.
z.B. koennte `dbino 3233' folgendes liefern:
3233 demo
. . . / S Y S / B I N / D B R E L
---------------------------------
Das Kommando `dbrel' liefert zu einer vorzugebenden Datenbank und
einem TID (Seiten- und Zeilennummer) den Namen der zugehoerigen Re-
lation.
z.B. koennte `dbrel demo 3 1' folgendes liefern:
3/ 1| 48: |personal |ii |
`personal' ist der Name der gesuchten Relation, `ii' der Ei-
gentuemer. Die Angabe `48' ist ein Offset und hier ohne Inte-
resse.

View File

@ -0,0 +1,324 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | | || | | | | | | | | |#
#| | | | | | | | | | | | |#
#| | | | | | | ||| | | |||||| | |#
#| | | | | | | | | | | | | |#
#| | | | || | | | | | | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | ||||||| | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| A relational database managment system |#
#| |#
#| |#
#| VERSION 6.3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
KONTAKTPARTNER:
Akademie der Wissenschaften der DDR
Zentralinstitut fuer Kybernetik und Informationsprozesse
Koll. Wenzlaff
Abteilung RS
Kurstrasse 33
PSF 1298
BERLIN
1086
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| I N S T A L L A T I O N |#
#| der parallelen Verwendbarkeit von Datenbanken |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
---- (1) ---- login UNIX - super user
---- (2) ---- cd .../sys/etc
.../ = login directory von ing_db
---- (3) ---- Nicht P8000: In dem file `Makefile' koennen die
Definitionen fuer
OS: Betriebssystemname
OSLIB: Device-Bibliothek
OSDIR: Konfigurationsverzeichnis des Betriebssystems
MAJOR: Major-Device-Nummer fuer das Lock-Device
geaendert werden. Anschliessend ist das Lock-Device
in die Betriebssytemkonfiguration einzutragen (i.R.
`cdevsw' in `OSDIR/c.c' erweitern und die Groesse
von `nchrdev' kontrollieren).
Das Lock-Device ist ein char-special-device und kennt
die Routinen:
open: extern int dl_open();
read: extern int dl_read();
write: extern int dl_write();
---- (4) ---- make /dev/db_lock
---- (5) ---- Eintragen des Aufrufs `/etc/dbserver > /dev/console'
`/etc/rc' beim Hochfahren (INIT 2)
---- (6) ---- Eintragen des Aufrufs `/etc/unlock dbserver' in
`/etc/rc' beim Runterfahren (INIT 1)
---- (7) ---- Loeschen des Geraetes `/dev/ing_lock',
des Programms `/etc/ing_lock' (fruehere Versionen)
---- (8) ---- Betriebssystem neu starten
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| P R O G R A M M B E S C H R E I B U N G |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
/ E T C / D B S E R V E R
-------------------------
Der Datenbankserver ueberwacht alle Transaktionen die auf Datenbanken
ausgefuehrt werden. Zur Arbeit mit parallel verwendbaren Datenbanken
muss `/etc/dbserver' gestartet werden, ansonsten kommt die Ausschrift
`Datenbank zeitweilig nicht verfuegbar'
Der Datenbankserver kann nur vom superuser gestartet werden !
Der Datenbankserver wird durch das Kommando
`/etc/unlock dbserver'
vom supersuser oder durch das Kommando
`unlock dbserver'
vom ING_DB-Systemadministrator wieder abgehaengt.
/ E T C / U N L O C K bzw. . . . / S Y S / B I N / U N L O C K
------------------------------------------------------------------
Das Programm `unlock' dient dem Abhaengen des Datenbankservers oder
einzelnen Prozessen, die der Datenbankserver eingeschlaefert hat. In
der Kommandoform
`/etc/unlock dbserver' bzw. `unlock dbserver'
werden der Datenbankserver abgehaengt und alle schlafenden Datenbank-
prozesse mit einem Fehler aufgeweckt (abnormal beendet). Ein einzel-
ner Datenbankprozess kann mit
`/etc/unlock pid' bzw. `unlock pid'
abnormal beendet werden. Das Kommando kann nur durch den superuser
oder den ING_DB-Systemadministrator verwendet werden. `pid' ist
die Prozessnummer eines schlafenden Prozesses, die ueber `lockinfo'
beschafft werden kann. Bei (hoffentlich nicht) auftretenden System-
verklemmungen sollte nicht der Datenbankserver global, sondern ein
Prozess beendet werden, der die Verklemmung hervorruft.
Es duerfen nur schlafende Prozesse mit `unlock' beendet werden, um
die Konsistenz der Datenbanken nicht zu gefaehrden.
*** Systemverklemmungen sind meldepflichtig !
*** Es mussen die Ausgabe von `lockinfo' und die Aktionen, die die
*** verklemmten Prozesse ausgefuehrt haben, an den Entwickler einge-
*** schickt werden.
. . . / S Y S / B I N / L O C K I N F O
---------------------------------------
`lockinfo' liefert Informationen zu aktiven Datenbankprozessen und
den von ihnen gehaltenen Sperren (locks). In der Form
`lockinfo db_name'
werden alle Prozesse und deren Sperren protokolliert, die auf der Da-
tenbank `db_name' arbeiten. In der Form
`lockinfo'
werden alle Prozesse und deren Sperren protokolliert. Aus dem Proto-
koll ist ersichtlich, welche Prozesse auf welches Ereignis warten,
d.h. schlafen.
Beispielausgabe von `lockinfo':
DB.SERVER: WAITQUEUE--> 434
P 433: L 449 L 450
P 434: L 450 R 449
L 450 | 2RQ 2LK 0TA S | 0 | 4 | 3233 | 3/ 1 | USE
L 449 | 2RQ 1LK 1TA E | 0 | 4 | 3233 | 3/ 1 | REL
Erlaeuterung:
Die Ausgabe `WAITQUEUE--> 434' bedeutet, dass der Prozess
mit der Prozessnummer `434' vom Datenbankserver eingeschlae-
fert wurde, da er eine Sperre wuenscht, die zur Zeit nicht
gegeben werden kann.
Eine durch das Zeichen `P' eingeleitete Zeile beschreibt die
Sperren, die durch ein Prozess gehalten oder gewuenscht wer-
den. Die anschliessende Nummer charkterisiert den Prozess.
Gehaltene Sperren werden durch ein `L' (lock), gewuenschte
durch ein `R' (request) markiert. Die Nummer kennzeichnet die
Sperre, die in der folgenden Tabelle beschrieben ist. Die
Zeile `P 433: L 449 L 450' heisst also, dass der Prozess 433
die Sperren 449 und 450 haelt. Die Zeile `P 434: L 450 R 449'
heisst, dass der Prozess 434 die Sperre 450 haelt und die
die Sperre 449 wuenscht (wesshalb er eingeschlaefert wurde).
Eine durch das Zeichen `L' eingeleitete Zeile beschreibt die
Sperren selbst, nach dem `L' folgt die Nummer der Sperre. An-
schliessend folgen 6 Felder die durch das Zeichen `|' sepa-
riert werden.
FELD 1: spiegelt die Sperranforderungen in folgender Form
wieder `#RQ #LK #TA TYP'. `#RQ' gibt die Zahl der ge-
gebenen und gewuenschten Sperren an. `#LK' gibt die
Zahl der gegebenen Sperren an. ' #TA' gibt die Zahl
der auf der Sperre begonnenen Transaktionen an. Der
`TYP' kann `S' parallel (shared) oder `E' nicht
parallel (exclusive) verwendbar sein. Sperren vom Typ
`S' koennen von mehreren Prozessen gehalten werden,
Sperren vom Typ `E' nur von einem.
FELD 2: gibt die major-device-Nummer des Geraets an, auf
dem die Datenbank montiert ist (s. DBDEV).
FELD 3: gibt die minor-device-Nummer des Geraets an, auf
dem die Datenbank montiert ist (s. DBDEV).
FELD 4: gibt die inode-Nummer der Datenbank an (s. DBINO).
FELD 5: gibt das TID (Tupelidentifier) der Relation an, die
gesperrt wurde. Ein TID besteht aus zwei Teilen, der
Seitennummer `P' und der Zeilennummer `L' getrennt
durch das Zeichen `/' (s. DBREL).
FELD 6: gibt eine Lockspezifikation oder eine Seitennummer
an. Als Lockspezification kann `CS', `USE' oder `REL'
erscheinen. `CS' markiert eine kritische Region
(critical section), `USE' markiert die Relation als
in Benutzung und `REL' sperrt die Relation selbst.
Erscheint eine Nummer, so ist die Sperre eine Seiten-
sperre, d.h. es wird nur ein Abschnitt der Relation
gesperrt.
Die Zeile `L 450 | 2RQ 2LK 0TA S | 0 | 4 | 3233 | 3/ 1 | USE'
beschreibt die Sperre 450. Sie wird von 2 Prozessen gehalten
(2RQ und 2LK), es liegen keine Transaktionen an (0TA). Der
Sperrtyp ist parallel verwendbar, weswegen auch Prozess 433
und 434 die Sperre gleichzeitig halten. Die Datenbank liegt
auf major 0 und minor 4 (entspricht /dev/z) und hat die
inode 3233. Die gesperrte Relation wird durch das TID `3/1'
gekennzeichnet. Die Angabe `USE' heisst, dass die Relation,
die durch die Felder 2 bis 5 adressiert wurde, in Benutzung
ist.
Die Zeile `L 449 | 2RQ 1LK 1TA E | 0 | 4 | 3233 | 3/ 1 | REL`
beschreibt die Sperre 449. Sie wird von einem Prozess gehal-
ten und von einem gewuenscht (2RQ und 1LK), es liegt eine
Transaktion an (1TA), die Anforderung R449 des Prozesses 434
ist eine Transaktion. Der Sperrtyp ist nicht parallel ver-
wendbar, weswegen auch Prozess 434 eingeschlaefert wurde.
Die Datenbank liegt auf major 0 und minor 4 und hat die
inode 3233. Die gesperrte Relation wird durch das TID `3/1'
gekennzeichnet. Die Angabe `REL' heisst, dass die Relation,
die durch die Felder 2 bis 5 adressiert wurde, gesperrt ist.
Eine Verklemmung tritt dann auf, wenn mindestens zwei Prozesse schla-
fen und jeder mindestens eine Sperre haelt, die der andere anfordert.
Verklammungen koennen auch komplizierter strukturiert sein und ueber
Prozessketten gehen.
. . . / S Y S / B I N / D B D E V
---------------------------------
Das Kommando `dbdev' liefert zu einer vorzugebenden major- und
minor-device-Nummer das Geraet, auf dem die Datenbank montiert ist.
Unter Umstaenden kann ein Geraet mehrere logische Namen besitzen.
z.B. koennte `dbdev 0 4' folgendes liefern:
brw-r----- 2 bin system 0, 4 Jul 21 1988 md4
crw-r----- 2 bin system 0, 4 Feb 6 09:05 rmd4
crw-r----- 2 bin system 0, 4 Feb 6 09:05 rz
brw-r----- 2 bin system 0, 4 Jul 21 1988 z
. . . / S Y S / B I N / D B I N O
---------------------------------
Das Kommando `dbino' liefert zu einer vorzugebenden inode-Nummer den
Namen der zugehoerigen Datenbank.
z.B. koennte `dbino 3233' folgendes liefern:
3233 demo
. . . / S Y S / B I N / D B R E L
---------------------------------
Das Kommando `dbrel' liefert zu einer vorzugebenden Datenbank und
einem TID (Seiten- und Zeilennummer) den Namen der zugehoerigen Re-
lation.
z.B. koennte `dbrel demo 3 1' folgendes liefern:
3/ 1| 48: |personal |ii |
`personal' ist der Name der gesuchten Relation, `ii' der Ei-
gentuemer. Die Angabe `48' ist ein Offset und hier ohne Inte-
resse.

View File

@ -0,0 +1,462 @@
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| +----------------------------------------------------------------------+ |#
#| | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | | || | | | | | | | | |#
#| | | | | | | | | | | | |#
#| | | | | | | ||| | | |||||| | |#
#| | | | | | | | | | | | | |#
#| | | | || | | | | | | | |#
#| | ||||||| | | ||||| |||||| |||||| | |#
#| | ||||||| | |#
#| | | |#
#| +----------------------------------------------------------------------+ |#
#| |#
#| |#
#| A relational database managment system |#
#| |#
#| |#
#| VERSION 6.3 |#
#| |#
#| RELEASE 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
KONTAKTPARTNER:
Akademie der Wissenschaften der DDR
Zentralinstitut fuer Kybernetik und Informationsprozesse
Koll. Wenzlaff
Abteilung RS
Kurstrasse 33
PSF 1298
BERLIN
1086
##############################################################################
#+--------------------------------------------------------------------------+#
#| U E B E R P R U E F E N V O N F I L E S |#
#+--------------------------------------------------------------------------+#
##############################################################################
Folgende files sind auf ihren mode zu pruefen:
/dev/null -rw-rw-rw-
/etc/passwd -rw-r--r--
/etc/group -rw-r--r--
nicht PSU, XENIX /lib/libc.a bzw. /usr/lib/libc.a -rw-r--r--
nicht PSU, XENIX /lib/libm.a bzw. /usr/lib/libm.a -rw-r--r--
nur PSU /SYS/lib/libc.a bzw. /USR/lib/libc.a -rw-r--r--
nur PSU /SYS/lib/libm.a bzw. /USR/lib/libm.a -rw-r--r--
nur XENIX286 /lib/Slibc.a -rw-r--r--
nur XENIX286 /lib/Slibcfp.a -rw-r--r--
nur XENIX286 /lib/Slibm.a -rw-r--r--
nur XENIX286 /lib/Slibx.a -rw-r--r--
nur XENIX286 /lib/Scrt0.o -rw-r--r--
nur XENIX286 /lib/Sseg.o -rw-r--r--
nur XENIX386 /lib/386/Slibc.a -rw-r--r--
nur XENIX386 /lib/386/Slibcfp.a -rw-r--r--
nur XENIX386 /lib/386/Slibm.a -rw-r--r--
nur XENIX386 /lib/386/Slibx.a -rw-r--r--
nur XENIX386 /lib/386/Scrt0.o -rw-r--r--
nur XENIX386 /lib/386/Sseg.o -rw-r--r--
nur P8000, VENIX /lib/crt0.o -rw-r--r--
nicht P8000 /usr/include/setjmp.h -rw-r--r--
nur P8000 /usr/include/setret.h -rw-r--r--
/usr/include/sgtty.h -rw-r--r--
/usr/include/signal.h -rw-r--r--
/usr/include/stdio.h -rw-r--r--
nur LOCKING /usr/include/sys/dir.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/mmu.h -rw-r--r--
nur LOCKING /usr/include/sys/param.h -rw-r--r--
nur LOCKING /usr/include/sys/proc.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/s.out.h -rw-r--r--
/usr/include/sys/stat.h -rw-r--r--
nur P8000-LOCKING /usr/include/sys/state.h -rw-r--r--
/usr/include/sys/timeb.h -rw-r--r--
/usr/include/sys/types.h -rw-r--r--
nur LOCKING /usr/include/sys/user.h -rw-r--r--
/tmp -rwxrwxrwx
Folgende Kommandos sind auf ihre Ausfuehrbarkeit durch
ing_db zu pruefen:
/bin/sh, /lib/cpp, ar
as nur CM1420 CM4 CM52_11 I100 I102 I105 K1630
und PDP34 PDP70
cc, chmod, cp, echo, ed, grep
ld nur P8000 VENIX XENIX
ln, make, mkdir, mknod, mv
ranlib nur A7150 EC1834 ESER_VMX K1820 K1840 PDP70
und PSU VENIX XENIX
rm, rmdir
scc nur P8000
sed, tar, touch
nur VMX Bitte entfernen Sie `modf.o' aus `/lib/libm.a' und
stellen den Modul nach `/lib/libc.a' und kontrollieren Sie
das Vorhandensein des Moduls `ecvt.o' in `/lib/libc.a'.
nur XENIX Eventuell ist der Modul `doprnt.o' sowohl in der
Bibliothek `/lib/Slibcfp.a' als auch in `/lib/Slibc.a' vor-
handen, bitte entfernen Sie ihn aus `/lib/Slibcfp.a'.
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| E I N T R A G E N V O N N U T Z E R N |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
Durch die Systeminstallation wird das Nutzerverzeichnis
`.../sys/etc/users' automatisch eingerichtet.
Bei der Anpassung sind folgende Punkte zu beachten:
1) Durch die Systeminstallation wurden alle im UNIX-
Nutzerverzeichnis `/etc/passwd' stehenden Nutzer in
das ING_DB 6.3/4 Nutzerverzeichnis uebernommen.
2) Alle nicht erwuenschten Nutzer sind zu streichen.
Die UNIX superuser sind unbedingt aus dem Nutzerver-
zeichnis zu entfernen !
3) Bei den verbleibenden Nutzer koennen Modifikationen
vorgenommen werden. Die folgende Zeile illustriert
einen Eintrag:
reserved:am:24:15:000000:::/tmp/.quel::
Der Wert `am' ist der ING_DB 6.3/4 Nutzerkode, er
muss zwei Bytes lang und eineindeutig sein, er kann
eigenen Vorstellungen entsprechen geaendert werden.
Der Wert `000000' gibt die ING_DB 6.3/4 Berechtigung
des Nutzers `reserved' an. Die Berechtigung kann in
`000001' geaendert werden, um dem Nutzer die Erlaub-
nis zum Erzeugen von Datenbanken zu geben. Der
Nutzer `ing_db' muss die Berechtigung `177777' ein-
getragen haben, um seine Systemfunktionen ausueben zu
koennen.
Der Wert `/tmp/.quel' stellt den Prototyp eines
nutzerspezifischen ING_DB 6.3/4 startup-file dar.
Fuere alle weiter Fragen siehe USERS(FILES).
4) Die neuen ING_DB 6.3/4 Nutzer sollten auf die Aende-
rung ihres profile hingewiesen werden, damit sie die
Datenbankkommandos aufrufen koennen:
- fuer die `sh' das file `.profile' nach folgendem
Muster:
PATH=:/z/ing_db/bin:/bin:/usr/bin:
export PATH
- fuer die `csh' das file `.cshrc' nach folgendem
Muster:
set path=(. /z/ing_db/bin /bin /usr/bin)
setenv PATH ":/z/ing_db/bin:/bin:/usr/bin:"
Soll zu einem spaeteren Zeitpunkt ein neuer Nutzer in das
das Nutzerverzeichnis aufgenommen werden, so kann das
kann das folgendermassen erfolgen:
make adduser USER=login_name
Es werden zuerst alle verwendeten Nutzerkodes ausgegeben
und anschliessend der Eintrag fuer den Nutzer `login'
zur Korrektur angeboten. Nach Beendigung der Korrektur
wird der neue Nutzer automatisch in das Nutzerverzeich-
nis eingefuegt.
##############################################################################
#+--------------------------------------------------------------------------+#
#| |#
#| V E R A E N D E R U N G E N |#
#| |#
#| i m R e l e a s e 4 |#
#| |#
#+--------------------------------------------------------------------------+#
##############################################################################
Anlegen von gemounteten Datenbanken
Eine gemountete Datenbank ist eine Datenbank, die sich
auf einem seperaten Datentraeger befindet, d.h. genau ei-
ne Datenbank auf einem Datentraeger.
Gemountete Datenbanken koennen von allen Nutzern erzeugt
werden.
Das Anlegen wird anhand eines Beispiels dokumentiert:
1) creatdb mount_db
2) destroydb -m mount_db
HINWEIS: Jetzt vom UNIX-superuser einen Datentraeger
in `.../data/base/mount_db' mounten lassen.
3) creatdb -m [weiter Flags moeglich] mount_db
In der Zukunft muss immer darauf geachtet werden, dass
wenn die Datenbank mount_db angesprochen werden soll,
auch der Datentraeger gemountet ist !
Anlegen von entfernten Datenbanken
Entfernte Datenbanken sind Datenbanken, die nicht in dem
vorgesehen Systempfad `.../data/base' angelegt werden
sollen. Das kann sinnvoll sein, wenn z.B. mehrere Daten-
banken auf einem seperaten Datentraeger angelegt werden
sollen.
Entfernte Datenbanken koennen nur vom Systemadministrator
`ing_db' im Auftrag von Nutzern angelegt werden.
Das Anlegen wird anhand eines Beispiels dokumentiert:
Der Nutzer `ausserhalb' moechte die Datenbank `jwd' in
dem directory `/irgendwo/janz' anlegen. Er teilt dem
Systemadministrator `ing_db' mit, dass die Datenbank pri-
vat und mit QRYMOD-Unterstuetzung erzeugt werden soll.
1) login: ing_db
passwd: <wird nicht verraten>
2) cd data/base
3) creatdb -uausserhal -c +q jwd
HINWEIS: In `/irgendwo/janz' koennte ein Datentraeger
gemountet werden.
4) mkdir /irgendwo/janz/weit
chmod 700 /irgendwo/janz/weit
HINWEIS: weit ist ein beliebiger Name.
In `/irgendwo/janz/weit' koennte ein Daten-
traeger gemountet werden.
5) mkdir /irgendwo/janz/weit/weg
chmod 777 /irgendwo/janz/weit/weg
HINWEIS: weg ist ein beliebiger Name.
In `/irgendwo/janz/weit/weg' einen Daten-
traeger zu mounten ist nicht sinnvoll, da
sie dann als mountbare Datenbank im System
haette angelegt werden koennen.
6) mv jwd/* /irgendwo/janz/weit/weg
7) rmdir jwd
8) echo /irgendwo/janz/weit/weg > jwd
chmod 600 jwd
Nach dem die Datenbank entfernt angelegt ist, kann mit
ihr wie mit normalen Datenbanken gearbeit werden. Das
Kommando DESTROYDB(UNIX) traegt entfernt angelegte Daten-
banken korrekt aus. Durch diese Form der Anlage wird der
volle Schutz fuer entfernte Datenbanken garantiert !
COPYDB
COPYDB(UNIX) funktioniert jetzt korrekt.
COPYR
Der file-Name muss kein voller Pfadname mehr sein.
CREATDB
Es gibt jetzt die Moeglichkeit, die Seitengroesse der Da-
tenbank an das Betriebssystem anzupassen. Unterstuetzt
werden Seitengroessen von 512 und 1024 Bytes. Durch die
Angabe des Flags `-1' werden 512'er und durch die Angabe
des Flags `-2' werden 1024'er Datenbanken erzeugt.
Standard sind 1024'er Datenbanken.
Beide Formen koennen parallel in einem System angelegt
werden, ING_DB 6.3/4 verwaltet diesen Unterschied intern.
512'er koennen nicht in 1024'er Datenbanken konvertiert
werden, dazu muessen sie logisch auskopiert und wieder
einkopiert werden (siehe COPYDB(UNIX)).
INDEXR
INDEXR(UNIX) kennt folgende neuen Flags:
-fillfactor:zahl
-minpages:zahl
-maxpages:zahl
-nspeicher_struktur
-tidp
Die Flags entsprechen den Angaben
FILLFACTOR = zahl
MINPAGES = zahl
MAXPAGES = zahl
in der WHERE-Klausel von MODIFY(QUEL) bzw.
-nspeicher_struktur
von ING_DB(UNIX). Die Angabe von `-tidp' dient dazu, den
Indexschluessel eindeutig zu machen. Diese Angabe sollte
aber vermieden werden, da der AMX-Compiler falsche Daten-
zugriffe generiert, ein Problem das zukuenftig abgestellt
werden wird.
ING_DB
Das Kommando ING_DB(UNIX) heisst jetzt QUEL und kennt
folgende neuen Flags:
-Ipfadname
zur Angabe eine \include-files fuer den Terminalmonitor.
Es wird nur das file abgearbeitet, die Eingabe bleibt vom
Terminal.
-lzeichen
zur Angabe eines Zeiches fuer die Umrahmung der Tabellen,
bisher immer `-'.
MANR
Neues shell-Kommando zur Auslistung der online-Dokumenta-
tion (analog \HELP-Kommando des Terminalmonitors).
MODIFYR
MODIFYR(UNIX) kennt folgende neuen Flags:
-fillfactor:zahl
-minpages:zahl
-maxpages:zahl
Die Flags entsprechen den Angaben
FILLFACTOR = zahl
MINPAGES = zahl
MAXPAGES = zahl
in der WHERE-Klausel von MODIFY(QUEL).
REFR
Neues shell-Kommando zur Auslistung der online-Dokumenta-
tion (analog \help-Kommando des Terminalmonitors).
-u:xx
Das alter-ego-Flag in dieser Form ist ersatzlos aus allen
Kommandos gestrichen, es gibt nur noch die Form
-ulogin_name
Demonstrationen
Die Kommandos `demo_dt' und `demo_eng' zur Erstellung der
Demonstrationsdatenbank heissen jetzt `quel_dt' bzw.
`quel_eng'.
Es gibt zusaetzlich die Kommandos `tut_dt' und `tut_eng'
zum automatischen Ablauf der Anfragen, die in der Doku-
mentation `Anwendung der QUEL' beschrieben sind. Zu den
Kommandos muss eine Datenbankname angegeben werden.
Alle Demonstrationen sind in dem directory `.../demo' zu-
sammangefasst, sie koennen mit den Kommandos
cd demo;make
installiert werden. Sollen nur die deutschen Demonstrati-
onen installiert werden, kann dies durch
cd demo;make dt
erreicht werden, entsprechend die englischen durch
cd demo;make eng
Datenbankcompiler AMX
AMX-Programme laufen jetzt im current directory, d.h.
file-Namen muessen nicht laenger als volle Pfadnamen an-
gegeben werden.
Der AMX-Compiler hat den C-Compiler als Untermenge inte-
griert, d.h. die Benutzung von AMX(UNIX) entspricht der
Benutzung von cc(1).
Der AMX-Compiler kennt gegenueber dem C-Compiler keine
neuen Flags, alle Flags sind also Flags von cc(1).
Bei der Erzeugung von Datenbankprogrammen muss immer der
AMX-Compiler anstelle des C-Compilers verwendet werden.
Fuer das Linken eines Programmes muss das Flag `-o name'
zur Angabe des Programmnamens spezifiziert werden, um
das automatische Laden der Laufzeitbibliothek des AMX-
Compilers anzuweisen. Die Laufzeitbibliothek muss unter
dem Namen `.../lib/libamx.a' bereitgestellt werden, darf
also nach der Generierung nicht nach `/usr/lib' bzw.
`/lib' bewegt werden.
Beispiele:
1) Erzeuge Objektmodul aus einer AMX-Quelle
amx -c -O neuheit.x
2) Erzeuge Programm aus einem Objektmodul
amx -o neuheit neuheit.o
3) Erzeuge Programm aus einer AMX-Quelle
amx -O -o neuheit neuheit.x
4) Erzeuge Programm aus einer AMX- und einer C-Quelle
amx -O -o neuheit neuheit.x zusatz.c
5) Erzeuge Objektmodule aus einer AMX- und einer C-Quelle
amx -c -O neuheit.x zusatz.c
oder
amx -c -O neuheit.x;cc -c -O zusatz.c
6) Erzeuge Programm aus Objektmodulen
amx -o neuheit neuheit.o zusatz.o
Natuerlich koennen auch Bibliotheken verarbeitet werden,
bzw. `neuheit.o' kann in eine Bibliothek gestellt werden.
Auf jeden Fall muss mit dem AMX-Compiler gelinkt werden !
Neben dem AMX-Statement
## ing_db [flags] db_name
gibt es jetzt
## shared [flags] db_name
wobei `ing_db' die Datenbank exklusiv (also alleinig) und
`shared' die Datenbank parallel verwendbar eroeffnet.
Das neue AMX-Statement
## tuplelength rel_name c_var_name
stellt in der numerischen C-Variablen `c_var_name' die
Tupellaenge der Relation `rel_name' bereit.
Es gibt die Moeglichkeit Transaktionen (TA) zu formulie-
ren, die nutzerbezogene Datenbankkonsistenzen realisier-
ren. Eine TA wird durch
## use ([+]rel_name {, [+]rel_name})
eingeleitet und durch
## commit
beendet. Das Zeichen `+' gibt an, dass die Relation ge-
aendert werden soll (REPLACE, DELETE oder APPEND). Fehlt
diese Angabe, wird von der Relation gelesen (RETRIEVE).
Folgende Regeln sollten bei der Formulierung von TA's be-
achtet werden:
1) Immer `shared' verwenden, wenn nicht ausdruecklich die
alleinige Verwendung der Datenbank beabsichtigt ist.
2) Immer TA's formulieren, wenn Recherchen ueber mehr als
eine Relation gehen sollen.
3) Alle Aenderungen in TA's einkleiden.
4) Wenn eine TA laeuft, kann keine weiter TA begonnen
werden.
5) Innerhalb einer Recherche (RETRIEVE) kann keine TA be-
gonnen werden, die Recherche muss in die TA einge-
schlossen werden.
6) Innerhalb einer TA kann keine Recherche oder Aenderung
fuer eine Relation, die nicht Bestandteil der TA ist,
gestartet werden. Die Relation muss in die TA einge-
schlossen werden.
ON-LINE DOKUMENTATION:
Unter dem interaktiven ING_DB 6.3/4 Terminalmonitor
gibt es eine neue Form der on-line Hilfe.
Mit dem Kommando `\HELP name' kann eine Hilfe zu dem
Komplex `name' angefordert werden.
Das Kommando `\HELP' liefert eine Liste der verfueg-
baren Hilfen.
Mit dem Kommando `\help name' kann eine Kurzhilfe zu
dem Komplex `name' angefordert werden.
Das Kommando `\help' liefert eine Liste der verfueg-
baren Kurzhilfen.
Die Kommandos lassen sich `\H name' bzw. `\h name'
abkuerzen.
Die on-line Hilfe kann jetzt auch unter der shell in
Anspruch genommen werden (siehe MANR und REFR).
DOKUMENTATION:
Die aufbereitete Dokumentation befindet sich im cat-dir-
ectory, jedes file beinhaltet 20 Druckseiten, jede Seite
umfasst 66 Zeilen. Die Dokumentation ist in drei Teile
untergleidert (doc1.*, doc2.* und doc3.*), hinzu kommt
der online-Manual- (man.*) und der -Refernzteil (ref*).
Die nroff-Quellen stehen im dem directory `doc'.

69
WEGA/contrib/ingres/dbs/q Normal file
View File

@ -0,0 +1,69 @@
Adolph
Albrecht
Anacker
Angelus
Baier
Bauer
Bauschke
Bellmann
Bergholz
Bigalke
Blaha
Boehm
Broese
Buchham
Fast
Fischer
Franke
Gatzka
Glasneck
Gobsch
Goeller
Guenther
Hanscher
Heller
Herden
Hillert
Kloeditz
Koehler
Krause
Kuehn
Kunisch
Laue
Loesche
Loeschner
Luchs
Malzahn
Masser
Meiritz
Meyer
Mittag
Morgenstern
Muehsinger
Mueller
Pietsch
Rademacher
Radtke
Roehring
Roepert
Rudolf
Sachse
Safranek
Schoebel
Schuetze
Schulze
Schwabe
Schwaermer
Siegel
Spiess
Staron
Stoeckner
Strys
Sturm
Swientek
Thierse
Wengel
Wildeck
Witte
Zerche
Zinnecker

761
WEGA/contrib/ingres/dbs/qq Normal file
View File

@ -0,0 +1,761 @@
|
|------------------------------------------
|
| Akademie der Landwirtschaften / Z
| der DDR
| VRS
| Koll. Adolph
| Krausenstr. 38/39
| Berlin
| ------------------------
| 1 0 8 6 DDR
|
|------------------------------------------
|
| Institut fuer Energieversorgung Dresden
| Betrieb des VE K Verbundnetze Energie
| IEV/ED
| Koll. Albrecht
| Zeunerstr. 83a
| Dresden
| ------------------------
| 8 0 2 7 DDR
|
|------------------------------------------
|
| VEB DEUTRANS Internationale Spedition
| Stammbetrieb des VE Kombinat DEUTRANS
| ORZ
| Koll. Anacker
| Otto-Grotewohl-Str. 25
| Berlin
| ------------------------
| 1 0 8 6 DDR
|
|------------------------------------------
|
| MLU Halle
| Martin-Luther-Universitaet
| ORZ
| Koll. Angelus
|
| Halle
| ------------------------
| 4 0 1 0 DDR
|
|------------------------------------------
|
| Hochschule Bernburg
| fuer Land- und Nahrungsgueterwirtschaft
| WB Oekonomie und SBW der NGW
| Dr. Baier
| Mitschurinstr. 28
| Bernburg
| ------------------------
| 4 3 5 1 DDR
|
|------------------------------------------
|
| Ministerium fuer Bauwesen
|
| Zentrale Abteilung Planung und Bilanzierung
| Koll. Bauer
| Scharrenstr. 2-3
| Berlin
| ------------------------
| 1 0 2 6 DDR
|
|------------------------------------------
|
| WIZ der AdW
| Wissenschaftliches Informationszentrum
| ORZ
| Dr. Bauschke
| Schiffbauerdamm 19
| Berlin
| ------------------------
| 1 0 4 0 DDR
|
|------------------------------------------
|
| VEB RPD Dresden
| Robotron-Projekt-Dresden
| E21
| Dr. Bellmann
| Leningrader Str. 9
| Dresden
| ------------------------
| 8 0 1 2 DDR
|
|------------------------------------------
|
| Bergakademie Freiberg
|
| ORZ
| Prof. Dr. sc. techn. Bergholz
| PF 47
| Freiberg (Sachs)
| ------------------------
| 9 2 0 0 DDR
|
|------------------------------------------
|
| VEB BMK Ost
| Betrieb FPT Frankfurt/Oder
| Rechenstelle
| Koll. Bigalke
| Betriebsteil Schoenefeld
| Flughafen Berlin
| ------------------------
| 1 1 8 9 DDR
|
|------------------------------------------
|
| VEB Kraftwerke Luebbenau-Vetschau
|
| TE
| Koll. Blaha
| PSF 17
| Luebbenau-Vetschau
| ------------------------
| 7 5 4 3 DDR
|
|------------------------------------------
|
| TU Dresden
| Technische Universitaet Dresden
| Sektion Elekrotechnik 11, Georgesbau
| Dipl.-Ing. Boehm
| Helmholtzstr. 9
| Dresden
| ------------------------
| 8 0 2 7 DDR
|
|------------------------------------------
|
| VEB BMK / IH Rostock
| KB Forschung - Projektierung - Technolgie
| F / E
| Kolln. Broese
| Rosa - Luxemburg - Str. 16 -18
| Rostock
| ------------------------
| 2 5 0 0 DDR
|
|------------------------------------------
|
| VEB IFA-Motorenwerk Nordhausen
| Betrieb des IFA-Kombinates
| EDV-Projektierung
| Dr. Buchham
| Freiherr-vom-Stein-Str. 30c
| Nordhausen
| ------------------------
| 5 5 0 0 DDR
|
|------------------------------------------
|
| VEB ISOKOND Berlin
| Isolierstoff- und Kondensatorenwerk
| FP
| Koll. Fast
| Lehderstr. 34/35
| Berlin
| ------------------------
| 1 1 2 0 DDR
|
|------------------------------------------
|
| APW/FRZ Dresden
| Akademie der Paedagogischen Wissenschaften
| MP
| Dr. Franke
| Wigardstr. 17
| Dresden
| ------------------------
| 8 0 6 0 DDR
|
|------------------------------------------
|
| LPG Felgentreu
| "Gartenbau"
| ORZ
| Koll. Gatzka
| Kreis Luckenwalde
| Felgentreu
| ------------------------
| 1 7 1 1 DDR
|
|------------------------------------------
|
| AdW / IfH
| Institut fuer Hochenergiephysik
| Abteilung Rechnen
| Dr. Glasneck
| Platanenalle 6
| Zeuthen
| ------------------------
| 1 6 1 5 DDR
|
|------------------------------------------
|
| VEB Backwarenkombinat Halle
|
| ORZ
| Koll. Gobsch
|
| Halle-Neustadt
| ------------------------
| 4 0 9 0 DDR
|
|------------------------------------------
|
| NVA / ZfN
|
| Zentralstelle fuer Nachrichtennetze
| Gen. Oberst Goeller
| PF: 35740
| KOENIGS WUSTERHAUSEN
| ------------------------
| 1 6 0 0 DDR
|
|------------------------------------------
|
| MLU Halle
| Martin-Luther-Universitaet
| Sektion Wirtschaftswissenschaften / WB IV
| Dr. Guenther
| Bildungszentrum
| Halle-Neustadt
| ------------------------
| 4 0 9 0 DDR
|
|------------------------------------------
|
| VEB Stadtwirtschaft Berlin
| SB
| ORZ
| Koll. Guenther
| Adalbertstr. 49
| Berlin
| ------------------------
| 1 0 2 0 DDR
|
|------------------------------------------
|
| VEB Nachrichtenelektronik Magdeburg
| Nachrichtenelektronik
| ORZ
| Koll. Hanscher
| Luebecker Str. 53/59
| Magdeburg
| ------------------------
| 3 0 1 8 DDR
|
|------------------------------------------
|
| VEB ACK Piesteritz
| Agrochechemisches Kombinat
| TM2.1
| Koll. Heller
| Str. der Neuerer 126
| Piesteritz
| ------------------------
| 4 6 0 2 DDR
|
|------------------------------------------
|
| ITU
| Institut fuer technische Untersuchungen
| Aussenstelle Beucha
| Koll. Herden
| Moritz-Nebel-Weg 5
| BEUCHA
| ------------------------
| 7 2 7 2 DDR
|
|------------------------------------------
|
| Kombinat Geodaesie und Kartographie Leipzig
| Forschungszentrum
| FB4
| Koll. Hillert
| Gohliserstr. 4
| Leipzig
| ------------------------
| 7 0 2 2 DDR
|
|------------------------------------------
|
| IHS Koethen
|
| MRT / Rechenzentrum
| Doz. Dr. sc. techn. Kloeditz
| Bernburger Str. 52-57
| Koethen
| ------------------------
| 4 3 7 0 DDR
|
|------------------------------------------
|
| Bezirkskrankenhaus Leipzig
| St. Georg
| Rechenzentrum
| Koll. Koehler
| Str. der DSF 141
| Leipzig
| ------------------------
| 7 0 2 1 DDR
|
|------------------------------------------
|
| ZBO / Osterburg
|
| BO
| Koll. Krause
| Arendseerstr. 3
| Osterburg
| ------------------------
| 3 5 4 0 DDR
|
|------------------------------------------
|
| VEB Zellstoff und Papier Heidenau
| Kombinat
| ORG / EDV
| Koll. Kuehn
| Pirnaer Strasse 31-33, PSF 34
| Heidenau
| ------------------------
| 8 3 1 2 DDR
|
|------------------------------------------
|
| VEB Metallurgieelektronik Leipzig
| im Kombinat Zentraler Industrieanlagenbau
| IRZ
| Koll. Kunisch
| PSF 272, Bosestr. 2
| Leipzig
| ------------------------
| 7 0 0 0 DDR
|
|------------------------------------------
|
| VEB Leuna-Werke Merseburg
| "Walter Ulbricht"
| OEZE
| Koll. Laue
| Bau 1760
| Leuna 3
| ------------------------
| 4 2 2 0 DDR
|
|------------------------------------------
|
| VEB Kombinat Feinkeramik Kahla
| Kombinat Feinkeramik Kahla
| DE
| Koll. Loesche
| Ernst-Thaelmann-Str. 38
| Kahla
| ------------------------
| 6 9 0 6 DDR
|
|------------------------------------------
|
| TH Ilmenau
| Technische Hochschule Ilmenau
| Sektion TBK, WB TJ
| Koll. Loeschner
| Am Ehrenberg
| Ilmenau
| ------------------------
| 6 3 0 0 DDR
|
|------------------------------------------
|
| VEB OAZ Konsumgueterbinnenhandel Rostock
| Organisations- und Abrechnungszentrum
| Direktion
| Koll. Luchs
| Krischanweg
| Rostock
| ------------------------
| 2 5 1 0 DDR
|
|------------------------------------------
|
| VEB Werkzeugmaschinenfabrik Zella-Mehlis
| Werkzeugmaschinenkombinat FRITZ HECKERT
| ODV
| Koll. Malzahn
| Hergeser Weg 1
| Viernau
| ------------------------
| 6 0 5 8 DDR
|
|------------------------------------------
|
| VEB Kontaktbauelemente Luckenwalde
|
| LO
| Koll. Masser
| Mauerstr. 13a
| Luckenwalde
| ------------------------
| 1 7 1 0 DDR
|
|------------------------------------------
|
| VEB Datenverarbeitung LFN Berlin
| Land- Forst- und Nahrungsgueterschaft
| ORZ
| Koll. Meiritz
| Belforter Str. 1-3
| Berlin
| ------------------------
| 1 0 5 5 DDR
|
|------------------------------------------
|
| VEB Plastmaschinenwerk Schwerin
| im VEB Kombinat Umformtechnik Erfurt
| WER
| Koll. Meyer
| Werkstr. 2
| Schwerin
| ------------------------
| 2 7 8 1 DDR
|
|------------------------------------------
|
| VEB Zentrum fuer Forschung und Technik Dresden
| Betrieb des Kombinats Spezialtechnik
| ODV
| Koll. Mittag
| Koenigsbruecker Landstr. PSF 40, Geb. 138
| Dresden
| ------------------------
| 8 0 8 0 DDR
|
|------------------------------------------
|
| VEB EVK Olberhau
| Erzgeb. Volkskunst
| Rechenzentrum
| Koll. Morgenstern
| Jagdweg 1
| OLBERNHAU
| ------------------------
| 9 3 3 2 DDR
|
|------------------------------------------
|
| VE Verkehrskombinat Dresden
| Sitz: Karl-Marx-Platz 4, 8060 Dresden
| Organisations- und Rechenzentrum
| Koll. Muehsinger
| Bamberger Str. 48
| Dresden
| ------------------------
| 8 0 2 7 DDR
|
|------------------------------------------
|
| Kombinat VEB Fahrzeugelektrik Ruhla
| FER Stammbetrieb
| Fachbereich Technologie und Rationalisierung
| Dr. Mueller
| Heinrichstr. 54
| Eisenach
| ------------------------
| 5 9 0 0 DDR
|
|------------------------------------------
|
| VEB Kombinat Oberbekleidung Berlin
| Stammbetrieb VEB Herrenbekleidung FORTSCHRITT
| Zentrum fuer Organisation und Betriebswirtschaft
| Koll. Pietsch
| Zellerscher Weg 24
| Dresden
| ------------------------
| 8 0 2 0 DDR
|
|------------------------------------------
|
| VEB Zuschlagstoffe Frankfurt/Oder
| Sitz Eisenhuettenstadt
| OD
| Koll. Rademacher
| Am Kanal, PF 57
| Eisenhuettenstadt
| ------------------------
| 1 2 2 0 DDR
|
|------------------------------------------
|
| VEB WBK Rostock
| Wohnungsbaukombinat Rostock
| EDV
| Koll. Radtke
| Postfach 68
| Rostock 5
| ------------------------
| 2 5 0 0 DDR
|
|------------------------------------------
|
| VEB Hydraulik Tarthun, Ballenstedt
| BT Ballenstedt
| TA
| Koll. Roehring
| Hohlsteiner Str. 5
| Ballenstedt
| ------------------------
| 4 3 0 3 DDR
|
|------------------------------------------
|
| Ins. f. Hochseefischerei/Fischverarbeitung Rostock
| Rostock
| WB
| Koll. Roepert
| An der Jaegerbaek 2
| Rostock-Marienehe
| ------------------------
| 2 5 1 0 DDR
|
|------------------------------------------
|
| VEB Sattler- und Lederwaren Schwerin
| LEWA
| Rechenstation
| Koll. Rudolf
| Rogahner Str. 11
| Schwerin
| ------------------------
| 2 7 7 0 DDR
|
|------------------------------------------
|
| VEB Werk fuer Technisches Glas Ilmenau
|
| W F C
| Koll. Sachse
| Strasse der DSF 1
| Ilmenau
| ------------------------
| 6 3 0 0 DDR
|
|------------------------------------------
|
| VEB DLK Stendal
| Dienstleistungskombinat
| EDV
| Koll. Safranek
| Vogelstr. 21, PSF 115
| Stendal
| ------------------------
| 3 5 0 0 DDR
|
|------------------------------------------
|
| Deutsche Post / RFZ Berlin
| Rundfunk- u. Fernsehtechnisches Zentralamt
| FVL
| Koll. Schoebel
| Agastrasse
| Berlin
| ------------------------
| 1 1 9 9 DDR
|
|------------------------------------------
|
| Deutsche Post / RFZ Berlin
| Rundfunk- und Fernsehtechnisches Zentralamt
| Funkversorgung
| Koll. Schoebel
| Agastr.
| Berlin
| ------------------------
| 1 1 9 9 DDR
|
|------------------------------------------
|
| Kombinat VEB Chemische Werke Buna
| Direktion fuer Oekonomie
| WZPA
| Dr. Schuetze
| Bau D 14
| Schkopau
| ------------------------
| 4 2 1 2 DDR
|
|------------------------------------------
|
| VEB teltomat Teltow
| Werk fuer Strassenbaumaschinen
| TN
| Koll. Schulze
| Ruhlsdorfer Str.
| Teltow
| ------------------------
| 1 5 3 0 DDR
|
|------------------------------------------
|
| VEB Frischeier- und Broilerproduktion KW
| Betrieb im Kombinat Industrielle Tierproduktion
| EDV / ME
| Koll. Schwabe
| Fuerstenwalder Weg
| Koenigs Wusterhausen, Neue Muehle
| ------------------------
| 1 6 0 1 DDR
|
|------------------------------------------
|
| Institut fuer Sozialistische Betriebswirtschaft
| AdL
| ORZ
| Koll Schwaermer
| August-Bebel-Str. 3
| Stadtroda
| ------------------------
| 6 5 4 0 DDR
|
|------------------------------------------
|
| VEB Energiekombinat Halle
| Bereich Energieabsatz
| A
| Dr. Siegel
| Thaelmannplatz 3
| Halle
| ------------------------
| 4 0 2 0 DDR
|
|------------------------------------------
|
| VEB TGA Halle
| Technische Gebaedeausruestung
| ORZ
| Koll. Spiess
| Boellberger Weg 179
| Halle
| ------------------------
| 4 0 2 0 DDR
|
|------------------------------------------
|
| VE Braunkohlenkombinat Bitterfeld
| Territorialbereich Halle
| ORZ
| Koll. Staron
| Eisenbahnstr. 10
| Halle
| ------------------------
| 4 0 7 3 DDR
|
|------------------------------------------
|
| Kombinat LTI Neuenhagen
| Kombinat Landtechnische Instandsetzung
| Projektierung
| Koll. Strys
| Hildesheimer Str. 15a
| Neuenhagen
| ------------------------
| 1 2 7 2 DDR
|
|------------------------------------------
|
| Institut fuer Landwirtschaftliche I/D Berlin
| Akademie der Landwirtschaften der DDR
| Forschung
| Kolln. Sturm
| Krausenstr. 38/39
| Berlin
| ------------------------
| 1 0 8 6 DDR
|
|------------------------------------------
|
| Kombinat VEB Narva
|
| Abt. O2.2
| Koll. Swientek
| Ehrenbergstr. 11-14
| Berlin
| ------------------------
| 1 0 1 7 DDR
|
|------------------------------------------
|
| KEAW/ZFT
| Zentrum fuer Forschung und Technologie
| WKER
| Koll. Thierse
| Storkower Str. 101
| Berlin
| ------------------------
| 1 0 5 5 DDR
|
|------------------------------------------
|
| WPU Rostock
| Wilhelm-Pieck-Universitaet Rostock
| STE
| Dr. Wengel
| Albert-Einstein-Str. 2
| Rostock
| ------------------------
| 2 5 0 0 DDR
|
|------------------------------------------
|
| VEB Kombinat Landtechnik Rostock
|
| BO/RT
| Koll. Wildeck
| Siewershagen
| Rostock
| ------------------------
| 2 5 5 1 DDR
|
|------------------------------------------
|
| VEB Beschlaege Luckenwalde
| im VEB Kombinat Beschlaege Leipzig
| ORT
| Koll. Witte
| Zinnaer Str. 28a - 32
| Luckenwalde
| ------------------------
| 1 7 1 0 DDR
|
|------------------------------------------
|
| VEB Elektronische Bauelemente Teltow
|
| OC 1
| Koll. Zerche
| Ernst-Thaelmann-Str. 10
| Teltow
| ------------------------
| 1 5 3 0 DDR
|
|------------------------------------------
|
| VEB Energiekombinat Berlin
| Betriebsteil Anlagenbau
| I1-PM
| Koll. Zinnecker
| Littenstr. 109
| Berlin
| ------------------------
| 1 0 2 6 DDR
|
|------------------------------------------