Mainframe Programmierung II - Cheatsheet
Komponenten eines Mainframe-Systems
Definition:
Hauptkomponenten eines Mainframes und ihre Funktionen
Details:
- CPU: Zentrale Recheneinheit (führt Programme und Prozesse aus)
- Speicher (RAM): Schneller Zugriffsspeicher für Programme und Daten
- I/O-Subsysteme: Kommunizieren mit externen Geräten (z.B. Speicher, Drucker)
- Channels: Übertragen Daten zwischen CPU und I/O-Subsystemen
- Betriebssystem: Verwaltung von Ressourcen und Koordination der Hardware-Komponenten
- Middleware: Software-Schicht zwischen Betriebssystem und Anwendungen
- Netzwerkkommunikation: Verbindet Mainframe mit anderen Systemen und Anwendern
Einführung in die COBOL-Syntax
Definition:
Einführung in die grundlegende Syntax und Struktur von COBOL-Programmen.
Details:
- COBOL-Programmstruktur: Identification Division, Environment Division, Data Division, Procedure Division.
- Identification Division: Enthält Programmname und Entwicklerinformationen.
- Environment Division: Definiert Systemumgebung, in der das Programm läuft.
- Data Division: Deklariert alle Variablen und Datenstrukturen.
- Procedure Division: Enthält die eigentlichen Programmabläufe und Logik.
- Variablen-Deklaration:
01 VARIABLE-NAME PIC X(10).
- Bedingte Anweisungen:
IF condition THEN ... ELSE ...
- Schleifen:
PERFORM UNTIL condition ... END-PERFORM
Grundsyntax von JCL
Definition:
Grundsyntax und grundlegender Aufbau von Job Control Language (JCL) zum Steuern und Verwalten von Jobs auf einem Mainframe-System.
Details:
- Statements beginnen mit //
- Haupttypen: JOB, EXEC, DD
- JOB: Definiert den Job und liefert Job-identifizierende Informationen
- EXEC: Definiert Schritte im Job, welche Prozeduren oder Programme ausführen
- DD: Definiert Datenquellen oder -senken für Job-Schritte
- Parameter: Z.B. CLASS, MSGCLASS, MSGLEVEL für JOB; PGM, PROC für EXEC; DSN, DISP, DCB für DD
- JCL-Kommentare beginne mit //*
Optimierung von Abfragen und Leistung in DB2 und IMS
Definition:
Optimierung von Abfragen und Leistung in DB2 und IMS - zentrale Techniken zur Verbesserung der Datenbank-Performance und Reduzierung der Antwortzeiten.
Details:
- Indexierung: Nutzung von Indizes zur Beschleunigung von Suchvorgängen.
- Optimierungspläne: Analyse von SQL-Ausführungsplänen zur Identifikation von Ineffizienzen.
- Statistiken: Regelmäßige Aktualisierung von Datenbankstatistiken zur Unterstützung des Optimizers.
- Gedächtnisverwaltung: Optimale Verteilung des Hauptspeichers auf Pufferpools und Cache.
- Parallelverarbeitung: Nutzung von Parallelität für aufwändige Abfragen.
- Parameter-Tuning: Feineinstellung von Datenbankparametern für spezifische Workloads.
- Proaktive Überwachung: Einsatz von Monitoring-Tools zur frühzeitigen Erkennung und Beseitigung von Leistungsproblemen.
- Verbindungsverwaltung: Effizientes Management von Datenbankverbindungen und Transaktionen.
Skripterstellung und Automatisierung in der Systemprogrammierung
Definition:
Erstellung und Nutzung von Skripten zur Automatisierung wiederkehrender Aufgaben in der Systemprogrammierung.
Details:
- Verwendung von Shell-Skripten (z.B. Bash) zur Automatisierung von Tasks
- Integration von Job-Control-Sprachen (z.B. JCL für z/OS)
- Erstellung von Batch-Prozessen
- Automatisierung mit Werkzeugen wie Cron (Unix) oder Task Scheduler (Windows)
- Verwendung von speziellen Automatisierungsframeworks (z.B. Ansible, Puppet)
- Testen und Debugging von Automatisierungsskripten notwendig
Security und Datenschutz in Mainframe-Umgebungen
Definition:
Schutz vor unbefugtem Zugriff und Sicherstellung der Datenintegrität in Mainframe-Computersystemen.
Details:
- Authentifizierung: Benutzer müssen durch ID und Passwort oder Multi-Faktor-Authentifizierung identifiziert werden.
- Autorisierung: Zugriffsrechte durch Rollen und Berechtigungen steuern.
- Verschlüsselung: Daten im Ruhezustand und bei der Übertragung verschlüsseln.
- Überwachung: Protokollierung und Analyse von Systemaktivitäten zur Erkennung von Sicherheitsvorfällen.
- Compliance: Einhaltung gesetzlicher Vorschriften wie DSGVO und branchenspezifischer Sicherheitsstandards.
- Backup und Recovery: Regelmäßige Datensicherungen und Wiederherstellungspläne für den Fall eines Datenverlusts.
Fehlerbehandlung und Debugging in COBOL
Definition:
Fehlerbehandlung in COBOL umfasst das Erkennen und Reagieren auf Fehler während der Programmausführung; Debugging ist der Prozess zur Identifikation und Behebung dieser Fehler.
Details:
- Verwendung der SEQUENTIAL, RANDOM und DYNAMIC Zugriffsarten für Dateien.
- Verwendung der STATUS-CODES zur Fehleranalyse.
- Abfangen von Fehlern mit ON ERROR und INVALID KEY.
- Nachverfolgen von Programmabläufen mit DISPLAY-Anweisungen.
- Verwendung von Debugging-Tools wie IBM Debug Tool.
- Analyse von ABEND-Codes und Systemlogs zur Fehlerdiagnose.
Systemüberwachung und Fehlerbehebung
Definition:
Überwachung und Diagnostik von Mainframe-Systemen zur zeitnahen Erkennung und Behebung von Fehlern.
Details:
- Systemüberwachungstools: IBM z/OS-MF, IBM OMEGAMON
- Fehlererkennung: Log-Analyse, Performance-Monitoring, Alerts
- Fehlerdiagnose: Dumps, Traces, Diagnosewerkzeuge
- Fehlerbehebung: PTFs, Workarounds, System Recovery
- Betriebssystemunterstützung: z/OS, z/VM
- Wichtige Kommandos: DISPLAY, DUMP, START/STOP