FREIGABEMITTEILUNG SINIX V5.22 Stand: Mai 1990 Inhaltsverzeichnis 1 Allgemeines 1.1 Bestellung 1.2 Auslieferung 1.3 Dokumentation 1.3.1 Minimaldokumentation 1.3.2 Dokumentationspaket 2 Technische Hinweise 2.1 Ressourcenbedarf 2.1.1 Hauptspeicherbedarf von SINIX V5.22 2.1.2 Maximale Anzahl anschliessbarer Bildschirme 2.2 Software-Konfiguration 2.3 Produkt-Installation 2.3.1 Allgemeine Hinweise 2.3.2 Installation MX500 2.3.2.1 Installation von SINIX V5.22 auf is-Platte 2.3.2.2 Installation von SINIX V5.22 auf xp-Platte 2.3.2.3 Installation von SINIX V5.22 auf sd-Platte (nur MX500-20 und MX500-70) 2.3.2.4 Installation von SINIX auf einer anderen als der ersten Platte 2.3.2.5 Massnahmen vor und nach einem Plattencrash 2.3.3 Installation MX300 2.3.3.1 Spezielle Hinweise fuer 9733 2.3.3.2 Inbetriebnahme vorinstallierter Platten 2.3.3.3 Neuinstallation 2.3.4 Installation der Kassette SINIXK 2.3.5 Installation der sie-Ablaufumgebung 2.3.6 Installation des System Development Toolkit (SDT) 2.3.7 Installation der internationalisierten Datenbasen 2.3.8 Konfigurierte Swap-Bereiche nach der Installation 2.3.9 Nachtraegliche Software-Installation von der Systemkassette 2.3.10 Wiederholte Installation von SINIX V5.22 2.3.11 Installation von zusaetzlichen Software-Produkten 2.3.12 Tuningmassnahmen 2.4 Produkt-Einsatz 2.5 Entfallene Funktionen 2.6 Inkompatibilitaeten 2.7 Einschraenkungen 2.7.1 Online-Dokumentation 2.7.2 Kernel-Meldungen auf der Konsole 2.7.3 Einsatz des Dienstprogramms /etc/addbad 2.7.4 Kommando sendmail 2.7.5 Kommando login 2.7.6 Kommando ps 2.7.7 Kommando cpio 2.7.8 Modemfaehige Schnittstelle V24 2.7.9 Bedienung des Magnetbandkassettenlaufwerks Video-8 mittels mt-Kommando 2.8 Verhalten im Fehlerfall 3 Software-Erweiterungen 3.1 Bediensystem 3.2 Virtuelles Plattensubsystem (VPSS) 3.3 Meldungsdateien fuer internationalisierte Kommandos 3.4 Kommandos 3.5 Systemdateien 4 Hardware 4.1 Grafik-Bildschirm 4.2 8-Bit-Terminal 4.3 CPU-Baugruppen (MX500/MX300) 4.4 E/A-Baugruppen 4.5 TACSI (Terminal Attachment Concept of SINIX) 4.6 Hauptspeicher 4.7 Festplatten 4.7.1 MX500 4.7.2 MX300 4.8 5 1/4 Zoll Diskettenlaufwerk 4.9 Magnetbandkassettenstreamer 4.9.1 Laufwerkstypen 4.9.2 Zugelassene Magnetband-Kassetten 4.10 1/2 Zoll Magnetbandgeraet FS1000/FS2000 4.11 Magnetbandkassettenlaufwerk 2,3 Gbyte (Video-8) (nicht am MX300 -05) 4.12 DUE-Baugruppen 4.13 Ethernet-Prozessor 5 Das Spoolsystem 6 COLLAGE 7 Das C-Entwicklungssystem 1 Allgemeines Hiermit wird das Betriebssystem SINIX V5.22 fuer die Rech- ner MX500, MX300 und 9733 freigegeben. SINIX V5.22 ist auf allen Modellen der oben angegebenen Rechner ablauffaehig. Die Freigabemitteilung enthaelt eine Zusammenstellung aller wesentlichen Informationen zur vorliegenden Version 5.22 von SINIX. Mit SINIX V5.22 ist die Kompatibilitaet zum X- OPEN Portability Guide III erreicht. Wird nicht gesondert darauf hingewiesen, gelten die Infor- mationen fuer alle Rechner. Der Inhalt dieser Freigabemitteilung entspricht dem Frei- gabestand 5/90. Es stehen folgende Software-Liefereinheiten zur Verfuegung: MX500 SINIX-UP-F1 Update von V5.21 auf V5.22 (1-16 Benutzer) SINIX-UP-F3 Update von V5.21 auf V5.22 (1-32 Benutzer) SINIX-UP-F5 Update von V5.21 auf V5.22 (1-64 Benutzer) SINIX-F1 SINIX-Basissystem V5.22 (1-16 Benutzer) SINIX-F2 SINIX-Hochruestsatz fuer 17 bis 32 Benutzer SINIX-F3 SINIX-Basissystem V5.22 (1-32 Benutzer) SINIX-F4 SINIX-Hochruestsatz fuer 33 bis 64 Benutzer SINIX-F5 SINIX-Basissystem V5.22 (1-64 Benutzer) SINIX-F6 SINIX-Hochruestsatz fuer 65 bis 128 Benutzer SINIX-F7 SINIX-Basissystem V5.22 (1-128 Benutzer) MX300/9733 SINIX-H1 SINIX-Basissystem V5.22 (1-16 Benutzer) SINIX-UP-H1 Update von V5.21 auf V5.22 (1-16 Benutzer) SINIX-H2 SINIX-Hochruestsatz fuer 17 bis 32 Benutzer SINIX-H3 SINIX-Basissystem V5.22 (1-16 Benutzer) SINIX-UP-H3 Update von V5.21 auf V5.22 (1-32 Benutzer) Zusaetzlich zur gewuenschten Software-Liefereinheit muss eine Liefereinheit der Minimaldokumentation (Messagefiles) und ein Dokumentationspaket bestellt werden! Die Auflistung der verfuegbaren Liefereinheiten und der darin enthaltenen Manuale finden Sie im Kapitel 1.3. 1.1 Bestellung SINIX Version 5.22 kann ueber Ihre zustaendige Vertriebsge- sellschaft bezogen werden. Zu jeder Software-Liefereinheit muss eine Liefereinheit der Minimaldokumentation (Messagefiles) bestellt werden, um die Inbetriebnahme des Systems sowie seine Verwendung als Ablaufsystem zu ermoeglichen. Weiterfuehrende Dokumentation ist in den getrennt zu bestellenden Dokumentationspaketen enthalten. Es gelten die allgemeinen Bedingungen zum Vertrag ueber die Nutzung und Betreuung von Softwareprodukten. Die Liefereinheit ist ein Lizenzprodukt. Die Lizenznummer wird durch Installation der Diskette K.DISK (KEY-Diskette) ins System uebernommen. Dieses Produkt darf nur auf dem Ge- raet eingesetzt werden, fuer das es gekauft wurde. 1.2 Auslieferung MX500 Das Betriebssystem SINIX Version 5.22 wird auf 3 Magnet- bandkassetten (SINIX3, SINIX5, und SIE2.1) plus KEY-Dis- kette (K.DISK) ausgeliefert. Bei Update-Versionen entfaellt die KEY-Diskette, da sie von der Vorgaengerversion uebernom- men werden kann. Lieferumfang: Kassetten SINIX3/SINIX5: System V Environment (X/OPEN Umgebung von SINIX V5.22) CES Environment (C-Entwicklungs-System V5.22) COLLAGE (COLLAGE-Laufzeitsystem V3.0) COLFACE (COLLAGE-Bediensystem) Games (Spiele mit englischer Oberflaeche) SDT (System-Development-Toolkit) Kassette SIE2.1: SINIX 2.1 Environment (SINIX V2.1 Umgebung von V5.22) MX300/9733 Die deutschsprachige Variante des Betriebssystems SINIX Version 5.22 ist bereits bei Lieferung auf Ihrer MX300 bzw. Ihrer 9733 installiert. Das Betriebssystem wird mit der beigefuegten KEY-Diskette aktiviert. Eine andere Landessprache fuer das Standardmenuesystem (alte sie-Ablaufumgebung) kann durch Installation der Kassette SIE2.1 in der betreffenden Landessprache eingestellt wer- den. Die englischsprachige Oberflaeche erhalten Sie, wenn Sie beim Installieren der Kassette SIE2.1 die englische Bedienerfuehrung einlesen und die Variable LANG auf den Wert En_EN.646 setzen. MOTIF ist auf der 9733 nicht vorinstalliert und muss sofort nach der Installation des Grundsystems installiert werden. Das auf der Festplatte installierte System Ihrer MX300 bzw. Ihrer 9733 enthaelt folgende Archive: System V Environment (X/OPEN Umgebung) SINIX 2.1 Environment (SINIX 2.1 Umgebung/sie-Universum) Systemverwalterumgebung Zudem sind auf allen Maschinen ausser der MX300-05 folgende Archive installiert: System V Includes (Files fuer C-Entwicklung mit CES V5.2) CES Environment (C-Entwicklungs-System V5.2) MX300-05 Der Kern der MX300-05 enthaelt Einschraenkungen in der Kon- figuration. Das Betriebssystem der MX300-05 wird nur auf Platte, nicht aber auf Disketten oder Kassetten ausgeliefert. Fuer den Wartungstechniker wird ein Backup-Medium, bestehend aus 2 Disketten und 2 Kassetten, zur Verfuegung gestellt. Daher trifft nachfolgendes nicht auf die MX300-05 zu. Fuer Neuinstallationen wird SINIX Version 5.22 auf 2 Kas- setten (SINIX2, SIE2.1) und 5 Disketten (SINIX0, SINIH0, SINIC0, SINIX1, K.DISK) ausgeliefert. Lieferumfang: Kassette SINIX2: System V Environment (X/OPEN Umgebung von SINIX 5.2) CES Environment (C-Entwicklungs-System V5.2) Miscellaneous files (Spezielle Tools) COLLAGE (Runtimesystem V3.0) Games (Spiele mit englischer Oberflaeche) Kassette SIE2.1: SINIX V2.1 Environment (SINIX V2.1 Umgebung von SINIX V5.2) 1.3 Dokumentation Zur Installation und zum Betrieb von SINIX V5.22 ist die Minimaldokumentation erforderlich. Sie ist im Paket SINIX- SPR-xx (Message Files) enthalten. Weiterfuehrende Dokumen- tation finden Sie im Dokumentationspaket SINIX-DOC-xx. Pro Paket stehen mindestens zwei Liefereinheiten zur Ver- fuegung. 1.3.1 Minimaldokumentation SINIX-SPR-D V5.22 deutsche Minimaldokumentation SINIX-SPR-GB V5.22 englische Minimaldokumentation Folgende Manuale gehoeren zum Lieferumfang der Minimaldoku- mentation: Bestellnummer Betriebsanleitung MX500 U5006-J-Z95-2 Betriebsanl. MX300 und 9733 U3905-J-Z95-3 SINIX Systemverwaltung V5.22 U3904-J-Z95-4 Freigabemitteilung SINIX V5.22 Meldungsdateien fuer internationalisierte Kommandos SINIX V5.22 enthaelt standardmaessig sowohl die deutschen als auch die englischen Meldungsdateien fuer die internatio- nalisierten Kommandos. Fuer alle anderen Sprachvarianten sind die entsprechenden Meldungsdateien (soweit vorhanden) im entsprechenden Paket der Message-Files enthalten: Message-Files SINIX-SPR- 1.3.2 Dokumentationspaket SINIX-DOC-D V5.22 deutsche Dokumentation SINIX-DOC-GB V5.22 englische Dokumentation Folgende Manuale gehoeren zum Lieferumfang des Dokumenta- tionspakets: Bestellnummer SINIX V5.22 Kommandos, Teil 1 U5453-J-Z95-1 SINIX V5.22 Kommandos, Teil 2 U5454-J-Z95-1 SINIX V5.22 Kommandos, Teil 3 U5455-J-Z95-1 SINIX V5.22 Kommandos, Nachtrag Teil 1 U5453-J1-Z95-2 SINIX V5.22 Kommandos, Nachtrag Teil 2 U5454-J1-Z95-2 SINIX V5.22 Kommandos, Nachtrag Teil 3 U5455-J1-Z95-2 C-Entwicklungssystem, Teil 1 U3899-J-Z95-3 C-Entwicklungssystem, Teil 2 U3900-J-Z95-3 SINIX-SPOOL Benutzerhandbuch U5650-J-Z95-1 COLLAGE Bediensystem Benutzerhandbuch U5995-J-Z95-1 inkl. Kurzbeschreibung U6007-J-Z95-1 COLLAGE Bedienen, Verwalten, Programmieren U3004-J-Z95-4 Nachtrag zu COLLAGE Bedienen U3004-J1-Z95-5 SINIX-Systemsicherheit U5069-J-Z95-1 SINIX Buch1 U3201-J-Z95-1 SINIX Buch2 U3202-J-Z95-1 Nachtrag zu SINIX Buch2 U3202-J1-Z95-2 Tastaturstreifen fuer ced U2632-J-Z98-1 Tastaturstreifen fuer COLLAGE (97801) U5134-J-Z98-1 Da der MX300-05 ohne CES ausgeliefert wird, entfallen bei dieser Maschine auch die CES-Manuale. Das Kapitel Systemverwaltung im SINIX Buch2 ist nicht mehr gueltig; es wurde ersetzt durch das Kapitel Bediensystem im Systemverwalterhandbuch! Bei Bedarf koennen Sie die Online-Dokumentation bei Ihrer zustaendigen Zweigniederlassung schriftlich anfordern. Fuer den Einsatz von Peripherie-Geraeten sind die entspre- chenden Hardware-Manuale erforderlich. Ab SINIX V5.22 gehoert zum Lieferumfang des Betriebssystems eine Diskette README. Die Diskette enthaelt diese Freigabe- mitteilung im ASCII-Format ohne Steuerzeichen. Die Kapitel ueber das Spoolsystem, das C-Entwicklungssystem und zu COL- LAGE sind nur auf der README-Diskette enthalten. Der Inhalt der Diskette README kann ueber die Prozedur /etc/superinstall eingelesen werden. Die Installationspro- zedur hinterlegt im Dateiverzeichnis /usr/readme/sinix die Datei fgm00. 2 Technische Hinweise Auf SINIX Version 5.22 koennen unter Beachtung bestimmter Einschraenkungen die auf anderen SINIX-Versionen erstellten Programme im Binaerformat portiert werden (vgl. 2.6). Neue und erweiterte Software-Funktionen werden im Kapitel 3 dargestellt. 2.1 Ressourcenbedarf 2.1.1 Hauptspeicherbedarf von SINIX V5.22 Der Hauptspeicherbedarf des Betriebssystems SINIX V5.22 ist abhaengig vom Hauptspeicherausbau und laesst sich berech- nen aus der Differenz der Groessen real mem minus avail mem, die beim Hochfahren des Systems ausgegeben werden. 2.1.2 Maximale Anzahl anschliessbarer Bildschirme Die Anzahl der simultan betreibbaren Bildschirme haengt sehr stark vom Hauptspeicherbedarf, der I/O-Last und dem Programmaufbau ab und muss daher auf die Gegebenheiten des einzelnen Anwenders abgestimmt werden. Unter Umstaenden koennen unter Alpha-COLLAGE nur noch die Haelfte der sonst mit der entsprechenden Anwendung betreibbaren Bildschirmarbeitsplaetze performant eingesetzt werden. Ohne Einsatz von Alpha-COLLAGE berechnet sich die Anzahl der Grafik- und Alpha-Bildschirme wie folgt: Die Summe der Anzahl alphanumerischer Bildschirme + 1,5 * Anzahl grafischer Bildschirme muss je E/A-Board <= 4 sein Arbeitsspeicherbedarf beim Einsatz von HIT unter Alpha- COLLAGE: einmaliger Anteil: 5210 Bytes Anteil pro Terminal: 810 Bytes 2.2 Software-Konfiguration Mit der Installation von SINIX Version 5.22 stehen auf Ih- rem System drei Ablauf-Umgebungen zur Verfuegung: Kommandos in der xopen-Ablaufumgebung: Das xopen-Universum bietet Ihnen eine zu X/OPEN Portabili- ty Guide III kompatible Ablaufumgebung. Dies ist weitge- hend die Programmierumgebung nach der "UNIX System V In- terface Definition" (UNIX ist ein eingetragenes Warenzei- chen von AT&T). Kommandos in der sie-Ablaufumgebung: Dies ist die SINIX V2.1-Umgebung. Vorsicht: Die sie-Ablaufumgebung enthaelt keine Entwick- lungsumgebung mehr und muss separat von der bei- liegenden Magnetbandkassette SIE2.1 installiert werden! Kommandos zur Systemadministration: Die Systemverwalterkommandos sind systemspezifisch und un- terscheiden sich z.T. von denen anderer SINIX-Versionen. Alle Systemverwalterkommandos finden Sie im Systemver- walterhandbuch beschrieben. Meldungen dieser Kommandos werden in englischer Sprache ausgegeben. Alle weiteren Kommandos oder Systemdateien, die weder im Systemverwalterhandbuch beschrieben sind noch zu den Kom- mandos des sie- bzw. xopen-Universums gehoeren, sind als Zu- satz zum SINIX V5.22 Betriebssystem zu betrachten, fuer den keine Wartung uebernommen wird. Das C-Entwicklungssystem fuer das xopen-Universum ist in die Liefereinheit SINIX Version 5.22 integriert. Das C-Entwicklungssystem der SINIX V2.1 (sie-Universum) entfaellt. Durch Einsatz des Softwareprodukts DFS werden verteilte Dateisysteme unterstuetzt. DFS erfordert auf dem MX500 den Einsatz eines SCED-Boards mit Firmware Revision 43. Genaue Information hierueber erhalten Sie bei Ihrer zustaendigen Vertriebsgesellschaft. SINIX V5.22 unterstuetzt in Verbindung mit dem Softwarepro- dukt COLLAGE Grafik auf Grafik- und Alpha-Bildschirmen. Das COLLAGE-Laufzeitsystem ist Bestandteil der SINIX V5.22. 2.3 Produkt-Installation 2.3.1 Allgemeine Hinweise Saemtliche, die Konfiguration von Bildschirmen und Druckern betreffenden Dateien duerfen nicht von aelteren SINIX-Ver- sionen uebernommen werden, da sich die Verwaltung der kon- figurierten Geraete grundlegend geaendert hat. Es muessen in jedem Fall alle Geraete neu konfiguriert werden. Die Dateien /etc/passwd und /etc/group duerfen ebenfalls nicht von alten Sicherungsstaenden ueberschrieben werden, da sich deren Inhalt teilweise geaendert hat. Fuer den Fall, dass alte Benutzerkennungen uebernommen werden sollen, duerfen diese nur von Hand in die neue /etc/passwd kopiert werden; analog muss bei den Gruppeneintraegen vorgegangen werden. Aus Kompatibilitaetsgruenden werden auch noch die Dateien login.dat und deauth.dat im Dateiverzeichnis /usr/sie_root/usr/menus/app/develop und das Dateiverzeich- nis /usr/admin/.benutzer gepflegt; diese Dateien muessen dann also von der vorherigen Installation uebernommen werden. Die Datei /etc/rc.local darf nicht von einer aelteren SI- NIX-Version uebernommen werden, da sich deren Inhalt geaen- dert hat. Sie koennen keine Daten aus dem Standardmenuesystem der Ver- sion SINIX V5.21 uebernehmen, da dies zu Inkonsistenzen mit dem COLLAGE-Bediensystem fuehrt. Sie sollten den vom System benutzten usr-Bereich und den von den Benutzerdaten belegten Bereich moeglichst auf ver- schiedenen Dateisystemen auf getrennten Platten halten. Ausserdem sollten root- und usr-Bereich auf getrennten Platten liegen. Die Groesse des gesamten Swap-Bereichs sollte zwischen 2 und 5 mal so gross gewaehlt werden wie die Groesse des Haupt- speichers. Die guenstigste Groesse des Swap-Bereichs ist die ca. 4-fache Groesse des Hauptspeichers. Der Swap-Bereich, der zur Aufnahme des Hauptspeicherabzugs im Falle eines Systemabsturzes benutzt wird, muss minde- stens die Groesse des Hauptspeichers plus 4 MB haben. Fuer den Fall, dass dies nicht moeglich ist, kann man auf einer MX500 das bsu-Kommando dump mit entsprechenden Schaltern veranlassen, einen Hauptspeicherabzug auf mehrere Geraete zu verteilen (vgl. Systemverwalterhandbuch). Wichtiger Hinweis zum Einrichten von Dateisystemen Standardmaessig wird beim Einrichten eines Dateisystems mittels /etc/newfs pro 2 KB ein Inode eingerichtet, d.h., die maximale Anzahl der Inodes in einem Dateisystem richtet sich nach der Groesse des Dateisystems. Das Problem hierbei ist, dass der Systemkern in der sie-Ablaufumgebung nur maximal 65535 Inodes pro Dateisystem verwalten kann, die Anzahl der von /etc/newfs angelegten Inodes jedoch bei Verwendung eines sehr grossen Plattenbereichs diesen Wert uebersteigt. An dieser Stelle muss der Anwender dafuer sorgen, dass es nicht zu Problemen kommt; dazu ist der /etc/newfs mit dem Schalter -i aufzurufen, der angibt, fuer wieviele KB jeweils ein Inode angelegt werden soll. Beispiel: /etc/newfs /dev/xp5c liefert u.a. : 549400 sectors in 820 cylinders of 10 tracks, 67 sectors 281.3Mb in 52 cyl groups (16 c/g, 5.49Mb/g, 2048 i/g) Multipliziert man die Anzahl der Zylindergruppen mit der Anzahl der Inodes pro Zylindergruppe, so erhaelt man die Anzahl der angelegten Inodes (hier: 52 * 2048 = 106496). Da dieser Wert zu gross ist (>65535), waehlt man dann z.B. 5 KB fuer einen Inode: /etc/newfs -i 5120 /dev/xp5c 549400 sectors in 820 cylinders of 10 tracks, 67 sectors 281.3Mb in 52 cyl groups (16 c/g, 5.49Mb/g, 1024 i/g) Jetzt liefert die Multiplikation 52 * 1024 = 53248; da dieser Wert kleiner ist als 65535, wird die Anzahl der ma- ximal moeglichen Inodes fuer den Kern im sie-Universum nicht mehr ueberschritten. Fuer dieses Beispiel wurde die c-Partition einer 300 MB Platte eines MX500 verwendet, d.h. die Werte fuer andere Bereiche, deren Groesse Sie selbst bestimmen koennen, werden sich von denen des Beispiels unterscheiden. Maximale Partitiongroesse Die maximale Partitiongroesse einer Festplatte ist abhaengig von der verwendeten MMU. MX300/9733 (MMU 32382) : 524287 KB MX500 -20/-40/-60/-70/-80 (MMU 32082) : 4194303 KB MX500 -75/-85 (MMU 32382) : 524287 KB 2.3.2 Installation MX500 SINIX V5.22 kann nur auf einer der ersten 8 Festplatten installiert werden! Bitte ueberpruefen Sie vor der Installation den Typ der Prozessoren, mit denen Ihre MX500 ausgestattet ist. Fuer die Prozessoren NS32532 verwenden Sie dann zur Installa- tion von SINIX V5.22 das Band SINIX5. Fuer die Prozessoren NS32032 und NS32332 verwenden Sie bitte das Band SINIX3! 4 KB Dateisystem auf einer 600 MB Platte In einem Dateisystem duerfen pro Zylindergruppe nicht mehr als 2048 Inodes eingerichtet werden und bei einer Dateisystem-Blockgroesse von 8 KB muessen mindestens 16 Zy- linder (oder ein Vielfaches davon) zu einer Zylindergruppe zusammengefasst werden. Dies hat zur Folge, dass fuer einen relativ grossen Plattenbereich nur verhaeltnismaessig wenige Inodes zur Verfuegung stehen, d.h. die Partition waere bei einer Dateigroesse zwischen 6 und 7 KB optimal ausgenutzt. Bei Anwendern, die z.B. ueberwiegend mit HIT arbeiten, also sehr viele sehr kleine Dateien zu verwalten haben, kann die Plattenkapazitaet nur zur Haelfte oder weniger ausge- nutzt werden. Fuer diesen Fall wurde in SINIX V5.22 Abhilfe geschaffen, indem dem Anwender ermoeglicht wird, vor der Systeminstal- lation mittels des Programms installsys festzulegen, ob er mit einem 4 KB oder einem 8 KB Dateisystem arbeiten moech- te. Bei Verwendung eines 4 KB Dateisystems kann naemlich mit 8 Zylindern pro Zylindergruppe gearbeitet werden, wo- durch sich die Anzahl der Inodes ungefaehr verdoppelt. Einrichten des root-Dateisytems Auf einer 8 Zoll Festplatte mit einer Kapazitaet von 600 MB sollte grundsaetzlich fuer das root-Dateisystem die Block- groesse 4 KB gewaehlt werden, da sonst die Anzahl der ver- fuegbaren Inodes im Dateisystem nicht gross genug ist. Einrichten des usr-Dateisystems Falls die Anzahl der Inodes auf der Partition, auf der Sie den usr-Bereich einrichten wollen, groesser als 65535 wird, sollten Sie bei der Systeminstallation vor dem Aufruf der Prozedur restore.more die hiervon implizit aufgerufene Prozedur restore.more.sh dahingehend abaendern, dass Sie in den Aufruf des Kommandos /etc/newfs den Schalter -i mit dem entsprechenden Wert einfuegen. Dies funktioniert zum Zeitpunkt der Installation nur mit dem Editor ed, da keiner der anderen Editoren zu diesem Zeitpunkt verfuegbar ist. Folgende Kommandofolge bewirkt die notwendige Aen- derung: # cd /etc # ed restore.more.sh . . g/newfs/s/newfs/newfs -i xxxx/p w q # cd / Hierbei ist xxxx durch einen geeigneten Wert (s.o.) zu er- setzen. Anschliessend wird die Prozedur restore.more gestartet, wie in der Installationsanleitung beschrieben. Vor der eigentlichen Installation des Betriebssystems SINIX V5.22 haben Sie mittels des Programms installsys die Moeglichkeit, die Aufteilung aller vorhandenen Platten frei festzulegen. Das Programm installsys erwartet die Platten- namen in "Monitornotation" (z.B. xp(0,0) fuer die erste xp- Platte). Die Formel fuer die Berechnung der einzelnen Plat- ten lautet fuer Platten im Multibus: 512 * Multibusadapternr. + 8 * Controllernr. + Lauf- werksnr. und fuer Platten am SCSI-Bus (sd-Platten): 8 * target adapter nr. + Laufwerksnr. . Fuer SINIX V5.22 ist das Standalone-Dienstprogramm install- sys dahingehend erweitert worden, dass jetzt bei der Fest- legung der Plattenaufteilung fuer jede Partition festgelegt werden kann, ob sie ein 4 KB Dateisystem oder ein 8 KB Da- teisystem aufnehmen soll. Dies ist vor allem fuer die root- Partition einer 8 Zoll Platte mit 600 MB notwendig (s.o.). 2.3.2.1 Installation von SINIX V5.22 auf is-Platte Das Promptzeichen des Monitors ist der *. *b 0 ts(32,4) Laden des Standalone-Dienstpro- gramms installsys Mem: x.x M chk ........ mem ........ test . . . Eroeffnungsbild des Programms in- . stallsys device? is(0,2) Mit Hilfe des Programms installsys muss vor der eigentlichen Installa- tion die Plattenaufteilung festge- legt werden. Dabei muss fuer den ro- ot-Bereich mindestens der Stan- dardwert von 12 MB und fuer den Swap-Bereich der Standardwert von 36 MB verwendet werden. Die Min- destgroesse des Swap-Bereichs sollte im allgemeinen die Groesse des Hauptspeichers plus 4 MB betragen. Die weitere Aufteilung der Platte ist frei waehlbar, wobei jedoch darauf geachtet werden muss, dass ein Plattenbereich (e, f, g oder h) gross genug fuer die Installation des /usr-Bereichs ist. Nachdem die Aenderungen fuer die erste Platte in das Label geschrieben wurden, koennten Sie, wenn Sie auf die Fra- ge "Another disk?" mit "y" antwor- ten, die Aufteilung weiterer Plat- ten veraendern. Antworten Sie hier mit "n", so wird mit der Installa- tion des Miniroot-Systems in der Partition b der ersten Platte be- gonnen. Input file? ts(32,13) Das Miniroot-Filesystem ist die Datei Nr. 13 auf dem Installa- tionsband. Output file? is(0,1) is(0,1) bezeichnet die Swap-Parti- tion der ersten Platte. Last chance.... RETURN Jetzt kopiert installsys die Daten und berechnet eine Pruefsumme. >>> EOF Pass 1, count "xxxxx", checksum "xxxx", doing verify Pass 2, count "xxxxx", checksum "xxxx" Done exit 0 Das Programm installsys ist beendet. * b 3 ts(32,0) Laden des Standalone-Dienstpro- . gramms boot. Dies ist Datei Nr. 0 . auf dem Installationsband . Boot :is(0,1)gendynix is0* Hiermit wird der generische Kern des Betriebssystems von der Platte in den Hauptspeicher geladen. Der * nach is0 sagt gendynix, dass ein Teil der Partition b der Platte fuer das Miniroot- Dateisystem ver- wendet werden soll und ein Teil als swap-Partition. Anschliessend werden eine Reihe von Meldungen ueber die au- tomatische Konfiguration des Kerns auf der Konsole ausge- geben. Zum Schluss gibt SINIX V5.22 den Prompt fuer den Su- peruser aus (#). Sie arbeiten jetzt mit einer abgemagerten Version des Be- triebssystems SINIX V5.22. Als naechstes muessen Sie mit Hilfe des Programms restore.root ein Dateisystem in der Partition a der 1. Platte erzeugen und das Standard-root- Dateisystem dorthin kopieren. # restore.root . . . Build the root file system disk name for root? (e.g. sd0 or xp0 or is0) is0 restore.root gibt folgende Meldung an der Konsole aus: Press the AUTOBOOT button so an automatic reboot can happen. Die Prozedur restore.root richtet in der Partition a der oben angegebenen Platte ein neues Dateisystem ein und ko- piert das root-Dateisystem vom Band dorthin. Anschliessend wird die abgemagerte Version von SINIX V5.22 beendet und wenn die Taste AUTOBOOT gedrueckt ist wird automatisch die Standardversion von SINIX V5.22 von der Partition a der Platte geladen. Mit Hilfe der Prozedur restore.more koennen Sie jetzt das usr-Dateisystem erstellen und die entsprechenden Program- me, Kommandos, etc. vom Band kopieren. Bevor Sie dies tun, sollten Sie mit /etc/newfs ein Datei- system auf der Plattenpartition einrichten, die Sie fuer den usr-Bereich verwenden wollen, und dabei ueberpruefen, ob die Anzahl der Inodes unter der Grenze von 65535 bleibt (vgl. Kapitel "Wichtiger Hinweis zum Einrichten von Datei- systemen"). # restore.more restore /usr ?(n/y) y disk name for /usr? (e.g. sd0 or xp0 or is0) is1 which partition for /usr? (e, f, g or h) h Die Prozedur restore.more fragt, auf welcher Platte das usr-Dateisystem erzeugt werden soll. Hier sollte eine an- dere als die erste Platte angegeben werden. Im Anschluss an diese Fragen erhalten Sie die Moeglichkeit festzulegen, welche Dateien und Dateiverzeichnisse Sie auf die Platte kopieren wollen. restore /usr/games ? (n/y) y restore CES Environment ? y restore.more erzeugt in der Partition h der Platte ein Da- teisystem und kopiert das usr-Dateisystem und die Ablauf- umgebung xopen dorthin. Zusaetzlich koennen Sie entscheiden, ob Sie auch die C-Entwicklungsumgebung installieren moechten. Nach der Installation von SINIX V5.22 muessen Sie das System herunterfahren. Beim erneuten Hochfahren wird dann die mitgelieferte KEY-Diskette (K.DISK) mit der Meldung "Please install your SINIX authorization file" angefor- dert, mit der Ihr SINIX-Betriebssystem einsatzbereit ge- macht wird. Auf Ihrem MX500 ist jetzt das Betriebssystem SINIX V5.22 komplett installiert. Das Eintragen von Benutzerkennungen und die Konfigurierung von Terminals und Druckern erfolgt wie gewohnt unter der Kennung admin, jedoch ueber das neue Bediensystem. Eine Bedienungsanleitung hierzu finden Sie im Systemverwalter- handbuch. Zusaetzlich zu mountende Dateisysteme tragen Sie bitte von Hand in die Datei /etc/fstab ein. 2.3.2.2 Installation von SINIX V5.22 auf xp-Platte Das Promptzeichen des Monitors ist der *. *b 0 ts(32,4) Laden des Standalone-Dienstpro- gramms installsys Mem: x.x M chk ........ mem ........ test . . . Eroeffnungsbild des Programms in- . stallsys device? xp(0,2) Mit Hilfe des Programms installsys muss vor der eigentlichen Installa- tion die Plattenaufteilung festge- legt werden. Dabei muss fuer den ro- ot-Bereich mindestens der Stan- dardwert von 12 MB und fuer den Swap-Bereich der Standardwert von 36 MB verwendet werden. Die Min- destgroesse des Swap-Bereichs sollte im allgemeinen die Groesse des Hauptspeichers plus 4 MB betragen. Die weitere Aufteilung der Platte ist frei waehlbar, wobei jedoch darauf geachtet werden muss, dass ein Plattenbereich (e, f, g oder h) gross genug fuer die Installation des /usr-Bereichs ist. Nachdem die Aenderungen fuer die erste Platte in das Label geschrieben wurden, koennten Sie, wenn Sie auf die Fra- ge "Another disk?" mit "y" antwor- ten, die Aufteilung weiterer Plat- ten veraendern. Antworten Sie hier mit "n", so wird mit der Installa- tion des Miniroot-Systems in der Partition b der ersten Platte be- gonnen. Input file? ts(32,13) Das Miniroot-Filesystem ist die Datei Nr. 13 auf dem Installa- tionsband. Output file? xp(0,1) xp(0,1) bezeichnet die Swap-Parti- tion der ersten Platte. Last chance.... RETURN Jetzt kopiert installsys die Daten und berechnet eine Pruefsumme. >>> EOF Pass 1, count "xxxxx", checksum "xxxx", doing verify Pass 2, count "xxxxx", checksum "xxxx" Done Exit 0 Das Programm installsys ist beendet. *b 3 ts(32,0) Laden des Standalone-Dienstpro- . gramms boot. Dies ist Datei Nr. 0 . auf dem Installationsband . Boot :xp(0,1)gendynix xp0* Hiermit wird der generische Kern des Betriebssystems von der Platte in den Hauptspeicher geladen. Der * nach xp0 sagt gendynix, dass ein Teil der Partition b der Platte fuer das Miniroot- Dateisystem ver- wendet werden soll und ein Teil als swap-Partition. Anschliessend werden eine Reihe von Meldungen ueber die au- tomatische Konfiguration des Kerns auf der Konsole ausge- geben. Zum Schluss gibt SINIX V5.22 den Prompt fuer den Su- peruser aus (#). Sie arbeiten jetzt mit einer abgemagerten Version des Be- triebssystems SINIX V5.22. Als naechstes muessen Sie mit Hilfe des Programms restore.root ein Dateisystem in der Partition a der 1. Platte erzeugen und das Standard-root- Dateisystem dorthin kopieren. # restore.root . . . Ab hier verfahren Sie wie bei der Installation von SINIX V5.22 auf einer is-Platte, wobei is0 jeweils durch xp0 er- setzt werden muss. 2.3.2.3 Installation von SINIX V5.22 auf sd-Platte (nur MX500-20 und MX500-70) Das Promptzeichen des Monitors ist der *. *b 0 ts(32,4) Laden des Standalone-Dienstpro- gramms installsys Mem: x.x M chk ........ mem ........ test . . . Eroeffnungsbild des Programms in- . stallsys device? sd(48,2) Mit Hilfe des Programms installsys muss vor der eigentlichen Installa- tion die Plattenaufteilung festge- legt werden. Dabei muss fuer den ro- ot-Bereich mindestens der Stan- dardwert von 12 MB. Die Groesse des Swap-Bereichs sollte im allgemei- nen die Groesse des Hauptspeichers plus 4 MB betragen. Die weitere Aufteilung der Platte ist frei waehlbar, wobei jedoch darauf geachtet werden muss, dass ein Plattenbereich (e, f, g oder h) gross genug fuer die Installation des /usr-Bereichs ist. Nachdem die Aenderungen fuer die erste Platte in das Label geschrieben wurden, koennten Sie, wenn Sie auf die Fra- ge "Another disk?" mit "y" antwor- ten, die Aufteilung weiterer Plat- ten veraendern. Antworten Sie hier mit "n", so wird mit der Installa- tion des Miniroot-Systems in der Partition b der ersten Platte be- gonnen. Input file? ts(32,13) Das Miniroot-Filesystem ist die Datei Nr. 13 auf dem Installa- tionsband. Output file? sd(48,1) sd(48,1) bezeichnet die Swap-Par- tition der ersten Platte. Last chance... RETURN Jetzt kopiert installsys die Daten und berechnet eine Pruefsumme. >>> EOF Pass 1, count "xxxxx", checksum "xxxx", doing verify Pass 2, count "xxxxx", checksum "xxxx" Done exit 0 Das Programm installsys ist beendet. * b 3 ts(32,0) Laden des Standalone-Dienstpro- . gramms boot. Dies ist Datei Nr. 0 . auf dem Installationsband . Boot :sd(48,1)gendynix sd0* Hiermit wird der generische Kern des Betriebssystems von der Platte in den Hauptspeicher geladen. Der * nach sd0 sagt gendynix, dass ein Teil der Partition b der Platte fuer das Miniroot- Dateisystem ver- wendet werden soll und ein Teil als swap-Partition. Anschliessend werden eine Reihe von Meldungen ueber die au- tomatische Konfiguration des Kerns auf der Konsole ausge- geben. Zum Schluss gibt SINIX V5.22 den Prompt fuer den Su- peruser aus (#). Sie arbeiten jetzt mit einer abgemagerten Version des Be- triebssystems SINIX V5.22. Als naechstes muessen Sie mit Hilfe des Programms restore.root ein Dateisystem in der Partition a der 1. Platte erzeugen und das Standard-root- Dateisystem dorthin kopieren. # restore.root . . . Ab hier verfahren Sie wie bei der Installation von SINIX V5.22 auf einer is-Platte, wobei is0 jeweils durch sd0 er- setzt werden muss. 2.3.2.4 Installation von SINIX auf einer anderen als der ersten Platte Bei der Installation von SINIX auf einer anderen als der ersten Platte ist darauf zu achten, dass immer die richtige Plattenbezeichnung angegeben wird. Die Monitor-Notation entnehmen Sie bitte dem Systemverwalter-Handbuch, die SINIX-Notation zaehlt alle Platten desselben Typs beginnend bei 0 hoch, wobei in SINIX V5.22 die Zuordnung der Platten zu den Controllern nicht mehr dynamisch ist (d.h., die erste Platte am zweiten Controller heisst immer is2, auch wenn am ersten Controller nur eine Platte angeschlossen ist!). Bei Platten-Mischkonfiguration (Verwendung von 80 MB und 300 MB-Platten bei einem MX500-20) ist zu beachten, dass alle sd-Platten beginnend bei 0 hochgezaehlt werden (sd0, sd1, usw.) und alle is-Platten ebenfalls bei 0 be- ginnend (is0, is1, usw.). Besondere Vorsicht ist beim Laden des Miniroot-Systems geboten, da hier beide Notationen gemischt werden. Fuer die fuenfte 5 1/4 Zoll Platte im Multibus (erste Platte am dritten Controller) muesste man folgendes eingeben: . . . b3ts(32,0) Laden des bsu-Boot-Kommandos . . . :is(528,1)gendynix is4* Laden des Miniroot-Systems aus dem Swap-Bereich der fuenften Platte Die Angabe is4* sagt dem gendynix, dass die Partition b der fuenften Platte (is4) sowohl fuer das Miniroot-System als auch als Swap-Bereich verwendet werden soll. Da diese An- gabe ein Argument fuer gendynix ist, muss hier die SINIX-No- tation verwendet werden. 2.3.2.5 Massnahmen vor und nach einem Plattencrash Es empfiehlt sich, nach der Installation des Systems und aller gewuenschten Software-Produkte, nach der Konfigurie- rung der gesamten Peripherie und nach der Eintragung aller Benutzerkennungen, jeweils eine komplette Dump-Sicherung der root- und usr-Partition anzulegen. Mit diesen Siche- rungen kann dann im Falle eines Plattencrashes die Anlage schnell und ohne Probleme wieder komplett installiert werden. Dazu beginnen Sie bitte wie bei einer normalen Systemin- stallation mit dem Kopieren des Miniroot-Systems in den Swap-Bereich der Systemplatte. Anschliessend laden Sie die- ses Minisystem wie in der Installationsanleitung beschrie- ben. Anstelle von restore.root machen Sie dann jedoch fol- gendes: Anlegen der Datei /etc/mtab: >/etc/mtab Einrichten des Dateiverzeichnisses /a: mkdir /a Erzeugen eines Dateisystems fuer den root-Bereich: /etc/newfs /dev/xp0a "Mounten" des root-Bereichs: /etc/mount /dev/xp0a /a Wechseln in den root-Bereich: cd /a Einlesen der Sicherung des root-Bereichs: /etc/restore rvf /dev/rts0 Anschliessend haengen Sie den root-Bereich wieder ab, fahren das System mit /etc/halt herunter und sofort wieder hoch in den Einbenutzerbetrieb. Dann verfahren Sie fuer die Ruecksicherung des usr-Bereichs entsprechend. 2.3.3 Installation MX300 2.3.3.1 Spezielle Hinweise fuer 9733 Bei der GSGA-Version (ohne Lynx!) des 9733 ist die Konsole ein 97801- oder ein 97808-Bildschirm. Dieser wird an tty000 angeschlossen. Wird der 9733, im X-WINDOW-Betrieb eingesetzt, so darf an der 1. Schnittstelle der 1. E/A-Baugruppe (tty000) kein Terminal konfiguriert werden. Die Konsolfunktion wird dann vom Farb-Grafikmonitor uebernommen. 2.3.3.2 Inbetriebnahme vorinstallierter Platten Das auf der Festplatte gelieferte Betriebssystem SINIX Version 5.22 ist nach Einlesen der mitgelieferten KEY-Dis- kette K.DISK betriebsbereit. Dazu ist beim Hochfahren auf die Meldung "Please install your SINIX authorization file" die Diskette K.DISK einzu- legen und dies mit der Taste zu bestaetigen. Das Betriebssystem kann bei Bedarf um die Miscellaneous Files (Spezielle Tools) erweitert werden. Die Installation weiterer Archive mit "/restore.more" sollte im Single-User-Modus erfolgen, da nach dem Einlesen der /etc/reboot aufgerufen wird. Wird System-Software nachtraeglich eingelesen, so sollten die Archive des Sy- stems, die bereits im usr-Bereich vorhanden sind, nochmals eingelesen werden. Anderenfalls koennen Links zwischen den Universen verloren gehen. Achtung: Bei der Installation der Kassette SIE2.1 werden Teile der bereits im sie-Universum eingehaengten Software-Produkte geloescht. MX300 mit mehr als einer Platte Da ihr System auf Platte vorinstalliert ausgeliefert wird, ist es aus liefertechnischen Gruenden nicht moeglich die Partitions ihrer 2. Platte mit bereits eingerichteten Da- teisystemen zur Verfuegung zu stellen. Bei der ersten Platte wurde auf der Partition g das Da- teisystem /usr installiert. Auf der Partition h wurde ein Dateisystem eingerichtet. Die 2. Platte muessen Sie selbst konfigurieren. Arbeiten Sie hierbei als Superuser (Einlog- gen unter der Kennung "root"). Stellen Sie zunaechst fest, mit welchem Plattentyp Sie arbeiten (z.B. mit /etc/dmesg). 1) SINIX-Label auf Platte 2 schreiben (der Plattenname ist abhaengig vom Controller, an den die Platte angeschlos- sen ist): z.B. /etc/disklabel -l /dev/ris1c 2) Dateisystem auf der Platte is1 einrichten: Dies geht z.B. wie folgt: /etc/newfs /dev/is1a /etc/newfs /dev/is1g /etc/newfs /dev/is1h 3) Anhaengen der Dateisysteme: Richten Sie nun Dateiverzeichnisse fuer die Dateisysteme ein, z.B. die folgenden: mkdir /usr1a /usr1g chmod 755 /usr1* Die Namen der Dateiverzeichnisse muessen mit "usr" be- ginnen, wenn diese im COLLAGE-Bediensystem (zum Eintra- gen neuer Benutzer) auswaehlbar sein sollen. Ergaenzen Sie die Datei /etc/fstab, z.B. wie folgt /dev/is1g /usr1g 4.2 rw 1 2 /dev/is1b - swap sw - - Es wird dringend empfohlen, pro Platte einen Swapbe- reich einzurichten, damit sonst auftretende Systemeng- paesse vermieden werden. Viele Anwendungen erfordern einen groesseren Swap-Bereich als standardmaessig zur Verfuegung steht. Beachten Sie dies beim Einrichten der Platten. Anschliessend muessen die swap-Partitions dem Kern be- kannt gemacht werden. Hierzu benutzen Sie das Kommando /etc/rootswap. Die is1a-Partitionen wurden nicht eingetragen, da diese nur ca. 8 MB Kapazitaet hat. Sie sollten jedoch eine der a-Partitionen als /tmp-Bereich nutzen und damit den usr-Bereich entlasten. Tragen Sie hierzu folgende Zeile in der Datei /etc/fstab ein: /dev/is1a /usr/rtmp 4.2 rw 1 2 Sie muessen hier /usr/rtmp eintragen, da im xopen- und im sie-Universum /tmp ein bedingter symbolischer Link auf /usr/rtmp ist. Vergewissern Sie sich, dass Sie der einzige Benutzer am System sind. Loeschen Sie alle Dateien unter /usr/rtmp, falls Sie /tmp fuer das xopen- und das sie-Universum auf eine eigene Partition gelegt haben. Booten Sie jetzt mit dem Kommando "/etc/reboot" das Sy- stem neu. 2.3.3.3 Neuinstallation Hinweis: Auf den Systemen, fuer die X-WINDOW vorgesehen ist, ist das COLLAGE-Bediensystem erst ablauffaehig, wenn X-WINDOW installiert ist. Daher muss X-WINDOW unter der Kennung root ueber /etc/superinstall installiert werden. Ablauf der Installation von SINIX V5.22: In der folgenden Installationsbeschreibung sind Benutzer- eingaben unterstrichen dargestellt. Sie muessen fuer die In- stallation von SINIX V5.22 mit einem Zeitbedarf von ca. 3 Stunden rechnen. 1) Vergewissern Sie sich, dass sich Ihr System im Zustand offline befindet (d.h. das System ist ausgeschaltet). 2) Legen Sie die Installations-Start-Diskette ein (bitte verriegeln Sie hierbei das Laufwerk noch nicht!). Die Start-Diskette (SINIX0/SINIH0/SINIC0) ist hardware- abhaengig. Fuer MX300 und 9733 werden jeweils 3 verschie- dene Installations-Start-Disketten ausgeliefert: SINIX0 fuer MX300-05/10/20 (332-Prozessor) SINIX0 fuer 9733-10/20(205) (GSGA) (332-Prozessor) SINIH0 fuer MX300-15/30, (532-Prozessor) SINIH0 fuer 9733-20(203/208) (GSGA) (532-Prozessor) SINIC0 fuer 9733-10/20 (MOTIF) (332-Prozessor) 3) Schalten Sie nun erst die Konsole ein und anschliessend Ihr System. Danach verriegeln Sie das Disketten- laufwerk. 4) Das Startprogramm der SINIX0-Diskette laedt nun einen Mini-Systemkern. Sie erhalten hierbei einige Systemmel- dungen ueber die Hardwarekonfiguration Ihres Systems. 5) Nach Aufforderung legen Sie die SINIX1-Diskette ein und bestaetigen dies im Anschluss mit der Return-Taste. Beachten Sie bitte, dass die SINIX1-Diskette nicht schreibgeschuetzt sein darf. Hinweis: Bei Systemen des Typs 9733-xxx werden die Escape-Sequenzen der Bildschirmsteuerung bzw. des Gra- fikzeichensatzes am Bildschirm dargestellt. So erhalten Sie bei der Aufforderung zum Einlegen der SINIX1-Dis- kette bei einer 9733-xxx die Meldung SINIX1 w le 6) Nun wird die Konsistenz des Dateisystems auf der SINIX1- Diskette geprueft ("fsck" in "/etc/rc"). Sie erhalten hierbei einige Informationen ueber das Datei- system. "Checking consistency of floppy-filesystem" . . "init : no enabled tty in ttys file" 7) Warten Sie bis der Prompt " " am Bildschirm erscheint. 8) Nun starten Sie die Installation, indem Sie das Kommando restore.mini eingeben. 9) Sie erhalten die Meldung "Build the mini-root file system ATTENTION PLEASE: Do not remove SINIX1 floppy disk or SINIX2 streamer tape until you are instructed to! Please now insert SINIX2 into streamer and acknowledge with Return" 10) Sie legen die SINIX2-Magnetbandkassette in das Magnet- band-Kassetten-Laufwerk ein und betaetigen im Anschluss die Return-Taste. Die SINIX1-Diskette entfernen Sie erst, wenn Sie hierzu aufgefordert werden. 11) Sie erhalten die Meldung : "Retensioning streamer tape - please wait..." Das Nachspannen und Zurueckspulen nimmt einige Minuten in Anspruch. Im Anschluss erhalten Sie die Abfrage : "Is console type national or international? (n=default/i)>" 12) Sie uebernehmen mit den default-Wert, oder waeh- len mit die internationale Tastaturbelegung aus. 13) Sie erhalten nun die Abfrage : "Disk is0 will now be overwritten - do you want to save the contents first? (y=default/n) > " n 14) Fuer die weiteren Installationsinstruktionen wurde die Option "n" gewaehlt. Sollten Sie den default-Wert (="y") uebernehmen, so wird die Installationsprozedur abgebro- chen. Sie haben dann die Moeglichkeit auf einem Mini- Root-System zu arbeiten oder nach einem reboot Ihr al- tes System zu laden, um anschliessend die Sicherung von "is0" durchzufuehren. "is0" kennzeichnet hierbei die er- ste Platte. 15) Es erscheint nun die Abfrage : "Do you want to change configuration of disk is0 (n/y)?" Sie koennen hierbei die Standardwerte (Groesse einer Partition in MegaByte) auf der Platte "is0" aendern, wenn Sie mit y antworten. Dies ist z.B. erfor- derlich, wenn Sie Ihren Swap-Bereich oder /usr-Bereich groesser dimensionieren moechten. Mit n ueber- nehmen Sie die Standardwerte (wobei Sie die Meldung "label installed" erhalten) und die Installation wird wie unter Punkt 16) beschrieben fortgesetzt. Im folgenden Beispiel wurde die b-Partition auf 27 MB vergroessert und die h-Partition auf 102 MB verkleinert. Nachdem Sie auf die obige Abfrage mit y geant- wortet haben, erhalten Sie die folgenden Informationen (hier z.B. fuer eine MegaFile1300): "diskname: 'MegaFile1300', type: 'winchester' 1216 cylinders,12 heads,34 sectors,512 bytes/sec,3600 rpm 0 res cylinders, 55 alt sector part 0 1 2 3 4 5 6 7 start . . . . . . . . size . . . . . . . . blksz . . . . . . . . frgsz . . . . . . . . +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ aaa bbbbb ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc ddd eeeeeeee fffffffffff gggggggggggggggggggggg hhhhhhhhhhhhhhhhhhhhhhhhhhhhh +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Available size of Partition B for dump: 18.5 MB change Partition table? ny " y Nun werden Sie nochmals gefragt, ob Sie die Partitio- nierung aendern wollen. Falls Sie hier mit n antworten werden die oben aufgezeigten Standardeinstel- lungen uebernommen, und Sie erhalten die Meldung "label installed". Die Installation wird dann wie im Punkt 16) beschrieben fortgesetzt. Antworten Sie mit y , so erscheint nun die Meldung: "Size of partition A? Currently: 7.7 MB 0-241.2 MB " Der Standardwert (7.7 MB) wird mit uebernommen. "Size of partition B? Currently: 20.5 MB 0-233.4 MB " 27 Der Swap-Bereich wird auf 27 MB vergroessert. "Size of partition H? Currently: 138.2 MB 0-206.4 MB " 102 Die h-Partition wird um 36.2 MB verkleinert, damit fuer den g-Bereich entsprechend mehr Speicherkapazitaet zur Verfuegung steht. "Size of partition E? Currently: 27.4 MB 0-96.4 MB " "Change partition block or fragment sizes? ny " n Es wird empfohlen diese Abfrage mit "n" oder einfach (entspricht "n") zu quittieren. Damit wird ein 8KB/1KB Standard-Dateisystem angelegt. "View changed partition table? ny " y Nun wird Ihnen die geaenderte Tabelle am Bildschirm angezeigt. Diese Grafik dient nur zur Visualisierung, d.h. durch Rundungen koennen Ungenauigkeiten auftreten. "Save changed partition table? ny " y Geben Sie hier "y" an, so wird der Label mit den geaen- derten Werten auf die Platte geschrieben und Sie erhal- ten die Systemmeldung "label installed". Andernfalls koennen Sie erneut die Partitionierungsprozedur durch- laufen, wobei Sie von der Original- oder der geaenderten Plattenaufteilung ausgehen koennen (Abfrage "Restore original ...."). Sie haben die Moeglichkeit das Programm zu verlassen (Abfrage "Exit disklabel ..."). Verlaesst man an dieser Stelle das Programm, so wird kein Label auf die Platte geschrieben. 16) Nun erfolgt die Installation des Mini-Root-Systems. Sie erhalten einige Systemmeldungen am Bildschirm. "xxx+1 records in" . . . "xx+1 records out" Nach der Installation des Mini-Root-Systems erscheint die folgende Meldung: "MINIROOT installation successful. ATTENTION PLEASE: When the following reboot has finis- hed (i.e. the " " prompt appears) you should remove the SINIX1 floppy disk and continue installing from the SI- NIX2 streamer tape by typing in "restore.root". If you don't want to continue installing, remove the SINIX2 streamer tape. Please acknowledge with Return to start the reboot > " 17) Nachdem Sie die Return-Taste betaetigt haben erscheint die Meldung "Now booting off mini-root filesystem" und es erfolgt ein reboot, bei dem Sie Systemmeldungen ueber den Hardwareausbau Ihrer Anlage erhalten. 18) Warten Sie ab, bis der Prompt " " auf dem Bildschirm erscheint. 19) Entfernen Sie die SINIX1-Diskette aus dem Laufwerk. 20) Geben Sie das Kommando restore.root ein. 21) Sie erhalten nun einen Hinweis, dass alle Ausgaben der Installation in die Datei "/restore.root.out" proto- kolliert werden, sowie die folgenden Meldungen : "The output of "restore.root" is going to be collected in "/restore.root.out"..." "Build the root file system" ATTENTION PLEASE: Do not remove SINIX2 streamer tape until you are instructed to! Retensioning streamer ta- pe - please wait ..." 22) Nachdem das Band gestrafft und zurueckgespult ist, wird der Bildschirm neu aufgebaut, und Sie erhalten Sie Nachricht: "Disk is0 will now be overwritten - do you want to sa- ve the contents first? (y=default/n) >" n 23) Fuer die folgenden Installationsinstruktionen wurde die Option "n" gewaehlt. Sollten Sie den default-Wert(= "y") uebernehmen, so wird die Installationsprozedur abgebrochen. Sie haben die Moeglichkeit auf einem Mi- ni-Root- System zu arbeiten oder nach einem reboot Ihr altes System zu laden, um anschliessend die Sicherung von "is0" durchzufuehren. "is0" kennzeichnet die erste Platte. 24) Sollte Ihr System ueber mehr als eine Platte verfuegen, so haben Sie nun die Moeglichkeit die Partitionierung dieser Platten zu aendern. Das Vorgehen ist mit dem un- ter Punkt 15) beschriebenen Verfahren identisch. 25) Im Anschluss wird auf der Partition "is0a" ein neues Dateisystem generiert ("/etc/newfs"). Hierbei erhalten Sie einige Systemmeldungen. Verfuegt Ihr System nur ueber eine Platte, so wird an dieser Stelle auch auf der Partition "is0g" ein neues Dateisystem erzeugt. Die Installation wird dann bei Punkt 29) fortgesetzt. 26) Verfuegt Ihr System ueber mehr als eine Platte, wird der Bildschirm neu aufgebaut und es erscheint die Meldung: "Restore parts of the root file system:" Die Installation des "root file systems" nimmt einige Minuten in Anspruch. 27) Sollte Ihr System mehr als eine Platte besitzen, so erhalten Sie nun Informationen ueber die installierten Platten und die konfigurierbaren Partitionen. Sie koen- nen eine Auswahl treffen, wo Sie den /usr-Bereich und den /usr/rtmp-Bereich installieren moechten. Haben Sie nur eine Platte installiert, so wird der usr-Bereich und der /usr/rtmp-Bereich auf /dev/is0g standardmaessig installiert. Das folgende Beispiel zeigt eine Konfigurierung mit vier Platten und einem NSC 32532-Prozessor auf. "This MX532 is equipped with 4 disks: /dev/is0 = MegaFile1300 /dev/is1 = MC1355 /dev/is2 = MegaFile1300 /dev/is3 = MegaFile1300 Configurable partitions are: /dev/is0g /dev/is0h /dev/is1a /dev/is1g /dev/is2a /dev/is2g /dev/is2h /dev/is3a /dev/is3g /dev/is3h Choose configuration as follows: 0) /usr file system on /dev/is0g including /usr/rtmp space (default) 1) /usr file system on /dev/is1g and /usr/rtmp on /dev/is1a 2) /usr file system on /dev/is2g and /usr/rtmp on /dev/is2a 3) /usr file system on /dev/is3g and /usr/rtmp on /dev/is3a (0/1/2/3) > " 1 28) Nachdem Sie die Optionen 1, 2 oder 3 (in Abhaengigkeit der installierten Platten) selektiert haben, erhalten Sie eine Meldung, ob Sie die gewaehlten Partitionen vor der Installation sichern moechten. Bei Auswahl der Option 0 (=default) wird die Installation wie unter Punkt 29) beschrieben fortgefuehrt. Die unten angefuehrte Systemmeldung bezieht sich auf die Selektion der Option 1. "/dev/is1a and /dev/is1g will now be reinstalled - do you want to save the contents first? (y=default/n) >" n Geben Sie die Option "y" an, so wird die Installation abgebrochen. Fuer die weiteren Installationsanweisungen wird von der Option "n" ausgegangen. Es werden nun neue Dateisysteme fuer die ausgewaehlten Bereiche generiert. Sie erhalten einige Systemmeldungen ("/etc/newfs"). 29) Im Anschluss erfolgt fuer jede der unter Punkt 27) ange- zeigten, konfigurierbaren Partitionen eine Abfrage, ob Sie ein neues Dateisystem einrichten wollen. Verfuegt Ihr System nur ueber eine Platte, so erfolgt hierbei die Abfrage fuer die adaequate Partition (z.B. "/dev/is0h"). Die folgenden Abfragen beziehen sich auf das Beispiel des Punktes 27). "new filesystem on /dev/is0g? (n=default/y) >" Die Entscheidung, ob Sie ein neues Dateisystem generie- ren moechten, muessen Sie in Abhaengigkeit davon treffen, ob Sie auf der jeweiligen Partition noch relevante Daten gespeichert haben. Sollte dies der Fall sein, so uebernehmen Sie den default-Wert "n". Sie muessen dann im Anschluss an die Installation die adaequaten Plattenbe- reiche per Hand in die Datei "/etc/fstab" eintragen und die hierfuer benoetigten leeren Dateiverzeichnisse anle- gen. Sollten Sie ein neues Dateisystem anlegen wollen (z.B. nach Aenderung der Partitionierung einer Platte), so antworten Sie auf die obige Abfrage mit "y" und der Return-Taste. Sie erhalten dabei die Abfrage : "where to mount /dev/is0g? (default=/usr1) >" /usr0g Der Name des Mount-Ziels (Dateiverzeichnis) muss mit "usr" beginnen, wenn dieser im Bediensystem auswaehlbar sein soll. Hier wurde der Name an die Geraetedatei angepasst, d.h. die Plattenbezeichnung (hier "is") wurde durch "usr" substituiert. Die Nummer der Platte und der Bereich wurden uebernommen. Beispiele: Geraetedatei mount-Ziel /dev/is0g /usr0g /dev/is3h /usr3h /dev/is0h /usr0h 30) Im Anschluss wird die Installation des root-Bereichs fortgesetzt, wobei Sie Meldungen ueber die aktuellen Ak- tionen erhalten. "Restore MX532(X9733) specific utilities" "Restore MX532 specific root files" "label installed" "boot installed" "Making standard devices ..." "Making configuration specific devices ...is0 .. .. .." 31) Die Installation des root-Bereichs ist jetzt abge- schlossen und Sie erhalten die Meldung "Root file system extracted." "ATTENTION PLEASE: When the following reboot has finis- hed (i.e. the " " prompt appears) you should continue installing from the SINIX2 streamer tape by typing in "./restore.more". If you don't want to continue instal- ling, remove the SINIX2 streamer tape. Please acknowledge with Return to start the reboot > " 32) Sie bestaetigen diese Abfrage mit Return. Es erscheinen fuer einige Sekunden die folgenden Meldungen "Now booting off real root filesystem" "Terminated" und im Anschluss erfolgt der reboot. Waehrend des Reboots erhalten Sie einige Systemmeldungen ueber Ihre Hardware- konfiguration. Warten Sie solange, bis der Prompt " " erscheint. Zur Installation der zusaetzlichen Software geben Sie dann ein : ./restore.more > 33) Sie erhalten nun fuer einige Sekunden die Meldung "The output of "restore.more" is going to be collected in "/restore.out"..." Im Anschluss wird der Bildschirm geloescht. Es erscheint die Meldung: "Currently there is about xx MB /usr space available! You may now select what to restore into the /usr file system - answer only with 'y' or 'n' (the mentioned MB's are approximate values):" CES Environment (6 MB)? ---> y miscellaneous files (4 MB)? ---> y games (1 MB)? ---> n 34) Sie selektieren die Software, die Sie zusaetzlich in- stallieren moechten, indem Sie hinter der angegeben Op- tion ein "y", gefolgt von Return, eingeben. 35) Im Anschluss erhalten Sie die folgende Meldung : "The /usr space available is about xx MB and the /usr space needed is about 10 MB - do you want to repeat the selection? (n=default/y) >" n Geben Sie hierbei "y", gefolgt von , an, so wiederholen Sie die Selektion, wie unter Punkt 33) beschrieben. Geben Sie "n" an und bei Ihrer Anlage handelt es sich um eine MX300-xx, so wird die Instal- lation, wie unter Punkt 36) beschrieben, fortgesetzt. Falls es sich bei Ihrem System um eine 9733-xxx han- delt, so erhalten Sie die Abfrage: "Do you want to run X Window ? (n=default/y) >" y Sie geben hier "y" gefolgt von ein, falls Sie auf Ihrer 9733-xxx mit OSF/Motif arbeiten moechten. 36) Die Auswahl der zusaetzlich zu installierenden Software ist somit beendet und es erscheint kurz die Meldung: "Selection finished - reading streamer tape..." 37) Nun wird das Installationsband gestrafft und zurueckge- spult, was Sie an der Nachricht "Retensioning streamer tape - please wait..." erkennen. 38) Im Anschluss wird die von Ihnen selektierte Software installiert. Im obigen Beispiel wurden das CES Environ- ment und die miscellaneous files ausgewaehlt. Daher er- halten Sie die folgenden Systemnachrichten: "System Administration Environment will be restored first:" "restoring /usr filesystem" "restoring MX532 specific /usr" "System Administration Environment restored" "Making root directory for SYSTEM V (/usr/att)" "Extracting System V from tape (into /usr/att)" "Creating symbolic links" "System V universe installed." "Extracting COLLAGE Runtime System from tape ..." "Permissions being set ..." "restoring COLFACE" "restoring miscellaneous files" "miscellaneous files restored" "restoring CES Environment" "Installing CES V5.22A00 90-04-17 N8" "Extracting CES V5.22A00 90-04-17 N8 from tape" "CES V5.22A00 90-04-17 N8 extracted from tape" "Adjusting symbolic links" "Installing menus updates for CES V5.22A00 90-04-17 N8" "CES V5.22A00 90-04-17 N8 installed" "CES Environment restored" "restoring System V Includes" "System V Includes restored" "Thu Feb 22 12:38:15 MET 1990" "Installation complete - now booting off in Multiusermode" "Terminated" 39) Nach Beendigung der Installation erfolgt automatisch ein reboot. Im Anschluss an diesen reboot erhalten Sie die Meldung "Please install your SINIX authorization file" "Is the software installed from streamer tape? (y/n) ->" n Geben Sie hier n ein. "Is the software installed from diskette ? (y/n) ->" y Sie geben hier y ein und legen anschliessend Ihre Diskette K.DISK in das Laufwerk ein. "Please insert the first diskette into the drive" "Can the installation commence ? (y/n) ->" y Diese Abfrage bestaetigen Sie mit y . Sie erhalten nun einige Meldungen am Bildschirm. "Reading the installation procedure." . . . "Installation successfully completed." 40) Nun ist die Installation der SINIX Version V5.22 been- det und Sie entfernen das SINIX2-Band aus dem Laufwerk. 41) MX300: Nachdem Sie den Begruessungsbildschirm erhalten haben, loggen Sie sich unter der Kennung "root" ein, und installieren mit dem Kommando /etc/superinstall die sie-Ablaufumgebung. Die sie-Ablaufumgebung wird mit ei- ner seperaten Magnetbandkassette (SIE2.1) ausgeliefert. Da die meisten der zusaetzlichen Softwareprodukte diese Ablaufumgebung nach wie vor voraussetzen, sollte diese Ablaufumgebung auch sofort nach der Installation des Betriebssystems eingespielt werden. 9733: (MOTIF) Sie erhalten die Meldung : "login:" Sie loggen sich unter der root-Kennung ein und instal- lieren zuerst MOTIF. Im Anschluss installieren Sie mit dem Kommando /etc/superinstall die sie-Ablaufumgebung. 2.3.4 Installation der Kassette SINIXK Sollte sich im Lieferumfang des Betriebssystems auch eine Magnetbandkassette SINIXK befinden, installieren Sie diese bitte im Anschluss an die Installation von SINIX V5.22 im Multi-User-Modus ueber /etc/superinstall. Anschliessend an die Installation wird ein automatischer Reboot durch- gefuehrt. 2.3.5 Installation der sie-Ablaufumgebung Die sie-Ablaufumgebung ist in SINIX V5.22 nicht mehr im Betriebssystem enthalten. Sie wird auf einer separaten Kassette ausgeliefert und kann ueber /etc/superinstall in- stalliert werden. Da die meisten der zusaetzlichen Softwa- reprodukte diese Ablaufumgebung nach wie vor voraussetzen, sollte diese Kassette sofort nach der Systeminstallation eingespielt werden. 2.3.6 Installation des System Development Toolkit (SDT) Um das auf dem Installationsband enthaltene System Development Toolkit (SDT) installieren zu koennen, muss vor Aufruf der Prozedur restore.more die Umgebungsvariable SDT auf y gesetzt werden. Gehen Sie wie folgt vor: # SDT=y # export SDT # restore.more . . . restoring SDT Environment . . . Sie koennen das SDT sowohl bei der Erstinstallation von SI- NIX V5.22 als auch nachtraeglich separat installieren. Falls die Umgebungsvariable SDT nicht fuer die gesamte Sit- zung erhalten bleiben soll, koennen sie die Prozedur resto- re.more auch folgendermassen aufrufen: # SDT=y restore.more 2.3.7 Installation der internationalisierten Datenbasen Seit SINIX V5.22 sind die internationalisierten Datenbasen auf dem Installationsband vorhanden und koennen analog zum SDT durch das Setzen der Umgebungsvariablen INTL (INTL=y; export INTL) vor dem Aufruf der Prozedur restore.more in- stalliert werden. 2.3.8 Konfigurierte Swap-Bereiche nach der Installation MX500: Nach der Systeminstallation ist in SINIX V5.22 nur die b-Partition der Systemplatte als Swap-Bereich im Kern ein- getragen. Sollen weitere Plattenbereiche als Swap-Bereiche verwendet werden koennen, so muessen sie mit dem Dienstpro- gramm /etc/rootswap im Kern konfiguriert werden. Anschlie- ssend an diese Konfiguration muss der Rechner herunter und anschliessend wieder hochgefahren werden. Eine Beschreibung des Dienstprogramms rootswap finden Sie im Systemverwalterhandbuch. MX300: Nach der Installation von SINIX V5.22 sind alle verfuegba- ren b-Partitionen als Swap-Bereiche im Kern und in der Da- tei /etc/fstab eingetragen. 2.3.9 Nachtraegliche Software-Installation von der Systemkassette Wird Software nachtraeglich von Kassette eingelesen, so sollten die Archive, die bereits im usr-Bereich vorhanden sind, nochmals eingelesen werden. Andernfalls fehlen u.U. Links zwischen den Universen. 2.3.10 Wiederholte Installation von SINIX V5.22 Beabsichtigen Sie eine komplette Neuinstallation des Betriebssystems, so sollten Sie zuvor neben den Benutzer- daten die unten genannten wichtigen System-Dateien und Da- teiverzeichnisse sichern; dies erspart Ihnen nach der In- stallation einige Arbeiten. /etc/passwd /usr/menus/app/develop/login.dat /etc/group /usr/menus/app/develop/deauth.dat /etc/fstab /usr/menus/app/control/auth.file /etc/securetty /usr/att/etc/profile /etc/.profile /usr/admin/.benutzer /dev/MAKEDEV.local /usr/local Vorsicht bei Versionswechsel: Bei einem Versionswechsel des Betriebssystems sollten diese Dateien nur nach genauer Pruefung uebernommen werden, da sich in diesen Faellen das interne Format der Systemdateien aendern kann. Weitere wichtige Dateien anderer installierter Softwa- re-Produkte sollten Sie ebenfalls sichern (z.B. Nameserver fuer CMX, Netzdatenbank fuer LAN1). Beachten Sie, dass bei einer Zweitinstallation root- und usr-Partition immmer gemeinsam installiert werden muessen. Eine Installation der root-Partition alleine ist nicht moeglich, da hierbei noch nicht die fuer den spaeteren Be- trieb notwendigen symbolischen Links eingerichtet werden. Sichern Sie deshalb unbedingt alle Benutzerdaten der usr- Partition, falls Sie neu installieren. 2.3.11 Installation von zusaetzlichen Software-Produkten Die Installation zusaetzlicher Software-Produkte unter Alpha-COLLAGE sollte ausschliesslich im Full-Screen-Modus durchgefuehrt werden, da die Installationsprozeduren oft die 25. Bildschirmzeile benutzen, die nur im Full-Screen- Modus sichtbar ist. 2.3.12 Tuningmassnahmen Zusaetzlich zum Umorganisieren des Dateiverzeichnisses /dev mittels /etc/devreorg ( vgl. Kapitel 3.5!) wird empfohlen, die Terminaleintraege in der Datei /etc/ttys mit Hilfe eines Editors umzukopieren, sodass alle direkt angeschlos- senen Terminals vor den Pseudoterminals und den virtuellen Terminals stehen. 2.4 Produkt-Einsatz SINIX Version 5.22 ist auf allen Modellen der Rechnerfami- lien MX500, MX300 und 9733 ablauffaehig. Zur Installation von CMX ist das CES-Environment Voraus- setzung. Vor der Installation von LAN/REMOS muss die sie-Ablaufumge- bung installiert sein. Nach der Installation von LAN/REMOS kann die Konfiguration und Netzeinbindung erst dann durch- gefuehrt werden, wenn das COLLAGE-Bediensystem beendet und wieder neu gestartet wurde. 8-Bit-Terminal am MX500 Ein 8-Bit-Terminal am MX500 kann erst ab dem SCED-Firmwa- restand 43A als Konsole eingesetzt werden. Waehrend der Installation des Betriebssystems muss dieses Terminal jedoch auf jeden Fall im 7 Bit Modus betrieben werden. 8-Bit-Terminal am MX300 Wird ein 8-Bit-Terminal am MX300 als Konsole eingesetzt, so sollte es nur im 7 Bit Modus betrieben werden. Anderen- falls kann es beim Hochfahren zu Problemen kommen. Konsole am MX500 Fremdterminals und Grafik-Terminals sind generell nicht als Konsolterminals zugelassen. Grafik-Collage Der Betrieb von Grafik-COLLAGE ueber TACSI und IMD-Technik ist derzeit nicht freigegeben! Umgebungsvariable PATH Bei der Installation zusaetzlicher Softwareprodukte darf die Umgebungsvariable PATH nur folgendermassen veraendert werden: PATH=$PATH: export PATH d.h. die Umgebungsvariable darf nur ergaenzt, nicht aber komplett ueberschrieben werden! Inhaltsverzeichnis des Installationsbandes Auf dem Installationsband befindet sich ein Inhaltsver- zeichnis desselben in abdruckbarer Form (Datei Nr. 2). Sie koennen sich dieses Inhaltsverzeichnis entweder mit dem bsu-Kommando cat direkt ansehen, oder aber es mit dem SINIX-Kommando cp auf die Platte kopieren und anschliessend ausdrucken lassen. Zusaetzlich finden Sie im Anhang dieser Freigabemitteilung einen Ausdruck dieses Inhaltsverzeichnisses. Datei /etc/disktab - Programm /etc/showblk0 (nur MX500) Die Datei /etc/disktab ist nur noch zu Dokumentationszwek- ken im Betriebssystem vorhanden. Die Plattendaten, die von diversen Dienstprogrammen (z. B. /etc/newfs) benoetigt wer- den, werden in jedem Fall direkt aus dem Block 0 der je- weiligen Festplatte gelesen. Deshalb ist auch die Angabe des symbolischen Geraetenamens beim Kommando /etc/newfs ueberfluessig. Um die im Block 0 jeder Platte hinterlegten Daten zu le- sen, existiert das Kommando /etc/showblk0, das als einzi- gen Aufrufparameter den Namen der betreffenden Platte (z. B. xp1 oder is0) erwartet. Kopieren von ganzen Plattenbereichen Das physikalische Kopieren von kompletten Plattenbereichen mit dem Kommando cp ist generell moeglich. Jedoch muss hier- bei beachtet werden, dass die Bereiche a und c nicht physi- kalisch kopiert werden duerfen, da diese Bereiche den Boot- Block und die Plattenaufteilung bzw. die Fehlstellenliste der jeweiligen Festplatte enthalten. Plattenzuordnung zu den Controllern am MX500 Im Gegensatz zu frueheren SINIX-Versionen, in denen die Festplatten im Multibus den vorhandenen Controllern dyna- misch zugeordnet wurden, besteht in SINIX V5.22 eine feste Zuordnung. Festplatten im SCSI-Bus werden ihren Controllern hingegen dynamisch zugeordnet. Geraetedateien fuer Platten am MX300 Die Prozedur "restore.root" der Monoprozessor-Linie be- ruecksichtigt nun die Konfiguration Ihrer Maschine. Bei einer Neuinstallation werden nur die Geraetedateien fuer die tatsaechlich vorhandenen Platten eingetragen. In SINIX V5.22 werden die Namen fuer die Geraetedateien der Festplatten nicht mehr dynamisch vergeben, sondern fest zugeordnet. Controller Steckplatz Geraetedatei (Bsp.) 1 1 /dev/is0g 1 2 /dev/is1g 2 1 /dev/is2g 2 2 /dev/is3g Wechsel in die Benutzerkennung admin mittels su Soll mittels des Kommandos su in die Benutzerkennung admin gewechselt werden, so sollte der Aufruf folgendermassen aussehen: su - admin Hierbei wird die komplette Umgebung der Benutzerkennung admin substituiert, d.h. alle Umgebungsvariablen, etc. sind korrekt gesetzt. Die einzige Ausnahme hiervon bildet das Universum - es wird nicht auf att gesetzt. "Verstuemmelte" Systemmeldungen auf der Konsole Ist auf der Console Alpha-COLLAGE geladen, so werden Systemmeldungen immer im Grafik-Zeichensatz, also verstuem- melt" dargestellt und zerstoeren ausserdem den Bildschirm- inhalt. Ein Bildschirm-Refresh ist danach ueber das Menue Desktop moeglich, die Systemmeldung muessen Sie sich in der Protokoll-Datei /usr/adm/messages ansehen. Voreingestellte Systemgrenzen MX500 Max. Prozessanzahl des Systems: nproc 532 Max. Prozessanzahl pro Benutzer: maxuprc 100 (Ausnahmen sind "root" u. "admin") Max. Anz. aktiver Inodes im System: ninode 644 Max. Anz. offene Dateien im System: nfile 1051 Max. Anz. offene Dateien pro Prozess: 64 Max. Anz. der "record locks": lck_max 500 Max. Anz. der fuer den Buffer-Cache reservierten HSP-Seiten: bufpages *) Maximale Anzahl Named Pipes: fifopct **) Maximale Anzahl Benutzerkennungen: 300 MX300 MX300 MX300 MX300 -05 -10/-20 -15/-30 Max. Prozessanzahl des Systems: 102 222 414 Max. Prozessanzahl pro Benutzer: 40 40 40 (Ausnahmen sind "root" u. "admin") Max. Anz. Inodes im System: 188 318 526 Max. Anz. offene Dateien im System: 262 470 803 Max. Anz. offene Dateien pro Prozess: 64 64 64 Max. Anz. att Record-Locks: 500 500 500 Maximale Anzahl Named Pipes: **) **) **) Maximale Anzahl Benutzerkennungen: 300 300 300 *) Die Anzahl der fuer den Buffer-Cache reservierten Hauptspeicherseiten ist abhaengig von der Groesse des zur Verfuegung stehenden Hauptspeichers. Eine Hauptspei- cherseite hat beim Einsatz der Prozessoren NS32032 und NS32332 die Groesse 2 KB und beim Einsatz der Prozesso- ren NS32532 die Groesse 4 KB. Standardmaessig belegt der Buffer Cache ungefaehr 10 % des zur Verfuegung stehenden Hauptspeichers. **) Die Anzahl der Named Pipes ist variabel. Sie richtet sich nach der Groesse des Buffer Cache. Standardmaessig werden 66 % des Buffer Cache fuer Named Pipes verwen- det. Die Variable fifopct gibt an, wieviel Prozent des Buffer-Cache fuer Named Pipes verwendet werden. Dieser Wert sollte zwischen 10 und 90 % liegen. Veraendern der Systemgrenzen mit adb Mit Hilfe des adb koennen u.a. die folgenden Systemgrenzen an die Beduerfnisse der Kundenanlage angepasst werden: ninode Anzahl der aktiven Inodes nfile Anzahl von offenen Dateine im System maxuprc Anzahl von Prozessen pro Benutzer ntext Anzahl von Shared-Code-Segmenten ncallout Anzahl von Kernel-Zeitauftraegen lck_max Anzahl der Record-Locks Universum xopen bufpages Anzahl der fuer den Buffer-Cache reservierten Hauptspeicherseiten (1 Hsps. = 4 KB) fifopct %-Anteil des fuer named Pipes verwendeten Caches Den Patch des Systemkerns nimmt man unter der Kennung "root" vor. (Aenderungen sollten Sie ggf. in Absprache mit Ihrer Zweigniederlassung vornehmen, da es Auswirkungen auf das Laufzeitverhalten geben kann.) Die Kommandofolge lautet: Beispiel: # adb -w /dynix (MX500) oder # adb -w /vmunix (MX300) ninode?*w $q Der Wert von nproc darf auf keinen Fall mit Hilfe des adb veraendert werden! Veraendern bestimmter Systemgrenzen mit /etc/maxusers (Achtung: nur MX500) Mit Hilfe des Dienstprogramms /etc/maxusers kann der An- wender die Variable MAXUSER und damit die Werte fuer nproc, ninode und nfile hochsetzen, da diese alle von der Varia- blen MAXUSER abhaengen. Zum Aendern der Werte gehen Sie wie folgt vor: - Abfragen des aktuellen Wertes fuer MAXUSER /etc/maxusers - Aendern des Wertes fuer MAXUSER /etc/maxusers Das Programm veraendert im Betriebssystemkern den Wert der Variablen MAXUSER und alle davon abhaengigen Parameter; deshalb muss anschliessend das System herunter und wieder hochgefahren werden, um den geaenderten Kern zu aktivieren. Hinweis: Mit dem Programm /etc/maxusers kann nicht die An- zahl der moeglichen Logins hochgesetzt werden! Systemauslastung Das System sollte generell nie so weit ausgelastet sein, dass ein Swappen kompletter Prozesse notwendig wird, da dies die Performance wesentlich beeintraechtigt. Mit Hilfe des Programms /usr/etc/monitor (vgl. System- verwalterhandbuch) koennen Sie feststellen, ob das System schon zum Swappen uebergegangen ist. Ist dies der Fall, so ist der Hauptspeicherausbau nicht ausreichend. Bei norma- ler Systemlast findet nur Paging und kein Swapping statt. Aenderungen im Dateisystem Der SINIX V5.22 Kern erlaubt Dateinamen bis zu einer Laenge von 255 Zeichen. Daher laufen Programme, die die Berech- nungsregel: Groesse Dateiverz. = Anz. Eintraege * Groesse eines Eintrags zugrunde legen, u.U. nicht korrekt ab. Obwohl der SINIX V5.22 Kern auch Namen laenger als 14 Zeichen verarbeiten kann, wird Programmen, die im sie-Universum uebersetzt wurden, nur der Zugriff auf die ersten 14 Zei- chen erlaubt. Im xopen-Universum simulieren einige Dienst- programme zwar einen Indexeintrag von 16 Zeichen, ein direkter Zugriff auf die Dateiverzeichniseintraege liefert jedoch den vollstaendigen Eintrag. Wird die volle Pfadna- menlaenge von 1024 Bytes bzw. die volle Dateinamenlaenge von 255 Bytes ausgenuetzt, so koennen einige Utilities diese Pfadnamenlaenge nicht verarbeiten (z.B. rm -rf, ls, pwd, tar, cpio). Bitte beruecksichtigen Sie dies beim Vergeben von Datei- und Dateiverzeichnisnamen. Interprozesskommunikation Die Moeglichkeiten der Interprozesskommunikation sind mit SINIX V5.22 im xopen-Universum durch named pipes, shared memory, messages und semaphore gegeben. Mit dem Kommando ipcs erhalten Sie Informationen ueber einige der aktuellen Interprozessaktivitaeten. Line discipline Da die Universen unterschiedliche Grundeinstellungen fuer die Terminals (line discipline) benoetigen, muessen diese vor dem Universumwechsel u.U. mit dem Kommando ucb stty richtig eingestellt werden. Folgende Einstellungen sind Standard: Universum Startprogramm line discipline ucb /bin/sh old ucb /bin/csh new xopen /bin/sh sys5 sie /bin/sh sys5 Datei install.conf In der Datei install.conf kann man mit UNIVERSE=... das Universum festlegen, in dem die Software installiert wer- den soll. Ausserdem koennen zusaetzlich noch die Variablen PRODUCT, VERSION, RELEASE und UPDATE versorgt werden; hierdurch werden diese Informationen automatisch in die Datei /etc/versionlog eingetragen. Beispiel: PRODUCT="SINIX" VERSION="V5.21A10" UPDATE="N3" RELEASE="11.11.89" Laenge von Variablen einschliesslich Wert Der Name einer Umgebungsvariablen einschliesslich des zuge- wiesenen Wertes darf nicht laenger als 510 Zeichen werden. Andernfalls kann es vorkommen, dass betriebssystemnahe Pro- gramme nicht mehr ablauffaehig sind (z.B. msh). Systemdatei /etc/gettytab Die Datei /etc/gettytab wurde um die Eintraege N fuer das 8-Bit-Terminal 97801-4* und v fuer das Fremdterminal vt220 erweitert. Systemdatei /usr/crash/minfree In der Datei minfree ist hinterlegt, wieviel Speicherplatz auf dem Plattenbereich, auf dem sich das Dateiverzeichnis /usr/crash befindet, mindestens zur Verfuegung stehen muss, damit /etc/savecore einen vmcore nach /usr/crash sichert. Die Datei ist vorbelegt mit 1000 (Fragmenten). Der Wert sollte abhaengig von der Groesse des Hauptspeichers hochge- setzt werden. Das Dateiverzeichnis crash muss nicht zwangsweise im Dateisystem /usr eingetragen sein, sondern kann sich auch in beliebigen anderen Dateisystemen befinden; sie muessen lediglich darauf achten, dass es sich direkt unterhalb des Dateisystems befindet (z.B. /usr1/crash, aber nicht /usr1/xxx/crash). In diesem Fall muessen Sie nur die Umge- bungsvariable CRASH_FS in der Datei /etc/rc entsprechend versorgen (z.B CRASH_FS=/usr1). Geaenderte Geraetedateien fuer Terminals und Drucker Die Major- und Minornummern fuer die Terminals 97801 und 97808 sind gleich, d.h. eine Minornummer < 100 bedeutet keinen geschuetzten Terminalbetrieb mehr. Die Minornummern devno und devno + 100 bezeichnen in Zukunft verschiedene Schnittstellen. Die Minornummern werden mit 0 beginnend der Reihe nach durchnumeriert. Die Majornummer fuer alle Terminal- und Druckerschnittstellen an E/A-Prozessoren ist 38; z.B.: crw--w--w- 1 root root 38, 3 Apr 19 07:06 /dev/tty003 Vorsicht: Mit SINIX V5.22 wurden die Nummern fuer Terminals und Drucker auf 3 Stellen erweitert! (s.o.) Anwendungen, die die Terminalschnittstelle in den raw-Mo- dus stellen, muessen mit Datenverlusten rechnen. Prinzi- piell sollten Anwendungen nie den raw-Modus einstellen, sondern immer nur den cbreak-Modus. Geraetedateien fuer Terminals und Drucker an SIM-Baugruppen Die Majornummer fuer Terminals und Drucker an SIM-Baugrup- pen ist immer 33. Die Minornummer berechnet sich aus der 3-stelligen Nummer des Geraetedateinamens minus 200! Beispiel: tty280 hat die Majornr. 33 und die Minornr. 80 Geraetedateien fuer Pseudo-Terminals Bei der Systeminstallation werden standardmaessig 32 Pseudo- Terminals eingerichtet. Die uebrigen Pseudo-Terminals koen- nen Sie als Systemverwalter ueber das neue Bediensystem unter den Punkten "Konfigurierung - Pseudo-Terminals" ein- richten. Es koennen am MX500 maximal 2046 oder am MX300 maximal 1022 Pseudo-Terminals eingerichtet werden. Nach dem Einrichten neuer Pseudo-Terminals sollten sie ebenfalls die Prozedur /etc/devreorg im Single-User-Modus ablaufen lassen! Pseudo-Terminals werden sowohl fuer LAN als auch fuer ALPHA- COLLAGE benoetigt. Datensicherung Fuer Datensicherungen und Ruecksicherungen stehen die Programme dump und restore im Expertenmodus zur Verfuegung. Diese Programme ermoeglichen auch eine Differenzsicherung (dump) und eine gezielte Ruecksicherung einzelner Dateien oder Dateiverzeichnisse (restore). Es kann auch das Kom- mando tar mit Angabe der entsprechenden Geraetedatei ver- wendet werden. Eine komfortable menuegefuehrte (oder kommandogesteuerte) logische Datensicherung wird mit dem Softwareprodukt DSX angeboten. Native Language Support (NLS) NLS liefert die Grundlage fuer - die Entwicklung internationalisierter Programme, die gleichzeitig in verschiedenen Sprachen ablaufen koennen. - die Unterstuetzung von 8-bit-Zeichensaetzen - die Bekanntgabe der gewuenschten Sprache (Variable LANG). Die Programmentwicklung mit NLS wird nur im xopen-Univer- sum unterstuetzt. Internationalisierte Programme koennen je- doch auch im ucb- bzw. im sie-Universum ablaufen. Fuer die Wirksamkeit der NLS-Funktionen sind die Environ- ment-Variablen NLSPATH und INTLINFO massgebend. Diese sind im xopen-Universum voreingestellt. Die Sprache, in der internationalisierte Programme ab- laufen, ist abhaengig von der Umgebungsvariablen LANG. Die- se Variable wird durch das Bediensystem eingestellt fuer die Universen ucb und xopen bzw. im sie-Universum auf den Wert der entsprechenden Landessprache gesetzt, in der das sie-Universum installiert wurde. Die NLS-Kommandos findstr und insertmsg entfallen in SINIX V5.22, da sie nicht dem Standard XPG3 entsprechen. Folgende im Manual "Internationalisation" beschriebene Schnittstellen sind nicht freigegeben und koennen sich je- derzeit aendern: form_lang(3x) i_asctime(3x) i_cnvtyp(3x) i_end(3x) i_getstr(3x) i_init(3x) i_ldcnv(3x) i_ldcol(3x) i_ldprp(3x) i_ldstr(3x) i_perror(3x) i_prp(3x) i_string(3x) 2.5 Entfallene Funktionen vgl. 2.7. Mit SINIX V5.22 wird im sie-Universum keine Entwicklungs- umgebung mehr zur Verfuegung gestellt. 2.6 Inkompatibilitaeten Die im sie-Universum erstellten Anwendungen koennen unter Beachtung bestimmter Einschraenkungen (siehe unten) im Bi- naerformat auf SINIX V5.22 portiert werden. Von der Binaerkompatibilitaet ausgenommen sind Programme, die bestimmte Annahmen ueber die zugrundeliegende Implemen- tierung treffen. Hierzu zaehlen Programme, die beim System- start aufgerufen werden, sowie Dienstprogramme, die auf Betriebssystemtabellen oder die interne Struktur des Da- teisystems zugreifen. Softwareprodukte, die Geraetedateien fuer Drucker, Plotter, Bildschirme usw. anlegen, duerfen nicht unbedenklich von alten Sicherungen uebernommen werden, da sich evtl. (beim Uebergang von SINIX V5.1x auf SINIX V5.2x) die Major- und Minornummern geaendert haben. Zudem haben sich die Namen der Geraetedateien fuer Drucker und Terminals geaendert (tty004 ist entweder ein Bildschirm oder ein Drucker an der fuenften Schnittstelle). Programme, die den Dateibaum rekursiv durchlaufen, koennen aufgrund symbolischer Links unerwartete Resultate liefern. Einige Systemdateien haben sich im Format geaendert. Das Dateiverzeichnisformat hat sich geaendert. Dateien, die mit .# beginnen, werden nicht mehr - wie in SINIX V.21 - automatisch ueber die Shell-Prozeduren daily, weekly oder monthly im Dateiverzeichnis /usr/adm geloescht. 2.7 Einschraenkungen 2.7.1 Online-Dokumentation SINIX V5.22 beinhaltet keine Online-Dokumentation. Diese Dokumentation wird auf einer separaten Magnetbandkassette zur Verfuegung gestellt und kann bei der fuer Sie zustaendi- gen Zweigniederlassung bezogen werden. Da nach der Instal- lation des Grundsystems die Manualseiten nicht zur Verfue- gung stehen, koennen folgende Funktionen nicht ausgefuehrt werden: man Beschreibung zu einem Kommando anzeigen catman Erzeugen der vorformatierten Ausgabe der Online- Kommandobeschreibung aus Eingabe-Dateien im nroff- Format Einige Menuepunkte des Standardmenuesystems (entwickelt auf Basis von MES) sind nicht mehr auswaehlbar; z.B. Aktuelle Konfigurierung anzeigen, C-Entwicklungssystem. Anwender- programme koennen wie bisher eingehaengt werden. 2.7.2 Kernel-Meldungen auf der Konsole Unter Alpha-COLLAGE werden asynchrone Meldungen des Kerns und systemnaher Komponenten (z.B. login) an der Konsole im Grafik-Modus angezeigt. Die meisten dieser Meldungen wer- den in der Datei /usr/adm/messages mitprotokolliert. Mit der Taste F6 koennen Sie ein Bildschirm-Refresh ausloesen. 2.7.3 Einsatz des Dienstprogramms /etc/addbad Das Dienstprogramm /etc/addbad zum Auslagern defekter Spu- ren auf Festplatten darf auf keinen Fall eingesetzt wer- den, da es dabei zu Systemabstuerzen und Datenverlust auf der betreffenden Festplatte kommen kann. Bei auftretenden Hardwarefehlern auf einer Ihrer Festplatten (Meldung: HARD ERROR ...) wenden Sie sich bitte umgehend an den zustaendi- gen Wartungsdienst und nehmen keine eigenstaendigen Repara- turen vor. 2.7.4 Kommando sendmail Mit dem Kommando sendmail duerfen keine Dateien groesser als 100 KB verschickt werden! 2.7.5 Kommando login Das Kommando login darf aus einer Shell heraus nur mit "exec /bin/login" aufgerufen werden. Andernfalls werden nach dem Betaetigen der -Taste falsche Ausgaben vom Kommando who geliefert. In einem COLLAGE bzw. Alpha- COLLAGE-Fenster sollte kein login aufgerufen werden! 2.7.6 Kommando ps Das ps-Kommando der Version SINIX V5.21 steht im ucb-Uni- versum der SINIX V5.22 weiterhin zur Verfuegung. 2.7.7 Kommando cpio Die Sicherung auf Folgemedien wird von cpio nicht unter- stuetzt! 2.7.8 Modemfaehige Schnittstelle V24 Die im Schnittstellen-Handbuch beschriebene SEAAC-Baugrup- pe mit einer modemfaehigen Schnittstelle V24 wird erst mit SINIX V5.23 unterstuetzt. Ebenso ist die Schnittstelle V24 an einer SIM-Baugruppe derzeit nicht modemfaehig. 2.7.9 Bedienung des Magnetbandkassettenlaufwerks Video-8 mittels mt-Kommando Die Funktionen seod und eod des Dienstprogramms mt zum Positionieren auf das Ende der Daten funktioniert in SINIX V5.22 nicht; ebenso die Funktion status, die den aktuellen Status des Geraetes abfragt. Hinweis zum Zurueckpositionieren des Bandes: nach einem Rueckwaertspositioniervorgang mittels mt ... bsf steht der Schreib-/Lese-Kopf vor der Filemark, daher muss anschliessend die Filemark uebersprungen werden (mit mt ... fsf! Beispiel: Der Schreib-/Lesekopf steht am Anfang des fuenften Bandar- chives (a4) und es soll auf das vierte Bandarchiv (a3) po- sitioniert werden: 1 2 3 4 5 6 7 a0 a1 a2 a3 a4 a5 a6 . . . . zu diesem Zweck positionieren Sie nun um 2 Bandmarken zurueck: ucb mt -f /dev/exa8 bsf 2 anschliessend steht der Schreib-/Lesekopf am Ende des drit- ten Bandarchives (a2)! Um nun das vierte Bandarchiv (a3) bearbeiten zu koennen, muss der Schreib-/Lesekopf am Anfang des Archivs positio- niert sein. Dies erreicht man mit folgendem Kommando: ucb mt -f /dev/exa8 fsf 1 2.8 Verhalten im Fehlerfall Im Fehlerfall werden zu Diagnosezwecken Fehler-Unterlagen benoetigt. Diese schicken Sie bitte zusammen mit der Feh- lermeldung an Ihre zustaendige Zweigniederlassung. Zu den Fehlerunterlagen gehoeren eine genaue Beschreibung der Fehlersituation und Angaben, ob und wie der Fehler reproduzierbar ist. Bei Systemabstuerzen oder -haengern wird fuer die Fehlerdiagnose grundsaetzlich ein Hauptspeicherab- zug benoetigt (vgl. "Ausfall des Systems"). Plattendefekte Sollten waehrend des Betriebs von SINIX V5.22 Plattendefek- te auftreten, so verstaendigen Sie bitte den zustaendigen Wartungsdienst. Auf keinen Fall sollten Sie selbst die im Systemverwalter- handbuch beschriebenen Dienstprogramme zur Behandlung de- fekter Spuren etc. verwenden, da mit diesen Programmen bei unsachgemaesser Bedienung mehr zerstoert als repariert wird (vgl. auch Kapitel 2.7.3). Fehlerhafte Baugruppen Falls waehrend des Betriebs von SINIX V5.22 Fehler auftre- ten, die defekte Baugruppen vermuten lassen, so verstaendi- gen Sie bitte den zustaendigen Wartungsdienst. Ein Dateisystem ist voll Ueberpruefen Sie mit dem df-Kommando, welches Dateisystem voll ist. Ist das usr-Dateisystem voll, so sollten Sie die Dateiver- zeichnisse /usr/adm und /usr/crash auf grosse Dateien durchsuchen, die geloescht werden koennen. Im Dateiverzeich- nis /usr/adm wachsen folgende Dateien staendig an und soll- ten von Zeit zu Zeit in ihrer Groesse reduziert werden (mit dem Kommando "> dateiname"). /usr/adm/lastlog /usr/adm/sus /usr/adm/messages.* /usr/adm/wtmp.* /usr/adm/shutdownlog Ist das root-Dateiverzeichnis voll, so ueberpruefen Sie bit- te, ob im root-Dateisystem Dateien stehen, die nicht zum Grundsystem gehoeren. Loeschen Sie diese gegebenenfalls. Ausfall des Systems In allen Fehlerfaellen schreiben Sie bitte die Systemmel- dungen ab, die auf der Konsole ausgegeben werden. Sie koen- nen eine grosse Hilfe bei der Fehlerdiagnose sein. Z.T. werden diese Meldungen in den Dateien /usr/adm/messages und /usr/adm/shutdownlog mitprotokolliert. Nach einem Systemabsturz wird automatisch ein kompletter Arbeitsspeicherabzug in den Swap-Bereich geschrieben, vor- ausgesetzt die Bootflags wurden von Ihnen nicht veraendert und die Taste AUTOBOOT (MX500) an der Systemeinheit ist gedrueckt. Beim erneuten Hochfahren wird der Hauptspeicherabzug dann unter dem Namen vmcore.* und der aktuelle Kern unter dem Namen dynix.* (MX500) oder vmunix.* (MX300) im Dateiver- zeichnis /usr/crash gesichert. Der Speicherauszug kann fuer die Fehlerdiagnose wichtig sein. Achten Sie darauf, dass auf der usr-Partition immer genuegend Platz (16 bis 64 MB, abhaengig vom Hauptspeicherausbau) fuer einen Hauptspeicher- abzug vorhanden ist. Im Fehlerfall schicken Sie bitte immer alle Dateien aus dem Dateiverzeichnis /usr/crash, die dieselbe Endnummer haben, das Programm /usr/etc/crash und fuer einen MX300 zusaetzlich die Datei /usr/adm/messages zusammen mit allen anderen Fehlerunterlagen an Ihre Zweigniederlassung. Ach- ten Sie dabei bitte darauf, dass alle Dateien mit relativen Pfadnamen gesichert werden. Systemdump erzeugen - MX500 Wollen Sie ohne einen eigentlichen Systemabsturz gezielt einen Systemdump erzeugen, so betaetigen Sie im laufenden Betrieb bei eingeschalteter AUTOBOOT-Taste die folgenden Tasten in der angegebenen Reihenfolge: AUTOBOOT AUTOBOOT CONSOLE CONSOLE NONAME (nicht beschriftete Taste) CONSOLE NONAME Diese Tastenkombination zwingt die Maschine in die panic- Routine, erzeugt einen Dump mit gueltigen Stack-Inhalten und fuehrt anschliessend einen Reboot durch. Systemdump erzeugen - MX300 Wollen Sie an einem MX300 ohne eigentlichen Systemabsturz gezielt einen Systemdump erzeugen, so betaetigen Sie im laufenden Betrieb zuerst die Taste DIAG (?) und anschlie- ssend die Taste RESET (0). Das System ezeugt jetzt selbst- staendig einen Systemdump. 3 Software-Erweiterungen 3.1 Bediensystem SINIX V5.22 wird mit einem neuen Bediensystem auf Basis von COLLAGE V3.0B und dem Dialogmanager V2.0A ausgeliefert. Es unterstuetzt sowohl den Grafik-Modus von 97808-Terminals als auch den alphanumerischen Modus der 97801-Terminals. Das COLLAGE-Bediensystem bietet die volle Funktionalitaet von COLLAGE, erweitert um Funktionen und Programme, die mit denen des bisherigen Standardmenuesy- stems auf Basis des MES vergleichbar sind. Als Systemverwalter mit der Kennung "admin" erhalten Sie als Oberflaeche das COLLAGE-Bediensystem. Systemverwalter- funktionen fuehren Sie abhaengig von Ihrem Terminaltyp unter COLLAGE oder unter Alpha-COLLAGE aus. Unter Alpha-COLLAGE sollten Installationen von Software-Produkten ausschliess- lich im Full-Screen-Modus durchgefuehrt werden, da die mei- sten Installationsprozeduren die 25. Bildschirmzeile be- nutzen, die nur im Full-Screen-Modus sichtbar ist. Zum Arbeiten mit dem Bediensystem auf Alpha-Terminals benutzen Sie bitte den mitgelieferten Tastaturstreifen zu COLLAGE V3.0B (Bestellnr.: U5134-J-Z98-1). Anwender koennen wahlweise mit dem COLLAGE-Bediensystem, dem Menuesystem auf Basis MES oder auf Shellebene arbeiten. Die Anzahl der Anwender, die unter COLLAGE bzw. unter Alpha-COLLAGE arbeiten koennen, ist vom Hauptspeicherausbau und der Groesse des Swap-Bereichs abhaengig; maximal duerfen die Haelfte aller Terminals mit Alpha-COLLAGE betrieben werden. Das "Konfigurieren des lokalen Systems" wurde den Gegeben- heiten der Version SINIX V5.22 angepasst. Neu ist die Konfigurierung der SIM-Boards und TAK's. Ueber die Geraete- auswahl "97801-8bit" koennen 8-Bit-Terminals konfiguriert werden und ueber die Geraeteauswahl "Spezialgeraet" ist es jetzt moeglich, sowohl fuer Schnittstellen V24 als auch fuer Schnittstellen SS97 Nicht-Standard-Geraete einzutragen. Das Terminal 97801-480 ist per Setup-Menue einstellbar auf 7-Bit oder 8-Bit-Modus. Man kann ueber das Bediensystem die Schnittstelle generell auf 8 Bit einstellen und je nach Anwendung per Setup-Menue die 7-Bit- oder 8-Bit-Emulation auswaehlen. Die Geraete zum Betrieb von ASECO (CKT, CKL, SM2 und HKT) duerfen nicht an SIM-Baugruppen konfiguriert werden. Achtung: Die Benutzerklasse der Anwender kann von menu auf collage, aber nicht von collage auf menu geaendert werden. Das COLLAGE-Bediensystem benutzt Lock-Dateien, um den exklusiven Aufruf einzelner Anwendungen sicherzustellen. Lock-Dateien werden normalerweise von der Anwendung bei Beendigung geloescht. Bei einem Programmabbruch oder nach einem Systemabsturz kann es noetig werden, dass die Lock-Da- teien von Hand geloescht werden muessen. Betroffen sind ggf. die Dateien /tmp/Konf, /tmp/Login, /tmp/Admprint, /tmp/Prntkonf, /tmp/Admprint.. Die Anwendung Post setzt auf dem SINIX-Kommando /usr/bin/mailx auf. Fuer die mit MES entwickelten Menueanwendungen steht im COL- LAGE-Bediensystem eine Ablaufumgebung zur Verfuegung. Soft- ware-Produkte, wie z.B. LAN/REMOS, haben die Moeglichkeit, eigene Menues in das COLLAGE-Bediensystem einzuhaengen, die dann den Benutzern ueber die Menueleiste zur Auswahl angebo- ten werden. Die geaenderte Menueleiste wird jedoch erst nach einem erneuten Start des Bediensystems angezeigt. 3.2 Virtuelles Plattensubsystem (VPSS) Um Datenverlust bei Plattenproblemen zu vermeiden bzw. um in einem solchen Fall ohne grosse Zeitverzoegerung weiterar- beiten zu koennen wird ab SINIX V5.22 ein virtuelles Plat- tensubsystem (VPSS/Spiegelplattensystem) unterstuetzt. Damit ist ueber Pseudogeraetetreiber fuer den Benutzer transparent die automatische Duplizierung der Daten einer Partition moeglich. Die Duplizierung der Daten erfolgt von einer primaeren auf eine oder mehrere sekundaere Partitionen. Folgende Hinweise und Einschraenkungen sind zu beachten: - Das VPSS kann nur fuer raw-devices eingesetzt werden, also nicht fuer Plattenbereiche, die ein Dateisystem enthalten. Im Wesentlichen kann VPSS somit fuer Informix- Turbo eingesetzt werden. - Falls Primary- und Secondary-Partition nicht gleich gross sind wird die kleinere der beiden Partition-Groessen fuer den nutzbaren Bereich verwendet. - Eine c-Partition darf nicht gespiegelt werden, da sie die Fehlstellenliste enthaelt! - Spiegelung einer a-Partition: Secondary Partition darf nur eine a-Partition sein! Die Anwendung muss dabei den ersten Block der Partition ueberspringen (Offset von 512 Bytes), da der Block 0 mit den Platteninformationen nicht ueberschrieben werden darf. Dieser Offset wird von VPSS nicht beruecksichtigt! - Wuenschenswerte Konfiguration fuer Primary- und Secondary- Partition: - unterschiedliche Platten - unterschiedliche Controller - Unterschiedlicher Multibus-I 3.3 Meldungsdateien fuer internationalisierte Kommandos SINIX V5.22 enthaelt standardmaessig sowohl die deutschen als auch die englischen Meldungsdateien fuer die internatio- nalisierten Kommandos. Fuer alle anderen Sprachvarianten sind die entsprechenden Meldungsdateien als eigene Liefereinheit zu bestellen: Message-Files SINIX-SPR- 3.4 Kommandos Mit SINIX Version 5.22 wurden weitere Kommandos auf der Basis von NLS internationalisiert. Die Meldungsdateien dieser sprachabhaengigen Kommandos sind im Dateiverzeichnis /usr/.lib/nls/msg hinterlegt. Beachten Sie, dass es von dem Inhalt der Variablen LANG abhaengig ist, welche Ausgaben die internationalisierten Programme (z.B. mail, sort, tr, ced) liefern. Viele Kommandos des xopen-Universums sind jetzt 8 Bit clean. /etc/dump Aus aktuellem Anlass weisen wir auf folgenden Sachverhalt hin: Bitte beachten Sie, dass Sie sich bei unsachgemaessem Aufruf des Kommandos dump den Inhalt ganzer Partitions loeschen koennen. Die zu sichernde Partition darf auf keinen Fall als zum Schalter f angegeben werden. In diesem Fall wird diese Partition als Sicherungsmedium ver- wandt; d.h. der Inhalt wird von der Ausgabe des dump ueber- schrieben. Achtung: Wenn die Geraetedatei, von der gelesen wird, identisch ist mit der Geraetedatei, auf die geschrie- ben wird, werden Bereiche ueberschrieben, die noch nicht gelesen wurden. Damit ist einerseits das Dateisystem zer- stoert und andererseits die dump-Sicherung unbrauchbar. /etc/restore Das Kommando restore bietet mit der Option -a die Moeglich- keit, ein anderes Dateiverzeichnis als /tmp fuer das Anle- gen temporaerer Dateien festzulegen. /bin/tar Das Kommando tar im ucb- und sie-Universum wurde um die Option "I" erweitert. Zusammen mit der Angabe eines Datei- namens werden hiermit die zu sichernden/einzulesenden Da- teien aus dieser Datei entnommen. Achtung: Dieser Schalter ist nicht X/OPEN kompatibel. Es ist daher nicht gesichert, dass dieser Schalter in Folge- versionen uebernommen wird. Beispiel: tar cvfI /dev/rts0 DATSICH /usr/bin/tar Mit SINIX V5.22 wird fuer das xopen-Universum ein neuer tar ausgeliefert. Datentraeger, die mit dem "xopen tar" der Version V5.22 (XPG3-tar) beschrieben werden, koennen mit dem "xopen tar" bis einschliesslich V5.21 und dem "ucb tar" nicht mehr gelesen werden. Datentraeger, die im alten For- mat beschrieben wurden, koennen weiterhin gelesen werden. Der "xopen tar" (V5.21, XPG2-tar) erhaelt den Namen otar. Bei Sicherungen mit dem "xopen tar" der Version V5.22 wer- den "symbolic" und "conditional symbolic" Links aufgeloest. Dies fuehrt zur Mehrfachsicherung. Der "xopen tar" (V5.22) kann zwar Sicherungen lesen, die sich ueber mehrere Magnetbaender, Kassetten oder Dis- ketten erstrecken, kann aber derartige Sicherungen nicht schreiben. Die Verarbeitung mehrerer Archive auf einem Magnetband oder einer Kassette ist nicht moeglich. Wird ein Archiv als nicht XPG3-kompatibel erkannt, erfolgt ein "rewind", anschliessend wird der "xopen tar" mit dem "ucb tar" ueberladen. Zum Beschreiben von Installationsbaendern/-disketten sollte weiterhin der ucb tar oder der otar verwendet werden. Das Kommando /etc/superinstall setzt einen Pfad, bei dem zuerst das Dateiverzeichnis /.att durchsucht wird. In /.att ist fuer das Universum att ein Verweis von tar auf otar ein- getragen. /usr/etc/cptape - Kopieren von Magnetbandkassetten Mit der Prozedur /usr/etc/cptape wird Ihnen ein Shell- script zum Kopieren von Magnetbandstreamerkassetten zur Verfuegung gestellt. Bitte verwenden Sie diese Prozedur um sich eine Sicherungskopie Ihres Installationsbandes an- zulegen. Die Prozedur kopiert keine Video-8 Kassetten! /etc/devreorg - Konfigurierung zusaetzlicher Terminals Bei der Konfigurierung zusaetzlicher Terminals werden die zugehoerigen Geraetedateien physikalisch ans Ende des Datei- verzeichnisses /dev angehaengt. Dies fuehrt zu erheblichen Performance-Verlusten beim Arbeiten mit diesen Terminals. Um diese Performance-Verluste zu verhindern, steht die Prozedur /etc/devreorg zur Verfuegung. Mit Hilfe dieser Prozedur wird das gesamte Dateiverzeichnis /dev dahinge- hend reorganisiert, dass alle Geraetedateien fuer lokale Terminals physikalisch am Anfang stehen, gefolgt von den virtuellen und den Pseudo-Terminals. Vorsicht: Die Prozedur /etc/devreorg muss im Single-User- Modus aufgerufen werden! Bitte entfernen Sie einen eventuell vorhandenen symbolischen Link von /tmp in eine andere Par- tition, da sonst die Prozedur nicht ordnungsge- maess ablaufen kann (innerhalb der Prozedur werden alle Dateisysteme abgehaengt!)! /bin/ps Beim Kommando ps hat sich mit XPG3 die Bedeutung verschie- dener Optionen geaendert. -a Die Prozessgruppenfuehrer werden nicht angezeigt. -l Das Ausgabeformat hat sich mit XPG3 geaendert. -t Hier koennen jetzt mehrere Terminalnummern angegeben werden. -e Auflisten aller Prozesse im System. -u Auflisten aller Prozesse der Benutzer, die nach dem Schalter -u angegeben sind: . -g Auflisten aller Prozesse der Prozessgruppenfuehrer, die nach dem Schalter -g angegeben sind: . -d Auflisten aller Prozesse ausser den Prozessgruppenfueh- rern -p Auflisten aller Prozesse, deren PID nach dem Schalter -p angegeben ist: . Die Schalter -c, -s, -v, -w, -x und entfallen mit XPG3. /etc/pstat Bei Angabe des Schalters -T kann man der Ausgabe nicht mehr entnehmen, wieviele Inodes aktuell gebraucht werden. Ursache ist die geaenderte Verwaltung der Inodes. Die Inodes werden in einem Cache verwaltet; auch Inodes, die nicht mehr gebraucht werden, bleiben in dieser Inodetabel- le stehen. Wird ein Inode gebraucht, der bereits in der Inodetabelle vorhanden ist, so kann auf diesen Inode sehr performant zugegriffen werden. Muss ein neuer Inode in die Inodetabelle geladen werden, so wird ein Inode der Tabelle ueberschrieben. Dies ist der Inode, auf den die laengste Zeit nicht zugegriffen wurde (LRU-Cache). /usr/bin/deact_ttys und /usr/bin/act_ttys Wenn die Leitung vom Rechner zu einem SIM-Board unterbro- chen ist, erscheint fuer jedes angeschlossene Terminal zyk- lisch eine Fehlermeldung an der Konsole. Um dies zu ver- hindern, wird dem Systemverwalter die Moeglichkeit geboten, Terminals zu deaktivieren und zu aktivieren. Syntax: deact_ttys ttynnn act_ttys ttynnn Als weiteres Argument akzeptieren beide Programme den Schalter -l, der bewirkt, dass eine sortierte Liste aller aktiven bzw. inaktiven Terminals an SIM-Boards ausgegeben wird. Gueltige tty-Nummern fuer Terminals an SIM-Boards sind: 200 - 455. /etc/maxusers (nur MX500) Das Kommando maxusers gibt den aktuellen Wert der Varia- blen MAXUSER aus, sofern es ohne Argument aufgerufen wird. Zum Aendern der Variablen MAXUSER kann der gewuenschte neue Wert als Argument bei /etc/maxusers angegeben werden (vgl. Kapitel 2.4). /bin/uname Die Ausgaben verschiedener Optionen des Kommandos uname haben sich geaendert. Der Schalter -r liefert den Release des Betriebssystems. Der Schalter -v liefert den Stand innerhalb eines Re- leases. /etc/keyload Das Kommando keyload ist erweitert worden. Es koennen jetzt auch Tastaturtabellen fuer 8-Bit faehige Terminals 97801-480 geladen werden. Wollen Sie die Tastaturbelegung eines Ter- minals von einem anderen Terminal aus laden, so muessen Sie den Terminaltyp als Parameter beim keyload-Aufruf angeben und die Terminalschnittstelle richtig einstellen. Wird keyload an dem Terminal aufgerufen, dessen Tastaturtabelle geladen werden soll, so werden die Leitungsparameter durch den keyload selbst entsprechend eingestellt. Aufrufsyntax: /etc/keyload -t type tty keytable type spezifiziert den Terminaltyp und kann folgende Werte annehmen: new Tabelle fuer 97801 (7-Bit-Terminal) 7new Tabelle fuer 97801-480 (7-Bit-Emulation) 8bin Tabelle fuer 97801-480 (8-Bit-Emulation) Beispiel: Im xopen-Universum wird die Terminalschnittstelle richtig eingestellt und fuer tty003 die franzoesische Tastaturtabel- le geladen. Anschliessend wird die Terminalschnittstelle wieder in den Ursprungszustand gebracht. Es wird vorausge- setzt, dass unter der Linediscipline sys5 gearbeitet wird. xopen stty -opost < /dev/tty003 /etc/keyload -t 8bin tty003 franz xopen stty opost < /dev/tty003 /bin/tr Das Kommando tr wurde an XPG3 angepasst und ist jetzt in der Lage Multibyte-Buchstaben zu verarbeiten. Hieraus ergibt sich, dass beim Lesen von einem zeichenorientierten Geraet (z.B. ein Terminal) ein Zeichen moeglicherweise das erste Zeichen eines Multibyte-Buchstaben sein kann. tr wartet dann auf weitere Zeichen (maximal 3) oder das Zei- chen EOF, bevor seine Ausgabe erfolgt. Dieser Effekt tritt nur auf, wenn in der internationalisierten Datenbasis Mul- tibyte-Buchstaben definiert sind. Bereits mit SINIX V5.21 wurde das Kommando tr internatio- nalisiert. Der tr benutzt internationalisierte regulaere Ausdruecke; diese Ausdruecke enthalten keine Elemente, die eine Umsetzung von Gross- in Kleinbuchstaben ausdruecken koennen. Daher kann der tr nur dann Grossbuchstaben korrekt in Kleinbuchstaben umsetzen, wenn die Datenbasis bestimmte Bedingungen erfuellt (z.B. En_US.ASCII). Die meisten Spra- chen koennen diese Bedingungen jedoch nicht erfuellen. Eine sprachunabhaengige Umsetzung von Gross- in Kleinbuchstaben koennen Sie mit folgendem C-Programm erzielen: include include include main() int c; setlocale(LC_ALL,""); while ((c=getchar()) != EOF) putchar(tolower(c)); exit(0); Wenn Sie mit der Datenbasis De_DE.646 arbeiten, koennen Sie zur Umsetzung folgende Syntax verwenden: tr ' :upper: ' ' :lower: ' 3.5 Systemdateien /etc/herald/9780?* und /etc/herald/vt200 Mit SINIX V5.22 wird ein neuer Herald ausgeliefert, der das XPG3-Logo enthaelt. Die Links fuer die einzelnen Bild- schirme werden jeweils bei der Konfigurierung eingerich- tet. Damit ist es moeglich, den Herald auch auf vt200-Ter- minals auszugeben. /etc/versionlog In der Datei versionlog ist hinterlegt, welche Software seit der letzten Betriebssystem-Installation auf Ihr Sy- stem gebracht wurde. /usr/admin/.products/SINIX /usr/admin/.products/SINIX_V2.1 In dem Dateiverzeichnis /usr/admin/.products wurden Ein- traege fuer SINIX und fuer SINIX_V2.1 aufgenommen. Das Kom- mando /etc/sysname meldet weiterhin "Version: V5.2". /usr/admin/.porducts Die aktuell installierte SINIX-Version inklusive Nach- tragsbezeichnung koennen Sie ueber den Menuepunkt "Instal- lierte Softwareprodukte" bzw. direkt in der Datei /usr/ad- min/.products/SINIX ermitteln. 4 Hardware 4.1 Grafik-Bildschirm In der Betriebsart "alphanumerisch" wird der Bildschirmar- beitsplatz 97801 bis auf kleine Einschraenkungen emuliert. Die Darstellungsattribute (halbhell, blinkend, invers) stehen in der grafischen und alphanumerischen Betriebsart hardwareunterstuetzt zur Verfuegung. Folgende Escape-Sequenzen werden innerhalb von COLLAGE nicht unterstuetzt (vgl. Schnittstellenhandbuch): ESC 0w Anfordern des Schluesselschalterstatus ESC 6u Umstellen auf internationale Tastaturbelegung ESC 7u Umstellen auf deutsche Tastaturbelegung ESC 9v Gesamten Zeichengenerator ausgeben 4.2 8-Bit-Terminal Ein 8-Bit-Terminal am MX500 kann erst ab dem SCED-Firmwa- restand 43A als Konsole eingesetzt werden. In diesem Fall muss es jedoch waehrend der Installation des Betriebssystems grundsaetzlich im 7 Bit Modus betrieben werden. Fremdterminals sind generell nicht als Konsolterminals zu- gelassen. Falls am MX300 ein 8-Bit-Terminal als Konsole verwendet wird, muss es beim Hochfahren der Anlage mit der 7 Bit Emu- lation betrieben werden. 4.3 CPU-Baugruppen (MX500/MX300) MX500 Mit SINIX V5.22 werden die Prozessoren NS32032, NS32332 und NS32532 der Firma NSC unterstuetzt. In den Modellen MX500-75 und MX500-85 sind standardmaessig die Prozessoren NS32532 eingebaut. Der Prozessor NS32532 ist ein 32 Bit Prozessor, der mit einer Taktfrequenz von 25 MHz betrieben wird. Es koennen maximal 4 CPU-Baugruppen mit je 2 Prozessoren in den MX500 eingebaut werden. MX300 Mit SINIX V5.22 werden die Prozessoren NSC32332 und NSC32532 unterstuetzt. Es sind 32 Bit Prozessoren. Der Prozessor NSC32332 ist mit 15 MHz getaktet und wird von einer FPU NSC32081 und einer MMU NSC32382 unterstuetzt. Dieser Prozessor wird bei den Systemen MX300-05/10 und 9733-10/20(205). Der Prozessor NSC32532 wird mit 25 Mhz getaktet und wird von einer MMU on Chip sowie einer FPU NSC32381 unterstuetzt. Dieser Prozessor wird bei den Syste- men MX300-15/30 und 9733-20(208) eingesetzt. 4.4 E/A-Baugruppen Eine E/A-Baugruppe besitzt 6 Schnittstellen, wobei zwi- schen 3 Varianten gewaehlt werden kann: - E/A-Baugruppe mit 6 x SS97 - E/A-Baugruppe mit 4 x SS97 und 2 x V24 - E/A-Baugruppe mit 6 x V24. Generell koennen bis zu 3 AFP-Anschluesse pro E/A-Baugruppe eingebaut werden, ueber die dann durch Ergaenzung des E/A- Prozessors mit einem AFP-Anschlusszusatz mit Erweiterung drei Arbeitsplaetze, bestehend aus Bildschirmeinheit und Drucker (bzw. 2 Bildschirmen), im Inhouse-Bereich bis zu einer Entfernung von 2000 m angeschlossen werden koennen. In einen MX500 koennen max. 16, in einen MX300 max. 5 und in einen 9733 max. 2 E/A-Baugruppen eingebaut werden. Bei Verwendung von mehr als 24 Bildschirmarbeitsplaetzen an einer MX500-75 bzw. MX500-85 muessen AFP-Baugruppen verwen- det werden. Mittels des SLIP-Protokolls koennen TCP/IP-Verbindungen ueber asynchrone Leitungen zwischen Rechnern hergestellt werden. Pro E/A-Baugruppe ist eine SLIP-Verbindung freigegeben. Diese kann an SS97-Schnittstellen mit einer Geschwindigkeit von 38400 Baud betrieben werden, an RS232-Schnittstellen mit 19200 Baud. Die SLIP-Verbindung ist nicht fuer den Betrieb von DFS freigegeben. Eine Beschreibung von SLIP finden Sie im 1. Nachtrag zum REMOS-Manual V3.0A. 4.5 TACSI (Terminal Attachment Concept of SINIX) Zusaetzlich zu den bekannten E/A-Baugruppen unterstuetzt SI- NIX V5.22 ein neues Terminal-Anschluss-Konzept - TACSI. TACSI ist ein Terminal-Anschluss-Konzept in SINIX fuer den Inhouse-Bereich. Es bietet mit seiner Busstruktur die Moeg- lichkeit, an zwei 2-Drahtleitungen ueber vier TAK's (Termi- nal-Anschluss-Konzentrator) maximal 16 SINIX-Endgeraete an- zuschliessen. Damit ist die Anzahl der insgesamt anschliess- baren Endgeraete (Terminals und Drucker) beim MX500 auf 256 und beim MX300 auf 44 begrenzt. Vorsicht: Die Anzahl der gleichzeitig arbeitenden Benutzer ist von der installierten KEY-Diskette abhaengig. TACSI besteht aus den folgenden Komponenten: - SIM (Serial Interface Multiplexer) Diese Multibus-I-Flachbaugruppe kann systemseitig an- stelle von E/A-Prozessoren installiert werden. Sie stellt zwei AFP-2-Draht Busanschluesse zur Verfuegung. Es werden maximal 8 SIM-Baugruppen unterstuetzt. Vorsicht: Es duerfen nicht ein E/A-Board mit 16 KB Mail- box und ein SIM-Board mit derselben Boardnum- mer verwendet werden. - TAK (Terminal Anschluss Konzentrator) Der TAK wird als externes Konzentratormodul den SINIX- Endgeraeten vorgeschaltet und bietet maximal vier SINIX- Peripherie-Schnittstellen, wahlweise SS97 oder V24. Es koennen maximal zwei TAKs an einem AFP-2-Draht-Bus ange- schlossen werden, d.h. vier TAK's pro SIM. Konfigurationsbeispiel: Multibus I SIM | | | Filter | | Anschlussfeld | --|-- Leitung 0 | | Leitung 1 | | | | | | Rangierverteiler | | | | 4xSS97 | | 4xSS97 4xV.24 TAK1-------| |-------TAK1 4xV.24 ADo8| |ADo8 | | | | 4xSS97 | | 4xSS97 4xV.24 TAK2-------| |-------TAK2 4xV.24 ADo8| |ADo8 | | A A (Abschlusswiderstand 120 Ohm) Leitungslaenge max. 2000 m Datenuebertragungsnetz Das Datenuebertragungsnetz basiert auf einer ungeschirm- ten 2-Draht-Leitung (Telefonnebenstellen-Netz) als AFP- 2-Draht-Bus mit einer maximalen Laenge von 2000 Metern. Die Reichweite ist abhaengig vom Kabeltyp und der Leitungsqua- litaet. Die Datenuebertragung zwischen dem SINIX-Mehrplatz- system und den SINIX-Endgeraeten erfolgt halbduplex mit dem Alternierenden-Flanken-Puls-Verfahren (AFP) und wird mit der Uebertragungsprozedur HDLC-unbalanced gesichert. Die Uebertragungsgeschwindigkeit betraegt 187,5 Kbit/s. Die Anzahl der gleichzeitig performant an einem SINIX- Rechner betreibbaren Bildschirmarbeitsplaetze entnehmen Sie bitte dem Kapitel 2.1 dieser Freigabemitteilung. Werden an ein SIM-Board 16 Terminals angeschlossen, so kann sich die Ausgaberate der Zeichen pro Sekunde pro E/A- Board um den Faktor 3 verlangsamen! 4.6 Hauptspeicher Der Hauptspeicherbedarf des Betriebssystems ist dem Haupt- speicherausbau angepasst. Der Speicherplatz wird beim Sy- stemstart dynamisch angefordert. Sie koennen den Hauptspei- cherbedarf des Betriebssystems (in Byte) ermitteln aus der Differenz der Groessen real mem minus avail mem, die beim Hochfahren des Systems an der Konsole ausgegeben werden. System min. HSP-Ausbau max. HSP-Ausbau MX300-10 4 MB 16 MB MX300-15 4 MB 12 MB MX300-30/9733-20 8 MB 16 MB 9733-10 4 MB 12 MB MX500-75 16 MB 64 MB Der Haupspeicherausbau des MX500 kann ueber 16 MB-, der des MX300 ueber 4 MB-Hauptspeichererweiterungen vergroessert weden. 4.7 Festplatten 4.7.1 MX500 SINIX V5.22 unterstuetzt auf dem MX500-75 nunmehr zwei wei- tere Festplattentypen, deren Aufteilung in maximal 6 Be- reiche Sie bei der Installation frei bestimmen koennen. Standardmaessig gibt es fuer jeden Festplattentyp drei verschiedene Aufteilungen A, B und C, die mittels des Programms installsys bei der Installation geaendert werden koennen. Es sind maximal 8 Plattenbereiche logisch ansprechbar, die sich teilweise ueberdecken (Partition a - h). Die Partition c bezeichnet immer den gesamten logischen Plattenbereich. Fuer die Systemplatte muss die Partition a mindestens die Groesse 12 MB und die Partition b die Groesse Hauptspeicher- ausbau + 4 MB haben. Der restliche Teil der Platte kann frei dimensioniert werden. Der root-Bereich muss immer auf der Partition a installiert werden, der Standard-Swap-Bereich liegt immer auf der Par- tition b der Platte, auf der das root-System installiert ist. Als zusaetzliche Swap-Bereiche duerfen beliebige Partitionen verwendet werden. Alle Swap-Bereiche muessen zusammen min- destens zwischen 2 und 5 mal so gross sein wie der Haupt- speicherausbau, wobei darauf geachtet werden sollte, dass sie dabei moeglichst gleichmaessig ueber mehrere Platten verteilt sind. Generell ist es sinnvoll, root- und usr-Bereich auf ver- schiedenen Platten zu installieren. Micropolis 1558 - 380 MB A c B a b h g C a b h d e f Darstellung der Plattenaufteilung (die Darstellung ist nicht massstabsgetreu) Logische Einteilung der Platte bei Auslieferung MC1558 - 380 MB Partition Kap. (KB) /dev/is*a 8160 /dev/is*b 33656 /dev/is*c 312120 /dev/is*d 8160 /dev/is*e 54312 /dev/is*f 60432 /dev/is*g 122904 /dev/is*h 145856 * steht fuer 0 - 11, je nachdem um welche der maximal 12 moeglichen Platten es sich handelt. Formatierte Kapazitaet: pro Laufwerk 313,8 MB (davon nutzbar: 303,3 MB) pro Zylinder 255 KB pro Spur 17 KB pro Sektor 512 B Zylinder/Laufwerk 1224 (davon nutzbar: 1218) Spuren/Zylinder 15 Sektoren/Spur 35 (davon nutzbar: 34) Micropolis 1568 / Imprimis WREN VI - 760 MB A c B a b h g C a b h d e f Darstellung der Plattenaufteilung (die Darstellung ist nicht massstabsgetreu) Logische Einteilung der Platte bei Auslieferung MC1568 / - 760 MB WREN VI Partition Kap. (KB) /dev/is*a 12320 /dev/is*b 36960 /dev/is*c 648720 /dev/is*d 12320 /dev/is*e 118848 /dev/is*f 240480 /dev/is*g 371656 /dev/is*h 225376 Zylinder/Laufwerk 1632 (davon nutzbar: 1626) Spuren/Zylinder 15 Sektoren/Spur 54 (davon nutzbar: 53) Die Groessenangaben beziehen sich auf Platten ohne Dateisy- stem. Das Einrichten eines Dateisystems beansprucht ca. 15% der formatierten Plattenkapazitaet. Bei der Systeminstallation werden die Festplatten erkannt und gemaess der Kundenwuensche ins System eingebunden. Be- achten Sie, dass bei Einsatz von INFORMIX-Turbo die hierfuer verwendeten Partitions nicht gemountet werden duerfen. Hinweis: Die bisher schon mit aelteren SINIX-Versionen unterstuetzten Festplatten M2333K, M2344K und MegaFile1300 werden von SINIX V5.22 weiterhin unterstuetzt. Die genauen Angaben zu den Platten- kapazitaeten und Partitiongroessen finden Sie in der Freigabemitteilung zu SINIX V5.21! 4.7.2 MX300 SINIX V5.22 unterstuetzt 5-1/4-Zoll Festplatten mit unter- schiedlichen Groessen. Bei der Installation werden die Fest- platten in 3 oder 4 Plattenbereiche aufgeteilt: root-Be- reich (a), 1 oder 2 usr-Bereiche (g, h) und Swap-Bereich (b). Die g-Partition kann wieder in 3 Teile (d, e, f) ge- teilt werden. Standardeintraege: Plattentyp a (KB) b (KB) g (KB) h (KB) MC1355 8024 20536 109888 - ME1300 7956 21012 76296 141576 MC0355 8024 20536 85408 - MC1568 12720 36705 371265 225382 MC1558 8160 21675 79050 201705 Die Groessenangaben beziehen sich auf Platten ohne Dateisy- stem. Das Einrichten eines Dateisystems beansprucht ca. 15% der formatierten Plattenkapazitaet. Die 760 MB Platte kann nur betrieben werden, wenn der Con- troller Storager III eingebaut ist. 4.8 5 1/4 Zoll Diskettenlaufwerk Es koennen 5 1/4 Zoll "double sided" "double density" Dis- ketten mit einer Spurdichte von 96 tpi (Spuren pro Zoll) verwendet werden. Auf MX500-70/-75/-80/-85 koennen auch "high density" Disketten verwendet werden, die dann jedoch mit /etc/flformat -c H formatiert werden muessen. Voraussetzung fuer die Bearbeitung von HD-Disketten auf MX 300 ist folgender Hardwarestand: Storager II, Boardrev.level 100, Firmware 27. Storager III, Boardrev.level 20, Firmware 34. Zum Formatieren der HD-Disketten verwenden Sie folgendes Kommando: /etc/flformat -c H -s 15 4.9 Magnetbandkassettenstreamer Der Magnetbandkassettenstreamer dient vorwiegend als Si- cherungsmedium fuer die System- und Benutzerdaten. Ausserdem wird das Betriebssystem ueber eine Magnetbandkassette in- stalliert. Der Magnetbandkassettenstreamer wird ueber die Geraetedatei- en /dev/rts0 und /dev/rts8 angesprochen. Waehrend bei Anga- be von /dev/rts0 beim close automatisch zurueckgespult wird, bleibt das Band bei Angabe von /dev/rts8 hinter der Tapemark stehen bzw. es wird hinter die den Daten folgende Tapemark positioniert. MX300 Unter SINIX V5.22 wird vom Systemkern ein Puffer von 1000 KB zur Beschleunigung der Ein-/Ausgabeoperationen am Streamer verwendet. Bei allen Rechnern mit der MMU 32382 wird der Puffer erst beim Eroeffnen der Geraetedatei re- serviert. 4.9.1 Laufwerkstypen Es werden Magnetbandkassettenstreamer mit 9 Spuren (max. 60 MB) und 18 Spuren (max. 155 MB) unterstuetzt. Folgende Laufwerkstypen werden verwendet: MX300 MX500 a) Laufwerke mit 60 MB Kapazitaet: TDC 3319 TDC 3319 TDC 3610 TDC 3620 b) Laufwerke mit 155 MB Kapazitaet: TDC 3650 TDC 3660 Beim MX300 ist ein Aufkleber mit der Laufwerkskapazitaet an der Innenseite der Steamerklappe angebracht. Ist kein Auf- kleber vorhanden handelt es sich um ein 60 MB-Laufwerk. In den Rechnermodellen MX500 -75/-85 sind standardmaessig 155 MB-Laufwerke eingebaut. 4.9.2 Zugelassene Magnetband-Kassetten Es sind ausschliesslich Kassetten vom Typ U7-H3 zugelassen. 4.10 1/2 Zoll Magnetbandgeraet FS1000/FS2000 Neben den Funktionen des Magnetbandgeraetes FS1000 (3504-160) unterstuetzt das Magnetbandgeraet FS2000 (3504-625) auch Schreibdichten von 800 und 6250 bpi. Die zum Arbeiten mit dem Magnetbandgeraet zur Verfuegung stehenden Geraetedateien sind im Systemverwalterhandbuch zu SINIX V5.22 beschrieben. Wird eine Geschwindigkeit von 50 ips gewaehlt, so wird das Band gleichmaessiger transportiert (streaming mode) als bei einer Geschwindigkeit von 100 ips. Tritt beim Lesen/Schreiben auf das Magnetbandgeraet ein Fehler auf, so muessen Sie unter Umstaenden 30 Minuten auf ein Timeout des Treibers warten bis das Magnetbandgeraet wieder ansprechbar ist. Die Zeitdauer bis zum Timeout muss so lang gewaehlt werden, damit ein ggf. langlaufendes Kom- mando nicht abgebrochen wird und die folgenden Kommandos fehlerfrei ausgefuehrt werden koennen. 4.11 Magnetbandkassettenlaufwerk 2,3 Gbyte (Video-8) (nicht am MX300 -05) Mit SINIX V5.22 wird erstmals ein Video-8-Magnetbandkas- settenlaufwerk unterstuetzt (Format: 5 1/4 Zoll). Das Magnetbandkassetten Laufwerk dient als Sicherungsmedi- um fuer System- und Benutzerdaten. Der Anschluss des Laufwerks an den MX500 erfolgt ueber den NCR Hostadapter ADP32-03. Die Daten werden auf speziellen 8-mm Video Kassetten im sogenannten Helical-Scan-Verfahren aufgezeichnet. Die auf- gezeichneten Spuren sind 0.025 mm breit, der durchschnitt- liche Spurabstand betraegt 0.031 mm. Folgende Geraetedateien stehen zum Arbeiten mit dem Magnet- bandkassettenlaufwerk Video-8 zur Verfuegung: interne Filemark Kassetten- Geraetedatei Pufferung bei close auswurf rewind bei close /dev/exa0 ja ja nein ja /dev/exa0v nein ja nein ja /dev/exa8 ja ja nein nein /dev/exa8v nein ja nein nein Die Geraetedatei /dev/exa ist ein symbolischer Link auf die Geraetedatei /dev/exa0. Bei den Geraetedateien exa0 und exa8 erfolgt eine Zwischen- pufferung der Daten im Treiber, wohingegen bei den Geraete- dateien exa0v und exa8v keine Pufferung der Daten erfolgt. Um den Streaming-Modus des Laufwerks aufrecht zu erhalten muss eine Zwischenpufferung im Treiber erfolgen. Daher sollten nach Moeglichkeit nur die Geraetedateien /dev/exa0 und /dev/exa8 verwendet werden. Es koennen dieselben Kommandos wie fuer den Magnetbandkas- settenstreamer benutzt werden: tar, dump/restore, dd, mt, cp .. . Beispiele: a) /etc/dump 0fs /dev/exa0 122000 /usr1 b) tar cvf /dev/exa8 /usrX (Archiv 1) tar cvf /dev/exa8 /usrY (Archiv 2) tar cvf /dev/exa0 /usrZ (Archiv 3) Nach dem letzten tar-Kommando erfolgt ein rewind. Mit Hil- fe des Kommandos mt kann nun auf die einzelnen Archive po- sitioniert werden (vgl. Kapitel 2.7.7): c) mt -f /dev/exa8 fsf 2 (positioniert auf Archiv 3) tar tvf /dev/exa8 (Inhalt des 3.Archivs) d) Sicherung auf Folgebaender: ucb tar cvfk /dev/exa0 2097100 /usrX Mit dem Schalter k wird die Kapazitaet des Video-8-Bandes in KByte ( entspricht 2048 MByte) angegeben. Somit wird ggf. ein Folgeband angefordert. Spurformat Jede Spur besteht aus 8 1K-Datenbloecken. Ein Formatieren des Bandes ist nicht erforderlich. Beim Schreiben auf Band wird ein 'Read after Write' - Check durchgefuehrt. Technische Daten Kapazitaet (brutto): 2332 Mbyte Leistung: 246 KBytes/sec Bandgeschwindigkeit: 10.89 mm/sec (0.429 ips) Rotationsgeschwindigkeit: 1800 rpm Kassettentyp: 2048 MByte-Kassette Bestellnummer U1-H25 Bestellnummer der Reinigungskassette: U50-H22 4.12 DUE-Baugruppen Ueber diese Baugruppen kann sowohl Stations- als auch Rech- nerkopplung betrieben werden. Fuer den Betrieb einer ladbaren DUE-Baugruppe wird CCP- STA1, CCP-STA3, CCP-STA4, CCP-WAN1, CCP-WAN2, CCP-WAN3, CCP-WAN4, CCP-WAN5 oder CCP-WAN6 benoetigt. CCP-STA3, CCP- WAN3 und CCP-WAN4 ist nur auf Sonderfreigabe erhaeltlich. Mit CMX V2.5A koennen Anwendungen ablaufen oder erstellt werden, die ueber das installierte CCP mit Ihrem Rechner kommunizieren. Aufsetzend auf CMX kann mit dem Software- produkt EMDS Terminal-(9750) und Druckeremulation und mit FT-SINIX Filetransfer betrieben werden. 4.13 Ethernet-Prozessor Lokale Netze (ISO) werden durch die Softwareprodukte CCP-LAN2 zusammen mit REMOS2 bzw. EMDS und FT-SINIX unter- stuetzt. 5 Das Spoolsystem 5.1 /etc/daemon Es muessen immer zwei daemon Prozesse aktiv sein. Stuerzt der Sohnprozess ab, erfolgt ein automatisches Neuladen des daemons sofern der Vaterprozess noch laeuft. Das Neuladen wird bis zu 10 mal versucht. Eine regulaere Beendigung des daemon ist nur mit dem Kommando lpr -dg oder dem Signal SIGTERM moeglich. Wird dem daemon das letzte noch laufende Backend genommen, so beendet sich der daemon nicht mehr automatisch. 5.2 Backends Beim Absturz eines Backends wird versucht, dieses neu zu laden. Bei normaler Beendigung des Backends und bei Been- digung durch die Signale SIGTERM, SIGFPE, SIGSEGV und SIG- TRAP wird ein Neuladen nicht versucht. Eigene Fremddrucker koennen wie bisher ueber das Interface- Backend /usr/spool/spooler/interface angeschlossen werden. "Echte" Fremddruckerbackends, die fuer die SINIX-Versio- nen 2.x, 5.0, 5.1A bzw. 5.2A entwickelt wurden, funktio- nieren mit dem Spoolsystem der V5.22 nicht mehr. Backends, die fuer V5.1B und V5.21 entwickelt wurden, koennen auch auf V5.22 eingesetzt werden. Mit Hilfe des neuen Schnittstel- lenhandbuchs koennen auch Fremddruckerbackends selbst ge- schrieben werden. 5.3 Dateien unter /usr/.spool/spooler Die Dateien CONFIG, CONFIG.bin, POOLDAT, FORMTAB, digest, startup, drucker, gruppen und die Backendprogramme stehen in SINIX V5.22 im Dateiverzeichnis /usr/.spool/spooler. Die Dateien drucker und gruppen werden erst vom Bediensy- stem erstellt und auch nur vom Bediensystem benoetigt. Das Unterdateiverzeichnis /usr/.spool/spooler/tmp enthaelt die Datei daemtrc und die Tracedateien der Backends und des daemon. Das Dateiverzeichnis /usr/.spool/spooler/sp enthaelt alle temporaeren Druckdateien, die ueber eine Pipe oder ueber die lpr-Schalter +co und -cp an den Spooler uebergeben werden. Das Dateiverzeichnis /usr/.spool/spooler/at enthaelt fuer jeden Druckauftrag eine Datei at.. Im Dateiverzeichnis /usr/spool/spooler/stat sind die Sta- tusdateien hinterlegt. Im Dateiverzeichnis /usr/.spool/spooler/font gibt es Dateiverzeichnisse fuer die einzelnen Drucker, in denen Dateien abgelegt werden koennen, die "Ladbare Zeichengene- ratoren" enthalten. Diese Dateien koennen mit dem Schalter -font= in den Drucker geladen werden. Die Datei dtype steht als Bediensystemdatei unter /usr/ad- min/.colface/Konf. Der Aufbau dieser Datei hat sich wie folgt geaendert: Struktur der Eintraege (eine Zeile pro Drucker, Spaltentrenner ";") 1. Druckername (wird waehrend der Konfigurierung ange- zeigt) 2. Backend mit absolutem Pfadnamen (dieser wird in die CONFIG-Datei in einfachen Hochkommas eingeschlossen) 3. moegliche Schalter (bis zum Zeilenende) Beispiel: 9001;/usr/spool/spooler/lp9001;-pb= -pb1 -pb2 -pb3 ... Die Dateien conV11 und conV24 werden nicht mehr angelegt, da im Bediensystem an V11 und V24 alle Drucker konfigu- riert werden koennen. 5.4 Aenderungen und Erweiterungen Die Datei FORMTAB ist um drei Eintraege erweitert worden. Diese drei neuen Formulare werden nur vom HP-LaserJet- Backend unterstuetzt. Neue Backends: Es werden mit der SINIX V5.22 zwei neue Druckertypen un- terstuetzt: 9001-3 bzw. 9001-3b und HP-LaserJet-kompatible Drucker. Backends: lp9001-3 fuer Drucker 9001-31 lp9001-3b fuer Drucker 9001-8931 lphplj fuer HP-LaserJet-kompatible Drucker Hinweis: Da der HP-LaserJet keine Protokollmoeglichkeiten bietet, wird der Drucker immer in den Zustand BEREIT gesetzt. Das hat zur Folge, dass Druckauftraege verloren ge- hen, wenn der Drucker nicht eingeschaltet ist! Vom HP-Laser-Jet-Backend werden keine speziellen HP PCL Funktionen (wie z.B. zusammengefasste Steuerzeichen und Ma- cros) unterstuetzt. Mit dem HP-Drucker koennen bis zu 64 Zeilen pro Seite (bei 6 Zeilen pro Zoll) gedruckt werden, d.h. die ersten und letzten drei Zeilen bleiben leer. Fuer die Datenuebertragung notwendige Druckereinstellungen: - 9001 keine oder ungerade Paritaet, keine Statusmel- dungen, dies entspricht 8-Bit Grafik ein - 9011 7 Datenbits, ungerade Paritaet, keine Status- meldungen, 9600 Baud - 9004 9600 Baud Die Schalterfelder an der Rueckwand des Druckers sind wie folgt einzustellen: "BAUD RATE" 1 2 3 4 AUS EIN AUS EIN "PROTOCOL" 1 2 3 4 5 6 7 8 AUS AUS EIN AUS AUS EIN AUS AUS. - 9012 XON/XOFF-Protokoll, Statusmeldungen, 8 Daten- bits, ungerade Paritaet, 9600 Baud - 9013 XON/XOFF-Protokoll, Statusmeldungen, 7 Daten- bits, ungerade Paritaet, 9600 Baud - 9022 XON/XOFF-Protokoll, 8 Datenbits, keine Pari- taet, 9600 Baud - 9025 XON/XOFF-Protokoll, 8 Datenbits, keine Pari- taet, 19200 Baud - 9047 XON/XOFF-Protokoll, ungerade Paritaet, 19200 Baud - HP-LaserJet-kompatible Drucker XON/XOFF-Protokoll, 8 Datenbits, keine Pari- taet, 19200 Baud Der Drucker 9001-32 muss auf 7 Datenbits und ungerade Pari- taet eingestellt werden. Es wird empfohlen, keine Drucker an der ersten Schnitt- stelle eines E/A-Boards anzuschliessen. Es wird vom System- kern beim Hochfahren des Systems auf den Steckplatz 1 ein Blank geschickt. Ist nun ein Drucker an diesem Steckplatz angeschlossen, so reagiert dieser mit dem Abdruck eines Schmierzeichens, da die Baudrate nicht uebereinstimmt. Mit SINIX V5.22 haben Sie die Moeglichkeit, in der Datei CONFIG den Standardschalter -speed=... anzugeben. Damit koennen Sie die Uebertragungsrate selbst festlegen (siehe auch SPOOL-Handbuch). Mit SINIX V5.22 werden maximal 32 Drucker unterstuetzt. Die Auftragswarteschlange kann maximal 1279 Druckauftraege gleichzeitig verwalten. Die Datei CONFIG darf maximal 300 Zeilen lang werden. Geaenderte Geraetedateien fuer Drucker Mit SINIX V5.22 wird vom Bediensystem der Name der Geraete- datei des Druckers immer mit tty<3stellige_Nummer> verge- ben, d.h. mit ls -l /dev kann man nicht feststellen, wel- che Schnittstellen durch Drucker belegt sind. crw------- 1 root daemon 38, 2 Mar 19 07:06 /dev/tty002 Beispieleintrag aus der Datei CONFIG: D002 '/usr/spool/spooler/lp9001' /dev/tty002 -pb= -pb1 ... 5.5 Inkompatibilitaeten Zu UNIX System V Release 2 (UNIX ist eingetragenes Waren- zeichen von AT&T) ist das SINIX-Spoolsystem nicht kompa- tibel, es existiert im xopen-Universum jedoch ein X/OPEN- kompatibler Spool. "Echte" Fremddruckerbackends, die fuer die SINIX-Versionen 2.x, 5.0, 5.1A bzw. 5.2A entwickelt wurden, funktionieren mit dem Spoolsystem der V5.22 nicht mehr. Backends, die fuer V5.1B und V5.21 entwickelt wurden, koennen auch auf V5.22 eingesetzt werden. Durch die erhoehte Anzahl der Schnittstellen mit SINIX V5.22 ist es noetig, die Druckernamen und Druckergruppen- namen entsprechend zu aendern. Das hat zur Folge, dass die Nummern 3stellig statt vorher 2stellig sind. Alle Druckaufrufe (z.B. in HIT) sprechen nun Druckergruppen an, die nicht mehr existieren. Es ist deshalb zu empfehlen, zusaetzliche Druckergruppen mit den alten Namen einzurich- ten. Dadurch muessen nicht alle Shell-Prozeduren angepasst werden. Beispiel: G015 ( D015 ) 'DRUCKER 9022' G15 ( D015 ) 'Zusaetzliche Druckergruppe fuer 9022' Der Druckername kann nicht ueber das Bediensystem geaendert werden (im Beispiel D015). Der Schalter -nk=... wird vom Drucker 9012 nicht mehr unterstuetzt. Um Dateien mehrfach auszudrucken, muss der Schalter -nc=... verwendet werden. Der Spool belegt zwei Message-Queues mit den festen Werten 113 und 114. Diese Nummern duerfen daher von Anwenderpro- grammen nicht belegt werden. Sind diese Nummern schon ver- geben, wenn der Spool gestartet wird, so laesst sich dieser nicht laden. 5.6 Probleme mit dem SPOOL Zu Testzwecken ist es moeglich, fuer die Druckerverwaltung (daemon) und die Backends eine TRACE-Funktion einzuschal- ten. Alle Zustaende der Backends bzw. des daemon werden dann in den TRACE-Dateien BTRC* bzw. TRACE protokolliert. Die TRACE-Funktion fuer die Backends wird durch Angabe des Schalters -trace in der CONFIG-Datei eingeschaltet. Die TRACE-Funktion des daemon wird mit dem Schalter -trace beim Aufruf des daemon aktiviert. Alle erzeugten TRACE- Dateien werden im Dateiverzeichnis /usr/spool/spooler/tmp abgelegt. Im Fehlerfall finden Sie die letzten Rueckmel- dungen des Druckers in der Datei /usr/spool/spooler/stat/ STAT'druckername'.'pid' (siehe auch SPOOL-Handbuch). Beispiel: startup: /etc/daemon -rc -trace > tmp/daemtrc CONFIG: D002 '/usr/spool/spooler/lp9001 -trace' ... Bei schwerwiegenden Fehlern legen Sie bitte der Fehlermel- dung diese Dateien auf einer Diskette bei. 5.7 Neue Schalter /bin/lpr Das Kommando lpr wurde um die Schalter -speed=..., -lang=... und -ds=... erweitert (siehe auch SPOOL- Handbuch). -speed= Uebertragungsrate festlegen -lang= Sprache einstellen, mit der ausgegeben wird -ds= doppelseitiges Drucken (bei HP-LaserJet) 6 COLLAGE Das Laufzeitsystem COLLAGE-R V3.0B ist Bestandteil von SI- NIX V5.22. Es ist ablauffaehig auf den Terminals 97801 und 97808. COLLAGE V3.0B ist gegenueber V2.0 u.a. um folgende Punkte erweitert: neuer Applikationsmonitor, neue Program Information Files, erhoehte Fensteranzahl, Arbeitsstandsicherung des Desktops, Mehrfachselektion, Fenster-Fenster-Kommunikation, erwei- terte Gestaltung eigener Benutzeroberflaechen, COLLAGE auf Terminal 97801 (Alpha-COLLAGE), LAN-Faehigkeit von Alpha- COLLAGE. Im Terminal 97808 steht aufgrund des ausgelagerten Appli- kationsmonitors fuer Anwendungen mehr Speicherplatz zur Verfuegung. 6.1 Technische Hinweise Im Anschluss an die COLLAGE-Installation muessen Sie fuer jedes Grafik-Terminal die Terminal-Firmware neu laden. Dabei gehen Sie folgendermassen vor: - Einloggen unter einer Shell-Benutzerkennung im xopen- oder sie-Universum (nicht root!) - Terminal 97808 ausschalten - Return-Taste druecken und festhalten - Terminal einschalten - Return-Taste erst loslassen, wenn sich das Terminal mit "TEST END" gemeldet hat - Aufruf: xopen /usr/lib/blit/ansiload Achtung: zu diesem Zeitpunkt arbeiten Sie mit interna- tionaler Tastaturbelegung, d.h. "/" befindet sich rechts auf der untersten Tastaturzeile!) - nach einiger Zeit erscheint die Meldung: "Terminal 97808 " - nochmals ausloggen (END-Taste druecken), sodass "getty" und "keyload" fuer dieses Terminal neu gestartet werden. 6.2 Produkt-Einsatz - COLLAGE ist nur im xopen-Universum ablauffaehig. - COLLAGE V3.0 ist gleichzeitig in Deutsch und in Englisch ablauffaehig, abhaengig von der Belegung der Umgebungsva- riablen LANG. Im xopen-Universum gilt standardmaessig LANG=En_US.ASCII. Wollen Sie Deutsch als Voreinstellung, so setzen Sie LANG=De_DE.646 in /usr/att/etc/profile bzw. in $HOME/.profile. - Hinweise fuer den Systemverwalter: Es wird empfohlen, die Anschluesse der Grafik-Terminals auf moeglichst viele E/A-Boards zu verteilen. Haben Sie einen Benutzer als COLLAGE-Benutzer mit bzw. ohne Shellberechtigung eingetragen, so sollten Sie in der Datei /etc/passwd das Startprogramm "/usr/bin/colla- ge" bzw. "/usr/bin/collmen" aendern in "/usr/bin/colla- ge.pw" bzw. "/usr/bin/collmen.pw". Nur dann werden beim Einloggen dieser Benutzer auch die Dateien /etc/profile und $HOME/.profile ausgefuehrt. Damit COLLAGE richtig geladen werden kann, muss der Terminal-Eintrag in /etc/termcap das Landeskennzeichen "LK=..." (z.B. LK=deut) enthalten. - Alpha-COLLAGE: Sie starten Alpha-COLLAGE mit dem Aufruf "acollage". Ist ein Anwender als COLLAGE-Benutzer eingetragen (Startprogramm /usr/bin/collage in /etc/passwd), so kann er gleichzeitig an Terminals 97808 und 97801 arbeiten. Die Prozedur "collage" entscheidet u.a. in Abhaengigkeit von der TERM-Variablen, ob die Grafik- oder Alpha-Ver- sion von COLLAGE gestartet wird. 6.3 Einschraenkungen - Waehrend COLLAGE laeuft, duerfen Sie auf Ihrem Rechner das Datum bzw. die Uhrzeit nicht verstellen. Dies sollte grundsaetzlich nur im Single-User-Modus erfolgen, um In- konsistenzen zu vermeiden. - Wenn Sie an mehreren 97808-Terminals mit sehr komplexen Anwendungen arbeiten, wird empfohlen, zusaetzliche Swap- Bereiche (weitere Platten) zu verwenden. - Wenn Sie die Terminalemulation em9750 unter COLLAGE aufrufen, duerfen Sie waehrend des Verbindungsaufbaus kein anderes Fenster aktivieren. - Hintergrundprozesse oder Daemonen duerfen Sie in einem COLLAGE-Fenster nur dann starten, wenn Sie fuer diese Prozesse die Kanaele fuer stdin, stdout und stderr schlie- ssen oder umlenken. Bsp.: proz >/dev/null 2>&1 & Fuer Anwendungen, die einen Daemon starten, muss gewaehr- leistet sein, dass nach dem fork-Aufruf alle von der An- wendung ererbten geoeffneten File-Deskriptoren im Kindpro- zess geschlossen werden. Dies laesst sich folgendermassen erreichen: #include fork(); if (sohn) /* alle Filedeskriptoren schliessen */ for (i=0;i<_NFILE;i++) close(i); exec(daemon); - Auf Grafik-COLLAGE V3.0B koennen Sie systemweit maximal 255 Fenster oeffnen (Summe von Old- und New-Style-Fen- stern). - Fuer metaprintc ist die maximale Hoehe bzw. Breite eines Metafiles 4096 Pixel bei vertikalem bzw. horizontalem Ausdruck. - Innerhalb von COLLAGE wird der Bereitstellungsbereich G2 (fuer besondere Zeichensaetze) nicht unterstuetzt. Old- Style-Anwendungen, die auf G2 zugreifen, laufen deshalb nur mit Einschraenkungen unter COLLAGE. Alpha-COLLAGE: - Eine HARDCOPY loesen Sie in Alpha-COLLAGE nicht mit CTRL PRINT, sondern mit PRINT oder SHIFT PRINT aus, nachdem Sie im Menue "Anwendungen" den Punkt "Bildschirmabzug" ausgewaehlt haben. - In Alpha-COLLAGE sollten Sie nicht die CHCODE-Taste betaetigen. Wenn Sie zwischen nationalem und internatio- nalem Zeichensatz wechseln wollen, verwenden Sie im Menue STANDARD die Auswahl CHCODE. Siehe Manual "Bedienen Ver- walten Programmieren (B-V-P)", S. 7-78. - Funktionstasten "gesamter Bildschirm" (U22; Taste unter- halb von F22) und "zum Symbol verkleinern" (F20): wenn Sie ein OS-Fenster auf den ganzen Bildschirm ver- groessern (U22) und danach zum Symbol verkleinern (F20), so verschwindet das ikonisierte Fenster hinter der Menueleiste. Um dieses Fenster wieder sichtbar zu machen, muessen Sie entweder wieder die Taste "gesamter Bild- schirm" druecken oder den Zeiger an die Stelle positio- nieren, an der Sie das Fenster haben wollen, und die Ta- ste "neue Position" (F21) betaetigen. Um das Fenster wie- der auf die volle Groesse aufzuziehen, druecken Sie noch- mals F20 "zum Symbol verkleinern". - Emulation 9750 unter Alpha-COLLAGE: (betrifft EMDS V3.0) Um in Alpha-COLLAGE mit der Emulation 9750 arbeiten zu koennen, muessen Sie eine Prozedur mit folgendem Inhalt in APPLICATIONS eintragen bzw. in einem Shell-Fenster starten: TTYNAME= tty export TTYNAME em9750 echo "Weiter mit RETURN" read x Eintrag des Prozedurnamens in der Datei PROGRAMS nicht vergessen! (s. Manual "B-V-P", S. 4-27) - Wenn Sie zusaetzliche Menues in die Menueleiste einhaen- gen, so muessen deren Namen mehr als ein Zeichen enthalten. - HIT V4.0 (Old Style): Starten Sie HIT in einem Standard- fenster, so muessen Sie eine Prozedur starten, in der vor dem Hit-Aufruf die Variable HITTERM=D.C2 gesetzt wird (usr/bin/HIT/HITV4.0-D). Dies gilt nicht, wenn Sie HIT in einem "full screen window" (gesamter Bildschirm) starten. Dort rufen Sie HIT genauso auf, wie ausserhalb von COLLAGE. Ein Wechsel zwischen Standardfenster und Fenster mit voller Bildschirmgroesse (Taste U22) waehrend einer HIT- Sitzung bringt Probleme mit dem Zeichensatz. Sie sollten sich fuer einen Modus entscheiden. - Nach dem Beenden von Alpha-COLLAGE ist der ladbare Teil von G0 ueberschrieben. Sie muessen sich erneut einloggen, um wieder auf Sonderzeichen in G0 (z.B. Umlaute) zugrei- fen zu koennen. Hinweise zum Manual "B-V-P": - Das Beispiel zu DESKTOOLS auf den Seiten 4-14 und 4-20 funktioniert nur dann, wenn "sie" in PROGRAMS eingetra- gen ist. - Namen fuer DESKTOOLS duerfen keinen Punkt enthalten. - Die Anzahl der Eintraege in APPLICATIONS ist auf 22 be- schraenkt. - Wenn Schluesselwoerter in PIFs Unterstriche enthalten, so werden diese in Auswahlfenstern als Leerzeichen darge- stellt. - Seite 7-16: Funktionstaste "DESKTOP: Letztes Objekt" (F4). Diese Taste bringt den Zeiger zum ersten Objekt der letzten sichtbaren Zeile im aktuellen Fenster. - Seite 7-25: Aktives Fenster zum Symbol verkleinern. Ein verkleinertes Fenster kann wieder geoeffnet werden, indem Sie den Zeiger auf sein Symbol stellen und dann die Taste START druecken, bzw. - wenn es ein OS-Fenster ist - dadurch, dass Sie erneut die Taste ZUM SYMBOL VER- KLEINERN druecken. - Seite 7-52: Seitenweise lesen. Druecken Sie RETURN, wenn Sie zeilenweise vorgehen moechten; wenn Sie seitenweise blaettern wollen, druecken Sie die LEERTASTE; mit END blaettern Sie um halbe Seiten weiter. 6.4 Verhalten im Fehlerfall Hilfe bei der Fehlersuche: collage -d (Nur fuer Terminal 97808!): Rufen Sie COLLAGE mit dem Schalter "-d" auf, so werden saemtliche Aktionen des COLLAGE-Servers in der Datei "s.out" mitprotokolliert. Beim Terminal 97808 kann es in seltenen Faellen vorkommen, dass COLLAGE in einen Zustand geraet, bei dem keinerlei Re- aktion mehr auf irgendwelche Eingaben erfolgt. Dann hilft unter Umstaenden nur noch, das Terminal auszuschalten und nach ca. 1 Minute wieder einzuschalten. Der Prozess "colserv" ueberprueft regelmaessig, ob der COLLAGE-Prozess im Terminal noch laeuft und beendet sich ordnungsgemaess, falls das nicht der Fall ist. Sie duerfen daher den Prozess "colserv" nicht mit "kill" beenden! Im Fehlerfall kann die Datei "s.out" fuer den Systemdienst hilfreich sein. 6.5 Software-Erweiterungen Im folgenden werden nur die Erweiterungen bzw. Verbes- serungen gegenueber der Vorgaengerversion COLLAGE V2.0 be- schrieben. 6.5.1 Alpha-COLLAGE COLLAGE V3.0B laeuft mit eingeschraenkten grafischen Funk- tionen auf dem Terminal 97801. Die Bedienung von Alpha-COLLAGE erfolgt durch Cursor-Ta- sten, RETURN-, START-, DEL-, HILFE- und ENDE-Taste bzw. durch die Funktionstasten (Tastaturmaske). Verwendung von Alpha-COLLAGE s. Manual "B-V-P", Kap. 7. Tasten Achtung: Damit die Tasten MENU, END und U18 - U22 (unter F18 - F22) nicht von COLLAGE abgefangen, sondern an Old- Style-Applikationen durchgereicht werden (z.B. ced), muss im Menue "Standard" die Funktion "U-Tasten uebergeben" ak- tiviert werden. Diese Aktivierung gilt waehrend der gesamten COLLAGE-Sit- zung solange, bis Sie die Auswahl "U-Tasten abfangen" markieren, und wird beim Verlassen von COLLAGE gesichert. Siehe Manual "B-V-P", S. 7-79. Beachten Sie bitte, dass Sie jedesmal mit der Taste MODE in den Systemmodus umschalten muessen, wenn Sie ein COLLAGE-Menue aufziehen moechten. Die Belegung der Funktions-Tasten fuer Alpha-COLLAGE kann systemweit oder benutzerspezifisch konfiguriert werden. Siehe dazu Manual "B-V-P", Abschnitt 8.3. Anwendungen auf Alpha-COLLAGE Anwendungen, die mit dem Entwicklungssystem von COLLAGE V3.0B uebersetzt und gebunden wurden, koennen sowohl auf der alphanumerischen Bildschirmeinheit 97801 als auch der grafischen 97808 ablaufen. Diese Anwendungen erscheinen mit einer einheitlichen Bedienoberflaeche und werden alternativ mit Cursor (97801) oder Maus (97808) bedient. Reine grafische, pixelorientierte Funktionen lassen sich natuerlich nicht auf die 97801 abbilden. Das Verhalten von Alpha-COLLAGE ist im Full-Screen-Modus (Taste "Gesamter Bildschirm") performanter als im norma- len Modus. 6.5.2 Betrieb ueber LAN Ein Betrieb von Grafik-COLLAGE ist mit der aktuellen Ver- sion ueber LAN nicht moeglich. Alpha-COLLAGE koennen Sie ueber LAN an einem fernen Rechner aufrufen. In diesem Fall erhalten Sie ein kleines Menue mit folgen- den Auswahlen: 1. Ende 2. Alpha-COLLAGE an einer Bildschirmeinheit 97801 3. Alpha-COLLAGE innerhalb COLLAGE 4. Shell Mit Auswahl "1" kehren Sie in Ihr Ausgangsprogramm zurueck. "2" waehlen Sie, wenn Sie Alpha-COLLAGE an einem Terminal 97801 oder 97808 betreiben wollen. Wenn Sie Alpha-COLLAGE aus einem COLLAGE-Fenster heraus aufrufen, waehlen Sie Nummer "3". Mit der Auswahl "4" wird am fernen Rechner nicht Alpha- COLLAGE, sondern eine Shell gestartet (nuetzlich bei rlo- gin als COLLAGE-Benutzer). Hinweis: Ein rlogin als COLLAGE-Benutzer sollte ausserhalb von COL- LAGE an einer Bildschirmeinheit 97801 oder 97808 mit an- schliessender Auswahl "2" erfolgen. In den anderen Faellen bestehen Einschraenkungen bei der Darstellung von nationalen Sonderzeichen und der CHCODE- Funktion. TTYNAME: Beim Aufruf von Alpha-COLLAGE wird die Variable TTYNAME auf folgenden Wert gesetzt: TTYNAME=hostname:tty(50000)xx hostname Rechnername im LAN-Netz ttyxx Name des Terminals z.B. TTYNAME=zugspitze:tty(50000)02 6.5.3 Der Applikationsmonitor Der Applikationsmonitor (APM) ist in COLLAGE V3.0 als COLLAGE-Anwendung aus dem Grafik-Terminal ausgelagert. Deshalb steht gegenueber COLLAGE V2.0 mehr Speicherplatz im 97808-Terminal zur Verfuegung. Es gibt 3 Moeglichkeiten, den zu startenden APM zu bestimmen: - beim Aufruf von "colrun" durch die Option "-m monitorname" (nur am Terminal 97808) - durch Setzen der Umgebungsvariablen APM (z.B. APM=sh) (Naeheres s. Abschnitt "Bedienoberflaeche") - durch Verwenden des internen Defaults: APM Die Prioritaeten dabei sind: - explizite Angabe beim Aufruf vor globaler Variable - falls weder eine Angabe beim Aufruf vorhanden ist noch die Variable APM gesetzt ist, wird der interne Default verwendet. Zum APM siehe auch Manual "B-V-P", Abschnitt 3.2. 6.5.4 Bedienoberflaeche In V3.0 existiert fuer Standard-Anwendungen ein eigenes Menue, das nur eingehaengt wird, wenn eine Standard-Anwen- dung (Old Style) im aktiven Fenster laeuft. Eigene Erweiterungen bzw. Aenderungen der Menues sind moeg- lich ueber die PIFs "DESKMENU" und "APMMENU". Siehe Manual "B-V-P", Abschnitt 4.3.3. Ausserdem koennen in COLLAGE V3.0B zusaetzliche Menues in Menueleiste eingehaengt werden. Siehe dazu Manual "B-V-P", Abschnitt 4.5. Wenn Sie nur die Fenstertechnik von COLLAGE nutzen wol- len, koennen Sie die Shell als APM starten: $ APM=sh $ export APM $ collage Dadurch erhalten Sie eine Oberflaeche mit dem Mini-Menue "Desktop" (Start/Ende). Nach der Auswahl von "Start" wird jeweils ein Shell-Fen- ster geoeffnet, mit "Ende" koennen Sie COLLAGE wieder beenden. COLLAGE sichert den Arbeitsstand des Benutzers beim Been- den und stellt diesen Zustand beim Starten wieder her. Dabei werden die Arbeitsstandsicherungen eines Benutzers fuer Grafik- und Alpha-COLLAGE getrennt verwaltet. Ausser- dem hat der Benutzer die Moeglichkeit, seine COLLAGE-Be- dienoberflaeche ueber bestimmte Shell-Variable zu konfigu- rieren. Siehe dazu Manual "B-V-P", Kap. 4.3. 6.5.5 Rechter Mausknopf In COLLAGE V3.0 ist es moeglich, in Verzeichnisfenstern mehrere Objekte gleichzeitig zu selektieren. Aenderung fuer den Benutzer: Um die Menueleiste zu erreichen, genuegt es nicht mehr, den rechten Mausknopf zu druecken. Der Zeiger muss in die Menue- leiste hineingefuehrt werden. Weitere Informationen zum Arbeiten mit der Maus finden Sie im Manual "B-V-P", Abschnitt 2.1. 6.5.6 PIF - Program Information Files In COLLAGE V3.0 gibt es folgende Program Information Fi- les, die z.T. neu, z.T. mit geaenderter Syntax sind: APMMENU APPLICATIONS DESKMENU DESKTOOLS DIRTYPES ICONTYPES METHODS OBTYPES PROGMETHODS PROGRAMS PROGTYPES Beschreibung siehe Manual "B-V-P", Abschnitt 4.3.3. Hinweis: Die Syntax der Datei PROGRAMS ist erweitert worden. Als x,y-Koordinaten, Hoehe und Breite fuer Old-Style-Fen- ster koennen Sie jeweils den Wert -1 angeben. COLLAGE waehlt dann folgende Standard-Werte fuer das Fenster, ab- haengig davon, ob Grafik- oder Alpha-COLLAGE laeuft: x, y, Hoehe, Breite Grafik-COLLAGE (ISAR16) 20, 40, 640, 400 Alpha-COLLAGE 32, 16, 560, 350 Beachten Sie bitte bzgl. Alpha-COLLAGE, dass COLLAGE in- tern die Pixel-Koordinaten umwandelt in Alpha-Zeichen-Ko- ordinaten und dabei rundet. Die PIFs mit deutschen Texten stehen standardmaessig im Dateiverzeichnis /usr/lib/col/PIF/De bzw. /usr/lib/col/PIF/collmen/De. Achtung: Variable LANG=De_DE.646 setzen! Der Pfadname fuer individuelle PIFs muss ueber die Variable PIF_PATH definiert werden. 6.5.7 ICONS Die Icons fuer Grafik-COLLAGE stehen standardmaessig im Da- teiverzeichnis /usr/lib/col/ICONS, die fuer Alpha-COLLAGE in /usr/lib/col/Icons. In beiden Dateiverzeichnissen werden auch verkleinerte Symbole (16x18 Pixel) angeboten. Mit diesen koennen Sie Dateien im Verzeichnisfenster in einer kompakten Form darstellen (Menue "Ablage", Befehl "Darstellung"). Siehe dazu Manual "B-V-P", Abschnitt 4.3.1. Der Pfadname fuer individuelle ICONS muss ueber die Varia- blen ICON_PATH und AICON_PATH definiert werden. AICON_PATH wird nur innerhalb von Alpha-COLLAGE benutzt, in Grafik-COLLAGE wertet der Monitor die Variable ICON_PATH aus. Wenn AICON_PATH nicht definiert ist, wird immer ICON_PATH verwendet. Wenn Sie im Verzeichnisfenster Dateien mit bestimmtem Suffix durch ein eigenes Icon darstellen wollen, muessen Sie in der Datei ICONTYPES folgenden Eintrag vornehmen: .sfx:name.icn Dabei steht ".sfx" fuer das Suffix, "name" fuer den Namen Ihres Icons. 7 Das C-Entwicklungssystem 7.1 Allgemeines Mit SINIX V5.22 wird im xopen-Universum ein C-Entwick- lungssystem zur Verfuegung gestellt, das sich im besonderen durch folgendes auszeichnet: a) X/OPEN Portability Guide III konforme Libraries und Headerfiles. b) Es werden der zu CES V5.21 kompatible Sprachumfang nach Kernighan/Ritchie sowie optional auch wichtige Sprachkonstrukte des zukuenftigen ANSI-C Standards un- terstuetzt. 7.1.1 Systemgrenzen MX500 Beschreibung Bez.*) Wert Anzahl der Map-Struktur Eintraege MSGMAP 160 Maximale Groesse einer Message in Byte MSGMAX 1024 Max. Anz. Bytes pro Messagequeue MSGMNB 2048 Max. Anz. Messagequeueidentifier im System MSGMNI 50 Groesse eines Messagesegments in Byte MSGSSZ 8 Max. Anz. von Messageheadern im System MSGTQL 160 Max. Anz. von Messagesegmenten im System MSGSEG 5120 Max. Anz. Message-Bytes im System 40960 Anzahl der Map-Struktur Eintraege SEMMAP 100 Max. Anz. Semaphoridentifier im System SEMMNI 100 Max. Anz. Semaphore im System SEMMNS 200 Max. Anz. "Undo"-Strukturen im System SEMMNU 100 Max. Anz. Semaphore pro Semaphoridentifier SEMMSL 20 Max. Anz. Semaphoroperationen pro Systemaufruf SEMOPM 20 Max. Anz. "Undo"-Entries pro Prozess SEMUME 20 Maximalwert, den ein Semaphor annehmen kann SEMVMX 32767 Exitwert bei Maximalwerterreichung SEMAEM 16384 Max. Anz. "shared memory"-Segmente pro Prozess 16 MX300 Beschreibung Bez.*) Wert Anzahl der Map-Struktur Eintraege MSGMAP 160 Maximale Groesse einer Message in Byte MSGMAX 1024 Max. Anz. Bytes pro Messagequeue MSGMNB 2048 Max. Anz. Messagequeueidentifier im System MSGMNI 20 Groesse eines Messagesegments in Byte MSGSSZ 256 Max. Anz. von Messageheadern im System MSGTQL 160 Max. Anz. von Messagesegmenten im System MSGSEG 160 Max. Anz. Message-Bytes im System 40960 Anzahl der Map-Struktur Eintraege SEMMAP 100 Max. Anz. Semaphoridentifier im System SEMMNI 100 Max. Anz. Semaphore im System SEMMNS 150 Max. Anz. "Undo"-Strukturen im System SEMMNU 75 Max. Anz. Semaphore pro Benutzer SEMMSL 20 Max. Anz. Semaphoroperationen pro Systemaufruf SEMOPM 20 Max. Anz. "Undo"-Entries pro Prozess SEMUME 20 Maximalwert, den ein Semaphor annehmen kann SEMVMX 32767 Exitwert bei Maximalwerterreichung SEMAEM 16384 Max. Anz. "shared memory"-Segmente pro Prozess 16 *) Bezeichnung ist der Name der entsprechenden symbolischen Konstanten innerhalb des SDT (System-Development-Tool). 7.1.2 Literaturhinweise Fuer das CES finden Sie eine Beschreibung der Systemaufru- fe, C-Funktionen und Makros im Manual "CES V5.22 " (Teil 1 und Teil 2). Der Aufruf des C-Compilers ("cc") und des Binders ("ld") ist im Manual "SINIX V5.22 Kommandos" be- schrieben. Eine Dokumentation der Bemuehungen und Fortschritte einer Standardisierung der Programmiersprache C und viele Hin- weise und Empfehlungen, wie nicht portable C-Programmie- rung zu vermeiden ist, finden Sie z.B. in: "X/OPEN Portability Guide", Prentice Hall Englewood Cliffs, New Jersey 1988 7.1.3 Beendigung des Compilers aufgrund von Speicherengpaessen Bei der Uebersetzung von (grossen) Programmen kann es vor- kommen, dass sich eine der Compilerphasen mit einer aehnli- chen Fehlermeldung wie "out of memory" oder "cannot real- loc" meldet, oder der Compiler meldet "cannot execute %s", wobei %s durch den Namen der entsprechenden Phase ersetzt wird. Dieses Problem kann darin begruendet sein, dass aufgrund momentaner starker Systemauslastung nicht mehr genuegend Platz in der Swap-Partition ist. In diesem Fall wurde dann eine Speicherplatzanforderung vom Betriebssystem zu- rueckgewiesen oder ein fork konnte nicht ausgefuehrt werden. Da dies ein temporaeres Problem ist, kann man seine Compi- lation nach einiger Zeit (evtl. nach geeigneten Massnahmen des Systemverwalters) noch einmal starten. Manchmal kann das Problem umgangen werden, indem beim Compilieren der Optimizer ausgeschaltet wird. 7.1.4 Ablauffaehige Phase kann nicht erzeugt werden Der Grund fuer die Bindermeldung "cannot create Programmna- me" oder "Programmname kann nicht erzeugt werden" ist haeu- fig der, dass eine Phase mit dem Namen be- reits existiert und gerade ablaeuft oder aufgrund fehlender Zugriffsrechte nicht ueberschrieben werden kann. 7.1.5 Fehler zur Laufzeit des Programms Viele Fehler sind auf eine falsche Verwendung von Zeigern in C-Programmen zurueckzufuehren. Verwenden Sie Zeiger nur dann, wenn Sie sichergestellt haben, dass diese Zeiger auf einen sinnvollen Speicherplatz zeigen. Groessere Programme sollten in der Entwicklungsphase eine eingebaute TRACE-Funktion besitzen, die alle Programmzu- staende, Funktionsaufrufe usw. in einer TRACE-Datei proto- kolliert. Ist man mit dem Debuggerprogramm adb vertraut, so kann das Programm natuerlich auch unter der Kontrolle des adb ab- laufen. Mit der eigenstaendigen Liefereinheit DBX steht ein kom- fortabler Source-Code Debugger zur Verfuegung. Der DBX ge- hoert nicht zum CES; er muss getrennt bestellt werden. 7.1.6 Verwendung von Signalen Signale sollten zur Synchronisation von Prozessen nicht benutzt werden. Anwendungen, die solches versuchen, zeigen haeufig ein zeitabhaengiges Verhalten, insbesondere auf einem Parallelrechner. Die zur Verfuegung stehenden Mittel ( signal(2), setjmp(3C), longjmp(3C) ) reichen mitunter nicht aus, um die Anwendung vor diesem zufaelligen Verhal- ten zu schuetzen. Ein zeitabhaengiges Verhalten tritt insbe- sondere dann auf, wenn ein und dasselbe Signal von mehre- ren Prozessen an einen anderen Prozess geschickt wird. Im Normalfall sollen Signale einem Prozess eine Endebedingung anzeigen, auf die er auf geeignete Weise reagiert, wie z.B. eine Einstellung des Terminals rueckgaengig machen und sich dann beenden. 7.1.7 Exitstatus Der Exitstatus eines Prozesses, der sich "normal" beendet, ist undefiniert, falls nicht explizit die Funktion exit() aufgerufen wird bzw. die Funktion main nicht die Anweisung "return ausdruck;" enthaelt. Nach einer ueblichen Konvention zeigt ein Exitstatus mit dem Wert 0 an, dass sich der Prozess normal beendet hat; von 0 verschiedene Werte kenn- zeichnen den Fehlerfall. 7.1.8 Alignments Unterschiedliche Prozessoren erfordern haeufig verschiedene Datenausrichtungen (Alignments). Compiler nehmen darauf Ruecksicht und generieren entsprechenden Maschinencode. Portable Programmentwicklung sollte deshalb keine Annahmen ueber die spezielle Datenausrichtung machen. So ist z.B. die manchmal anzutreffende Praxis, Strukturen als "Records" anzusehen und als Ganzes in einer Datei ab- zulegen (write(datei,struktur,sizeof(struct struktur))) nicht zu empfehlen. Bei CES V5.22 ist es so, dass der Compiler bei Strukturen Datenausrichtung vornimmt. In diesem Zusammenhang wird folgende Eigenart des Compilers erwaehnt: Strukturen werden auf 2-Byte-Grenze ausgerichtet, waehrend Variablen vom Typ int oder long im allgemeinen auf 4-Byte-Grenze ausgerich- tet werden. Fuer die beiden folgenden Strukturen bedeutet dies: struct A int A_a; char A_b ; struct B char B_a; int B_b ; sizeof(struct A) = 6 sizeof(struct B) = 8 ; Die Struktur A hat am Ende ein "Loch" von einem Byte und die Struktur B hat in der Mitte ein Loch von 3 Byte. Legt man ein Feld der Struktur A an, so beginnt jedes zweite Feldelement auf einer 2-Byte-Grenze, die nicht gleich- zeitig eine 4-Byte-Grenze ist. Dies hat ausser eventuel- len Performance-Nachteilen (dafuer aber Speicherplatz-Vor- teilen) keine Auswirkungen. Die Prozessoren der "series 32000" Familie verlangen kein Alignment von Variablen. Ei- ne geeignete Ausrichtung von Variablen bringt aber Perfor- mance-Vorteile mit sich. Eine Variable vom Typ short soll- te auf 2-Byte-Grenze und Variablen vom Typ int, float oder double auf 4-Byte-Grenze ausgerichtet sein. Dies sollte man beachten, wenn man entsprechende Variablenwerte in einem dynamisch angeforderten Speicherbereich ablegt. (Nur fuer solche Speicherbereiche kann der Programmierer eine Ausrichtung des Speicherbereichs selber ausfuehren.) Die Bibliotheksfunktion malloc liefert eine auf 4-Byte Grenze ausgerichtete Speicheradresse zurueck. 7.1.9 Locks In SINIX 5.22 sind sogenannte advisory locks realisiert um Dateien bzw. Teilbereiche einer Datei zu sperren. Bei advisory locks ist es notwendig, dass alle sich eine Datei teilenden Prozesse selbst ueberpruefen, ob ein anderer Prozess einen Bereich fuer sich reserviert haelt, bevor der Schreib- bzw. Lesezugriff gemacht wird. 7.1.10 Uebergabe von Floatparametern Die von der Sprache C vorgeschriebene explizite Typkonver- tierung kann einige unerwartete Probleme mit sich bringen. Beispiel: float f_add(p1, p2) float *p1, *p2 ; return(*p1+*p2) ; float tst_func(f1, f2) float f1, f2; return(f_add(&f1, &f2)) ; main() float x, y; for ( x=0.0, y=0.0 ; x < 20.0 ; x += 1.0, y += 2.0 ) printf("x=%f y=%f :: %f n", x, y, tst_func(x,y)) ; Beim Aufruf von tst_func werden die Floatwerte von x und y als Doublewerte auf den Parameterstack gebracht. In der Funktion f_add werden diese Doubleparameter aber als Flo- atwerte, also falsch interpretiert. Im Zweifelsfall kann man dieses Problem dadurch umgehen, dass man alle Gleitkom- mavariablen als double definiert. In bestehenden Program- men kann man dies durch ein sed-script machen: "sed -e 's/float/double/g' infile >outfile" (Dieses sed-Script funktioniert natuerlich nur, falls der String float nicht noch anderweitig verwendet wird!) Das oben beschriebene Verhalten des Compilers aufgrund der expliziten Typkonvertierung entspricht der X/OPEN Defi- nition. 7.2 Spezielle Hinweise zur Verwendung des CES 7.2.1 Optimizer Der Optimizer entfernt unter anderem "toten Code", berech- net Schleifeninvarianten ausserhalb der Schleife und opti- miert die Verwendung der Prozessor-Register. Dieser Optimizer sollte nur in Spezialfaellen nicht verwendet werden, wie z.B. im folgenden: In einem "shared memory"-Segment wird Zustandsinformation (z.B. einfache Locks) gehalten. Wenn ein Prozess solch eine Zustandsvariable in einer Schleife abprueft (z.B. Warten auf Freiwerden eines Locks), so kann es vorkommen, dass der Optimizer diesen Wert am Anfang der Schleife in ein Pro- zessor-Register holt und in der Schleife immer nur mit dem Wert im Register gearbeitet wird. Der Prozess nimmt eine Veraenderung (durch einen anderen Prozess) im "shared memo- ry"-Segment nicht wahr. Ein "spinlock" kann auf diese Wei- se zur Endlosschleife werden. Bsp.: Die Variable lock sei vom Typ (short *) und sei mit einer Adresse in einem "shared memory"-Segment ver- sorgt. In der folgenden "spin loop" wird solange gewartet, bis in dem Speicherbereich, auf den "lock" zeigt, eine "0" steht. while (*lock) ; /* do nothing */ Uebersetzt man solchen C-Code mit Optimizer, besteht die grosse Gefahr einer Endlosschleife. Solche Sonderfaelle programmiert man deshalb am besten in einer kleinen Funktion in einem separaten Modul, das man dann ohne grosse Performance-Verluste ohne Optimizer ueber- setzen kann. Bei Verwendung von Float-Variablen kann es vorkommen, dass durch den Optimizer schlechterer (langsamerer) Code er- zeugt wird. 7.2.2 Praeprozessor Der Praeprozessor laesst einige (durchaus uebliche) Konstruk- tionen nicht mehr zu. Dadurch ist er kompatibel zum zu- kuenftigen ANSI-Standard. Nach den folgenden Praeprozessor- Anweisungen darf deshalb kein Text stehen: else endif Konstruktionen der Art ifdef DEBUG : : endif DEBUG fuehren zu der Fehlermeldung "invalid characters following command". Man kann dieses Problem bei einer groesseren Portierung durch das Compilerflag "-tp" umgehen. Diese Option kann in zukuenftigen Versionen nicht garantiert wer- den. Da die oben beschriebenen Konstruktionen im zukuenfti- gen ANSI-Standard nicht zulaessig sind, sollte man langfri- stig den Code entsprechend umstellen. (Etwa den unzulaessi- gen Text als Kommentar markieren.) 7.2.3 Temporaere Compilerdateien Der Compiler legt seine temporaeren Dateien im Dateiver- zeichnis /tmp ab. Allen Teilen des Compilers, bis auf den Optimizer und den Codegenerator, kann ein anderes Datei- verzeichnis fuer temporaere Dateien zugewiesen werden. Dies geschieht ueber die Umgebungsvariable "TMPDIR" oder die Op- tion "-Tpathname". 7.2.4 Leseschutz des leeren Adressraumanfangs Die vom Binder erzeugten ablauffaehigen Programme haben am Anfang des Adressraumes einen 4 KB grossen Bereich, der vor Schreibzugriffen geschuetzt ist. Jeder schreibende Zugriff auf eine Adresse von 0 bis 4095 (z.B. ueber einen unver- sorgten Pointer), fuehrt deshalb zu einem Adressierungsfeh- ler. ("Bus error", Signal SIGBUS.) Mit der Binderoption "-MU" kann der Bereich von Adresse 0 bis 4095 auch vor Lesezugriffen geschuetzt werden. Bei Auf- ruf des Binders ueber das cc-Kommando gibt man diese Option als "-LMU" an. Diese Option wird nicht offiziell freigege- ben; eine Gewaehrleistung wird nicht uebernommen. 7.2.5 Shared memory Beim Erzeugen von "shared memory"-Segmenten werden im Dateiverzeichnis /usr/att/usr/tmp/SysVshmem Dateien an- gelegt, die in den Adressraum des Anwendungsprozesses abge- bildet werden. Man sollte deshalb dafuer sorgen, dass in dem betroffenen Dateisystem immer genuegend freier Speicherbe- reich zur Verfuegung steht. Das Dateiverzeichnis "SysVshmem" wird beim Systemstart von SINIX V5.22 durch die Prozedur /etc/rc.sys5 geleert. shmget() erlaubt "shared memory"-Segmentgroessen von 0 bis 4 GB. Die Pruefung auf tatsaechlich verfuegbaren Speicher erfolgt erst bei shmat(). Eine Obergrenze fuer den verfueg- baren Speicher ist durch den virtuellen Adressraum des Pro- zessors gegeben (16 MB fuer CPU NSC32016 und NSC32032 mit MMU NSC32082 und 2 GB fuer CPU NSC32332 mit MMU NSC32382 oder fuer CPU NSC32532). Eine andere Obergrenze ist durch den freien Platz in dem Dateisystem gegeben, in dem sich das Dateiverzeichnis /usr/att/usr/tmp/SysVshmem befindet. Die Groesse eines "shared memory"-Segmentes wird immer auf ein Vielfaches der logischen Pagesize (4KB) aufgerundet. shmat() rundet eine angegebene Anfangsadresse immer auf ein Vielfaches der logischen Pagesize auf. Mit dem Kommando ipcrm koennen "shared memory"-Segmente ge- loescht werden. Bsp.: ipcrm -m shmid oder ipcrm -M shmkey shmid ist ein "shared memory identifier" und shmkey ist ein "key" (dezimal) zu einem "shared memory identifier". Das Kommando ipcs unterstuetzt "shared memory" nicht. Die mit der Funktion shmget() erzeugten Dateien im Ver- zeichnis /usr/att/usr/tmp/SysVshmem dienen dem System im wesentlichen als Paging-Bereich fuer "shared memory"-Seg- mente. Deshalb vergroessert sich auch der Paging-Bereich nach dem ersten "attach" eines solchen Segmentes (Kommando /etc/pstat -T). Die Besonderheit der SINIX Implementierung von "shared memory" bringt es mit sich, dass jeder read bzw. write Systemcall auf eine "shared memory"-Datei, die in den Adressraum eines Prozesses abgebildet ist, den ent- sprechenden Hauptspeicherinhalt liest bzw. beschreibt. Da die von shmget angelegten Dateien am Anfang noch interne Verwaltungsinformation enthalten, sind diese Dateien immer etwas groesser als der angeforderte Speicherbereich. Bei Benutzung von "shared memory" sollte man auch folgende Punkte beachten: - Beim ersten Aufruf von shmat fuer einen "shared memory identifier" wird an die von shmget erzeugte Datei ein mit Nullbytes gefuellter Bereich angehaengt, der der Groesse des Segmentes entspricht. Ein haeufiges Erzeugen und Zerstoeren von "shared memory" Segmenten ist deshalb aus Performancegruenden nicht zu empfehlen. - Bei jedem shmat werden vom Betriebssystem neue "pageta- ble entries" aufgebaut. Deshalb sollte man ein Segment in einem Prozess nicht unnoetig mit shmat in den Adressraum abbilden und mit shmdt abhaengen. - Bei jedem shmat wird ein Filedeskriptor belegt, der erst bei dem zugehoerigen shmdt wieder freigegeben wird. - Bei jedem shmat mit "shmaddr=0" wird der "break" des Prozesses erhoeht. Nach einem shmdt entsteht ein "Loch" im Adressraum dieses Prozesses. Dieses "Loch" kann nur durch einen Aufruf von shmat mit Angabe der Anfangs- adresse dieses "Lochs" beseitigt werden. Ein haeufiger Aufruf von shmat mit "shmaddr=0" kann also dazu fuehren, dass der Adressraum des Prozesses ueberlaufen wuerde und deshalb ein weiterer Aufruf von shmat nicht erfolgreich ist. (Ein Herabsetzen des breaks mit brk(2) ist nicht zu empfehlen, da andere Bibliotheksfunktionen ueber malloc oder mit brk dynamisch Speicherplatz allokieren koennen. Das Herabsetzen des "breaks" kann dann in anderen Pro- grammteilen unerwartete Folgen haben.) - Ein "shared memory"-Segment kann nicht resident im Hauptspeicher gehalten werden. Ein entsprechender Aufruf von shmctl mit den flags "SHM_LOCK "bzw. "SHM_UNLOCK" ist wirkungslos. Ein "shared memory"-Segment unterliegt dem Paging. Deshalb fuehren unnoetig grosse "shared memory"-Segmente zu einer hohen Zahl von "page faults". Dieser Effekt kann zu erheblichen Performance-Nachteilen fuehren. Grosse "shared memory" Segmente verlangen eventu- ell eine grosse Anzahl im Haupspeicher geladener Seiten ("working set"). Da diese durch die maximale "resident set size" begrenzt wird, kann es eventuell von Vorteil sein, die maximale "resident set size" mit vmtune zu vergroessern. (Siehe vmtune im Systemverwalter Manual.) - Die bei shmget angelegten Dateien haben immer die Zu- griffsrechte "0666". Die beim Funktionsaufruf angege- benen Zugriffsrechte fuer das "shared memory"-Segment werden nicht uebernommen. Diese Zugriffsrechte werden nur von den "shared memory" Funktionen ausgewertet. Damit ist allerdings der Datenschutz prinzipiell nicht gewaehrleistet. Um dies zu aendern kann die Anwendung die Zugriffsrechte der Dateien explizit mit chmod(2) setzen. Dies kann allerdings ein unerwartetes Verhalten der "shared memory" Funktionen nach sich ziehen, da diese Funktionen erwarten, dass sie die entsprechende Datei zum Lesen und Schreiben eroeffnen koennen. Die "shared memory" Dateien haben die Namen "id_%x", wobei "%x" durch die sedezimale Darstellung des "shared memory identifiers" zu ersetzen ist. Falls fuer den "key" nicht IPC_PRIVATE angegeben wurde, ist diese Datei auf die Datei "key_%x" gelinkt. Dabei ist "%x" durch die sedezimale Darstellung des "key's" zu ersetzen. - Nach dem Aufruf von shmat fuer ein "shared memory"- Seg- ment kann man die zugehoerige Datei "id_%x" und eventuell "key_%x" loeschen. Danach kann aber kein Prozess dieses "shared memory"-Segment seinem Adressraum neu angliedern. Ein Aufruf von shmget mit dem gleichen Key wird ein neu- es, voellig unabhaengiges "shared memory"-Segment erzeu- gen, sofern das flag "IPC_CREAT" gesetzt ist. Die Pro- zesse, die das zu der geloeschten Datei gehoerende "shared memory"-Segment ihrem Adressraum vor dem Loeschen bereits angegliedert hatten, koennen mit diesem Segment normal weiterarbeiten. Nur Aufrufe von shmctl oder shmat mit dem zugehoerigen "shared memory identifier" liefern einen Fehler oder falsche Ergebnisse, falls ein neues Segment mit dem gleichen Identifier erzeugt wurde. - In der zu einem "shared memory" Segment gehoerenden Struktur shmid_ds wird das Element shm_nattch nicht versorgt. Unabhaengig von diesen implementationsspezifischen Punkten muss man folgendes beachten: In einem "shared memory" koennen mehrere Prozesse gleich- zeitig Veraenderungen vornehmen. Je nach Verwendung des "shared memory" muessen die Prozesse eventuell ausschlie- ssen, dass es zu gleichzeitigen Veraenderungen im "shared memory" kommt. Da unteilbare (atomare) Zugriffe nicht moeglich sind, muessen sich die Prozesse auf geeignete Weise synchronisieren. Dies gilt in erhoehtem Masse fuer einen Parallelrechner wie den MX500. Das Standardbetriebsmittel zur Prozesssynchronisation sind die Semaphore. 7.2.6 Semaphore Eine intensive Verwendung der "System V"-Semaphore bringt eine hohe Systembelastung und Performancenachteile mit sich. Fuer Portierungen auf andere SINIX-Maschinen kann folgendes wichtig werden: ein parallelisierter Algorith- mus, der sehr haeufige Zugriffe auf "System V"-Semaphore benoetigt, ist eventuell umso langsamer, je mehr Prozes- soren er nutzt. Ausserdem kann die Systembelastung sehr hoch ansteigen. Bei der Verwendung von Semaphoren mit "Undo"-Strukturen ist der maximale "semaphore-adjust" Wert eines Prozesses zu beachten. 7.2.7 Implementierung von Systemaufrufen Bestimmte Funktionen muessen nicht unbedingt als System- aufrufe implementiert sein. Sie koennen auch durch Biblio- theksfunktionen auf andere vorhandene Systemdienste abge- bildet werden (z.B. shmat(), shmget()). Wird ein Programm mit einem Debugger auf Fehler unter- sucht, so ist die Bibliothekssimulation von Systemaufrufen sichtbar. 7.2.8 Binder-Option "-u" Die Binderoption "-u" wirkt sich zur Zeit nur auf Text- symbole, d.h. Namen von Funktionen aus. Bei Variablen hat sie keine Wirkung. Dem Symbolnamen, den man mit der Option "-u" uebergibt, muss immer ein "_" vorangestellt werden. 7.2.9 curses(): Alternativer Zeichensatz Ueber das Attribut "A_ALTCHARSET" kann der alternative Zei- chensatz eingeschaltet werden. Dieses Attribut ist nicht dokumentiert und gehoert nicht zum Leistungsumfang von X- OPEN. Deshalb kann bei seiner Verwendung keine Gewaehrlei- stung uebernommen werden. 7.2.10 Debug-Version des libc-Moduls malloc.o (dbg_malloc.o) In SINIX V5.22 wird unter dem Pfad /usr/lib eine Debug- Version des libc-Moduls malloc.o namens dbg_malloc.o be- reitgestellt. Dieses Modul soll dem Benutzer helfen, Ueberschreibungs- fehler von dynamisch allokierten Speicherbereichen zu su- chen. Das Modul muss zu diesem Zweck zum eigentlichen Pro- gramm explizit dazugebunden werden. Sowohl die Funktion malloc() als auch die Funktion free() wurde um Plausibilitaetspruefungen erweitert, die dafuer sorgen, dass bei einem entdeckten Fehler eine entsprechende Fehlermeldung an den Benutzer erfolgt. Anschliessend wird das Programm durch ein entsprechendes assert()-Statement abgebrochen. Im Einzelnen liefert malloc() folgende Feh- lermeldungen: - Ist die Anfangsadresse eines Bereiches, dessen Ende ueberschrieben wurde, reproduzierbar, so liefert die Fehlermeldung diese Anfangsadresse und die Groesse des al- lokierten Bereiches. - Ist die Anfangsadresse eines Bereiches, dessen Ende ueberschrieben wurde, nicht reproduzierbar, so wird die ueberschriebene Adresse geliefert. Um die gelieferten Fehlermeldungen besser auswerten zu koennen, wird bei jedem Aufruf von malloc() die zurueckge- gebene Anfangsadresse des allokierten Bereiches sowie die Groesse des Bereiches in Form einer Meldung an den Benutzer ausgegeben, falls der Benutzer einer globalen Variablen _silent den Wert 0 zugewiesen hat. Defaultmaessig ist _si- lent mit 1 initialisiert. Nach demselben Schema gibt die Funktion free() ihren Aufrufparameter aus. Ausserdem liefert die Funktion free() noch Fehlermeldungen fuer den Fall, dass - versucht wird, einen Bereich freizugeben, der nie allo- kiert wurde (z.B. ungueltige Adresse als Parameter) - versucht wird, einen Bereich freizugeben, der im Moment nicht allokiert ist (z.B. bereits freigegeben) Da die Funktionen calloc() und realloc() ihrerseits mal- loc() aufrufen, ist auch bei Verwendung dieser Funktionen die beschriebene Unterstuetzung gewaehrleistet. Die Moeglichkeit weitere Fehlerfaelle zu entdecken haengt von den Werten zweier globaler Integer-Variablen (_free_check und _no_free) ab, die der Benutzer entsprechend zuweisen kann. Dabei wird folgendes bewirkt: - _free_check == 1: Vom Benutzer angeforderte bzw. freigegebene Speicherbe- reiche werden mit 0 initialisiert, wodurch bestimmte Be- nutzerfehler (schreibende Nullpointer-Dereferenzierung) zu einem Programmabbruch fuehren. - _free_check > 1: Vom Benutzer angeforderte bzw. freigegebene Speicherbe- reiche werden mit 0 initialisiert. Weiterhin wird bei jedem malloc()-Aufruf ueberprueft, ob freie Speicherberei- che mit 0 initialisiert sind. Dadurch werden Ueberschrei- bungsfehler in Bereichen entdeckt, die noch nie allo- kiert oder andererseits freigegeben aber von malloc() noch nicht wieder vergeben wurden. - _free_check == 0: Weder die Initialisierung mit 0 noch die o.a. Ueberprue- fung wird durchgefuehrt. - _no_free != 0: Vom Benutzer freigegebene Bereiche werden von malloc() nicht wieder anderweitig vergeben. Zusammen mit der Belegung _free_check > 1 koennen damit auch Ueberschrei- bungsfehler in Bereichen festgestellt werden, die mal- loc() sonst zum Zeitpunkt des Fehlers schon wieder an- derweitig vergeben haette. Defaultmaessig ist die Variable _free_check mit 2 und die Variable _no_free mit 0 initialisiert. 7.2.11 Funktionsprototypen CES V5.22 unterstuetzt mit dem Compilerflag -kansi auch AN- SI-kompatible Sprachkonstrukte, u.a. auch Funktionsproto- typen. Allerdings existieren fuer die Standardbibliotheks- funktionen in den entsprechenden Includefiles z.Zt. keine Funktionsprototypen. Das fuehrt dazu, dass beim manuellen Erhoehen des Warninglevels zahlreiche "Compilerwarnings" wegen fehlender Funktionsprototypen fuer die Standardfunk- tionen erscheinen. 7.3 Aenderungen im CES (nicht bei MX300 -05) 7.3.1 Systemcalls kill() Die bei kill() auftretende Inkompatibilitaet tritt nur in ganz besonderen Faellen auf, in denen Programme mit gesetz- tem Set-UID-Bit aufgerufen und anschliessend Signale an diese Prozesse geschickt werden. chown() Aus Sicherheitsgruenden kann nur ein Prozess mit der effek- tiven UID des Superusers erfolgreich einen chown()-Aufruf durchfuehren. exec() Bei Aufruf dieser Funktionen mit ungueltigen Adressen fuer Programm-Pfadnamen wird dem Prozess das Signal SIGSEGV zu- gestellt (frueher: Fehler mit errno=EFAULT). read(), write() Beim Lesen/Schreiben aus/in eine(r) vollen/leeren Pipe mit gesetztem O_NONBLOCK Flag wird der Systemcall mit Fehler beendet, errno=EAGAIN (frueher kein Fehler, Returnwert 0). uname() Als RELEASE wird jetzt die aktuelle Release-Kennung zu- rueckgegeben (z.B. V5.22), als VERSION die aktuelle Version (z.B. N4). Frueher: VERSION = Release-Kennung (z.B. V5.21) RELEASE = Datum der Freigabe. cuserid() Es wird jetzt der Name geliefert, der mit der effektiven User-ID des Prozesses in Verbindung steht (Frueher: Benut- zerkennung des Eigentuemers des aktuellen Prozesses). 7.3.2 Datentypen Im CES V5.22 (XPG3) haben sich gegenueber der Vorgaengerver- sion (XPG2) bei verschiedenen Funktionen die Datentypen geaendert. Da die Funktionen in verschiedenen Headerfiles fuer ein Anwenderprogramm deklariert werden, kann es bei der Uebersetzung von Programmen zu Konflikten kommen, wenn im Programm Funktionsdeklarationen nach XPG2 vorhanden sind. 7.3.3 Headerfiles Folgende Headerfiles sind in CES V5.22 neu hinzugekommen: stdlib.h termios.h (ersetzt das bisherige termio.h) ulimit.h utime.h 7.3.4 YACC Im Rahmen der Internationalisierung wurde der yacc 8-Bit- clean gemacht und bezueglich der Verarbeitung von 8-Bit- Zeichensaetzen erweitert: Es werden Zeichen, deren achtes Bit gesetzt ist, in Zei- chenkonstanten, Kommentaren und in Zeichenketten zugelas- sen. Darueberhinaus koennen 8-Bit-Zeichen auch in Namen ver- wendet werden, die zur Beschreibung der "YACC"-Grammatik dienen. Grundsaetzlich koennen alle Buchstaben sogenannte "Terminalsymbole" sein. Welche Zeichen als Buchstaben oder nicht als Buchstaben gelten, wird zur Laufzeit von "YACC" durch Auswerten der entsprechenden "Ctype"-Tabelle ermit- telt. Dabei wird auf die zu dem Zeitpunkt vorhandene in- ternationale Datenbasis zurueckgegriffen. Dies kann unbeab- sichtigte Seiteneffekte haben. Sind naemlich Zeichen (z.B. ' ' oder ' ') als Buchstaben definiert, wie dies in der Datenbasis De_DE.646 der Fall ist, in der ' ' dem 'ae' und ' ' dem 'oe' entsprechen, so sind "YACC"-Grammatiken nicht mehr auswertbar. Dieser Effekt tritt z.B. dann auf, wenn die Umgebungsvari- able LANG auf De_DE.646 gesetzt ist, wenn der YACC aufge- rufen wird. Umgehen laesst sich dieses Verhalten, wenn die Umgebungsvariable LANG gar nicht oder auf En_US.ASCII ge- setzt wird.