• Keine Ergebnisse gefunden

Einführung in die Informatik

N/A
N/A
Protected

Academic year: 2021

Aktie "Einführung in die Informatik"

Copied!
101
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Einführung in die Informatik Inf, SAT, Wing, Mi

Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm

Hochschule Harz

FB Automatisierung und Informatik

mwilhelm@hs-harz.de

http://www.miwilhelm.de

Raum 2.202

Tel. 03943 / 659 338

(2)

Inhalt

1. Grundlagen der Informatik

Zahlensysteme, Nachkommazahlen, Single-Format

2. Rechnerarchitekturen (Hard- und Softwaresysteme)

Rechnerarchitekturen, Betriebssysteme,

3. Programmierung

Sprachen, Datentypen, Datenstrukturen, Programmiermodelle, Compiler, Programmierparadigmen, Domänenspezifische Sprachen, Algorithmen

4. Verteilte Systeme (Netzwerke) 5. Themenfelder der Informatik

Datenbanken, Big Data, Multimediaverarbeitung, Software Engineering, KI, Human

(3)

Einprozessorsysteme John v. Neumann

Eine CPU

Ein Bus

Havard-Rechnerarchitekturen

Mehrere CPU‘s

Mindestens zwei Bussysteme (North- und SouthBridge)

Aufteilen der Geräte in Bezug auf die Geschwindigkeit

Klassifizierung von Rechnerarchitekturen:

(4)

Von-Neumann Architektur

nach John von Neumann

Prozessor =

Rechenwerk +

Arithmetic-Logical-Unit (ALU) + Steuerwerk

Speicher Module

Akumulator

ALU

Speicher Steuerwerk

Befehlszähler

Ein-/

Ausgabe

Befehl e

Daten Daten

(5)

Rechenwerk:

ALU MDU BITP SFT

ALU: Arithmetisch-Logische-Einheit MDU: Mupliplikation / Division

BITP: Bitprozessor SFT: Barrel Shifter

(+) Spezialisierte Module (+) Parallele Bearbeitung

(+) Optimierte Befehle in Zusammenarbeit mit Compiler (MMX)

(6)

Arithmetisch-Logische Einheit:

X-Register Y-Register

Z-Register Flag-Register

ALU:

(7)

Arithmetisch-Logische Einheit:

Realisierung der Elementaroperationen:

ADD, SUB, AND, OR, XOR, NOT, EQ

Registerbreite: 8, 16, 32, 64

Ausnahmefälle:

Carry: Ergebnis zu groß für Register Z (Überlauf) Overflow: Ergebnis zu groß für die Zahlendarstellung Underflow: Ergebnis zu klein für die Zahlendarstellung Sign: Ergebnis ist negativ

Zero: Ergebnis ist null

(8)

Operationsprinzipien

Der Prozessor (die Central Procesing Unit, CPU) arbeitet taktgesteuert.

Die internen Signale sind binär codiert.

Der Inhalt einer Speicherzelle wird über eine Adresse angesprochen.

Programme und Daten werden sequentiell bearbeitet (single instruction single data, SISD).

Es wird eine feste Wortlänge zur Verarbeitung verwendet.

Bitmuster im Speicher repräsentieren 3 Arten:

Daten, Befehle, Adressen

(9)

Die Elemente des Prozessors

Das Steuerwerk enthält den Befehlszähler (Adresse des nächsten Befehls), das Befehlsregister und das

Adressregister (Adresse des nächsten Datums)

Das Rechenwerk (ALU) enthält mehrere Datenregister und Zusatzregister (Flagregister). Die Verknüpfung erfolgt hier gleichzeitig innerhalb eines Takts mit allen Bits je

nach Datenbreite

Einsatz von Mikrocode zur Steuerung der internen

Abläufe: eigener Speicher (ROM), Adressen der Register,

Steuerwerk zur Abfolge von Mikrobefehlen in mehreren

Takten, Ziel: maximale Parallelisierung bei minimalem

Aufwand an Logikschaltungen

(10)

Modifizierte Architektur

Busse

Adressbus

Datenbus

Steuerbus

Mikro- prozessor

CPU

speicher Arbeits-

Festplatte

E/A-Module Zusatz-

elektronik

Taktgeber

Adressbus

Datenbus

Steuerbus

ibib

(11)

Motherboard: PCI-BUS

(12)

Aufgaben eines Motherboards

 Die Northbridge sollte die Daten so schnell transportieren können wie sie die CPU liefert.

 Der Arbeitsspeicher sollte die Daten so schnell aufnehmen können wie sie von der CPU kommen.

 Die Interne Verbindung (Datenautobahn) zwischen North- und Southbridge sollte so groß sein wie nur möglich, um einen

Flaschenhals zu vermeiden. Hier krankt es bei den meisten

Mainboards erheblich.

(13)

Aufbau eines Betriebssystems

BS-Kernel Prozessverwaltung

Log. Geräteverwaltung

Speicherverwaltung

Ein- / Ausgabesysteme Dateisysteme

Gerätetreiber Gerätetreiber

Anwenderprogramm

Kommando-Interpreter

Schnittstelle

zur Hardware

CPU / Geräte

(14)

Dateien,Dateisysteme

Werden zur Verwaltung von externen Speicher eingesetzt

dienen der dauerhaften Speicherung von Nutzerdaten, Programmen, BS-Daten

Speicherung via Laufwerk, Pfad, Dateinamen

Umsetzung des logischen Namens in physikalische Parameter

Zugriffszeit einer Festplatte ca. 1000.000-fach langsamer als Speicher

Speichervolumen ca. 80000-fach größer (Tera-Byte)

(15)

Der Hauptspeicher ist schnell und eignet sich hervorragend zur Verwaltung von Daten / Programmen!

Probleme:

Hauptspeicher ist begrenzt

Keinen Zugriff auf eigene Daten von anderen Prozessen

Bei Terminierung des Prozesses Datenverlust!

Dateien,Dateisysteme

(16)

Lösung:

Die Informationen werden auf einen externen Datenträger

Festplatte

CD-Laufwerk

DVD-Laufwerk

Blu-Ray-Laufwerk

USB-Laufwerk

Bandlaufwerk

Netzwerk

Cloud-Speicherung

gespeichert.

(17)

Aufgaben eines Dateisystems

Erzeugen einer Datei, Verzeichnisses

Löschen einer Datei

Registrierung von Dateien (Windows, chmod Unix)

Lesen von Dateien

Schreiben in Dateien

Schutz der Datei (Rechteverwaltung, UGW=777)

Verwaltung der Metainformationen (Attribute)

(18)

Aufgaben eines Dateisystems (2)

Aufbau einer Grundstruktur auf dem Datenträger

Partitionierung

Formatierung

Aufbau einer logischen Reihenfolge (1 bis n)

Unabhängigkeit von der phys. Struktur

Zylinder, Sektor, Spur sind nur dem Gerät bekannt

Aufbauend auf der Blocknumerierung werden Lese- und Schreiboperationen zur Verfügung gestellt

Grundstruktur: FAT12, FAT16, FAT32, NTFS, Ext2, Ext3, Ext4,

(19)
(20)

Eigenschaften von Dateisysteme:

MS-DOS Windows Linux

Dateinamen ignore case ignore case case sensitive Verknüpfungen

zu Programmen eine pro File eine pro File viele

Namenslänge 8.3 255 255

Leerzeichen ja ja nein

Filesystem FAT16 FAT32, NTFS ext2, ext3, jfs

Link zu Dateien nein nein, ja ja

(21)

Eigenschaften von Dateisysteme:

(22)

Eigenschaften von Dateien: ASD

Viele moderne Dateisysteme haben das Prinzip der Datei

verallgemeinert, so dass man in einer Datei nicht nur eine

Folge von Bytes, einen sogenannten Stream (engl. Strom),

sondern mehrere solcher Folgen (alternative Datenströme)

abspeichern kann

(23)

Microsoft

FAT12/16/32 neuere Variante der FAT-Dateisystemfamilie mit erweiterten Limits gegenüber FAT16, ab Windows 95b bzw.

Windows 2000 (wird von neueren Betriebssystemen unterstützt)

exFAT : für den Einsatz auf Flash-Speicher spezialisierte Version von FAT32

FATX: spezialisierte Variante von FAT16/FAT32 für die Xbox

NTFS (New Technology File System): Journaling-Dateisystem der Windows-NT-Produktlinie, dort das Standarddateisystem.

ReFS (Resilient File System; deutsch Robustes Dateisystem):

Neues Dateisystem, eingeführt mit Windows 8[2], basierend auf B+-Bäumen

VFAT (Virtual FAT): Optionale Erweiterung von

FAT12/FAT16/FAT32, um Unterstützung für lange Dateinamen und

Sonderzeichen zu gewährleisten, ab Windows 95

(24)

Apple

Apple DOS: diskettenbasiertes Dateisystem für den Apple II

Apple SOS: Weiterentwicklung von Apple DOS für den Apple III, für Disketten (5,25″ und 3,5″) und Festplatten (Apple ProFile 5 MB und 10 MB)

Apple ProDOS: Dateisystem der späten Apple-II-Modelle (Apple IIe und Apple IIgs), dateisystemkompatibel mit Apple SOS

MFS (Macintosh File System): hierarchieloses Dateisystem mit Macintosh- spezifischen Eigenschaften, auf frühen Macintosh-Modellen (Macintosh 128 und Macintosh 512)

HFS (Hierarchical File System): hierarchisches Dateisystem mit Macintosh- spezifischen Eigenschaften, auf Macintosh-Modellen ab 1986 (ab Macintosh Plus)

HFS+: weiterentwickelte Variante von HFS mit Journaling und großzügigeren Beschränkungen für Dateigrößen, Volumegrößen usw., Standard unter Mac OS 8.1 bis macOS 10.12

HFSX: Variante von HFS+ mit Unterscheidung von Groß- und Kleinbuchstaben[1], Standard bis iOS 10.2

(25)

Linux

btrfs (Btree File System) – ein sogenanntes Copy-On-Write-Dateisystem

EcryptFS (Enterprise Cryptographic Filesystem) – ein verschlüsselndes Dateisystem mit Unterstützung im Linux-Kernel

EncFS (Encrypted File System) – ein auf FUSE aufbauendes, verschlüsselndes Userland-Dateisystem

ext (Extended File System) – für Linux weiterentwickelte Variante des minix- Dateisystems

ext2 (Second Extended File System) – weiterentwickelte Variante von ext mit erweiterten Grenzen; war lange Zeit das Standard-Dateisystem unter Linux

ext3 (Third Extended File System) – weiterentwickelte Variante von ext2 mit Journaling

ext3cow (Third Extended File System with Copy-On-Write) – weiterentwickelte Variante von ext3 mit Copy-On-Write-Funktionalität

ext4 (Fourth Extended File System) – weiterentwickelte Variante von ext3, u. a.

mit erweiterten Grenzen (100 MB Blöcken)

(26)

Linux

FTPFS – ein auf FTP aufbauendes Kernelmodul; wurde etwa 2005 abgelöst von LUFS/FUSE oder CurlFtpFS

Next3 – auf ext3 aufbauendes Dateisystem, welches die Möglichkeit bietet, sogenannte Snapshots zu erstellen

NILFS (New Implementation of a Log-structured File System) – ein Logging- Dateisystem von NTT

NILFS2 – weiterentwickelte Variante von NILFS

OrangeFS – ein verteiltes (oder paralleles) Dateisystem, welches auf dem Parallel Virtual File System aufbaut

ReiserFS – ein Journaling-Dateisystem von Namesys

Reiser4 – ein Journaling-Dateisystem mit effizienter Speicherung und Plugin- Unterstützung, von Namesys

Tux3 – ein versionierendes Dateisystem

(27)

UNIX

AdvFS (Tru64 Unix Advanced File System): Journaling- Dateisystem unter Tru64 UNIX

AFS (Acer Fast Filesystem): Dateisystem unter SCO OpenServer (nicht verwechseln mit Andrew File System)

DTFS (Desktop File System): Dateisystem mit Kompression unter SCO OpenServer

EAFS (Extended Acer File System): weiterentwickelte Variante von AFS, unter SCO Unix

EFS (Extent File System): Dateisystem unter IRIX, Vorgänger von XFS

FFS (Berkeley Fast File System): Variante von UFS unter BSD (nicht verwechseln mit Amiga FFS)

HTFS (High Throughput File System): Standarddateisystem unter

SCO OpenServer

(28)

UNIX

LFS (Log-structured File System): weiterentwickelte Variante von UFS mit Logging-Funktionalität

minix: Dateisystem des gleichnamigen Betriebssystems

s5fs (System V File System): das klassische Dateisystem des System-V-Unix von AT&T

UFS (Unix File System): verwendet unter Solaris und BSD

VxFS (Veritas Journaling File System): Journaling-Dateisystem von VERITAS, Standarddateisystem unter HP-UX

XFS: Journaling-Dateisystem von SGI primär für IRIX (nicht verwechseln mit xFS)

ZFS (Zetta File System): Dateisystem mit weit gesteckten Limits

und vielfältigem Volumenmanagement, von Sun Microsystems

für Solaris geschrieben

(29)

Massenspeicher: Festplatte

(30)

Aufbau einer Festplatte

(31)

Aufbau einer Festplatte

(32)

Festplatte

Einteilung in

- Sektoren (512 Byte)

- Spuren

- Kopf

- Zylinder

Betriebssystem

- Verwendet ein Cluster, n-faches eines Sektors

Adressierung im Betriebssystem von 0 bis n-1

Adressierung in der Festplatte mit Sektor#, Spur#, Kopf#

(33)

Festplatte: Clusterdefinition des Betriebssystems

Anzeige: Sektoren der Festplatte, alle 512 Byte groß

A

B

C

d

(34)

Festplatte: Clusterdefinition des Betriebssystems

7

Ein BS-Cluster ist ein Vielfaches eines Sektors: 2x

Anzeige: Sektoren der Festplatte, alle 512 Byte groß

0 8

n-1

(35)

Festplatte: Clusterdefinition des Betriebssystems

0

Ein BS-Cluster ist ein Vielfaches eines Sektors: 2x

Bild zeigt Belegung wenn Clustergröße 1024 Bytes sind  2 Sektoren/Cluster Anzeige: Sektoren der Festplatte, alle 512 Byte groß

8

7

n-1

(36)

Festplatte: Clusterdefinition des Betriebssystems

0

16 24

Ein BS-Cluster ist ein Vielfaches eines Sektors: 2x

Anzeige: Sektoren der Festplatte, alle 512 Byte groß

8

7

n-1

(37)

Eigenschaften von Dateien

• Speichern beliebige Anzahl von Bytes

• Die Bytes haben manchmal eine logische Bedeutung

• gruppieren von Dateien mittels Verzeichnissen (directories)

• Wurzelverzeichnis: speichert zusätzliche Informationen des Laufwerkes

• Pfad: alle beteiligten Verzeichnisse und der Dateiname

• Geräte erscheinen als Spezialdateien ohne eigene Verzeichnisstruktur (Unix)

• Ein Prozess wird mit einem Arbeitsverzeichnis verknüpft

• Berechtigungen werden durch uid, guid und Schutzcode nachprüfbar (Unix)

9 Bit Schutzcode, je drei Bit für Besitzer, Gruppe und Welt: rwx

(38)

Funktionen für Dateien

Create (filename)

Delete (filename)

handle=Open (filename, modus)

Close (handle)

Read (handle, buffer, count)

Write (handle, buffer, count)

Append (handle, buffer, count)

Seek(handle, count)

lock(handle)

unlock(handle)

setAttrib(handle, bits)

getAttrib (handle)

(39)

Programmdatei DOS:

Ausführbare Dateien 1) Kopf

• Magische Nummer (MZ, Mark Zbikowsky)

• Textgröße

• Datengröße

• BSS-Größe

• Symboltabellengröße

• Einstiegspunkt (Viren)

• Flags 2) Daten

3) Programmcode

4) Relokationsbits

5) Symboltabelle

(40)
(41)

Structure Name Optional Size Purpose Bitmap File

Header

Nein 14 Bytes Allgemeine Information DIB Header Nein Feste Größen mit

7 verschiedenen Versionen

Detailinformation

Extra bit masks Ja 3 or 4 DWORDs (12 or 16 Bytes)

Definiert das Pixelformat Color Table Semi-

optional

Variable Größe Palettentabelle

Gap1 Ja Variable Größe Struktur-Alignment Pixel Array Nein Variable Größe Werte der Pixel

Gap2 Ja Variable Größe Struktur-Alignment ICC Color Profile Ja Variable Größe Farbprofile

(42)

Dateitypen

Inhalt einer Datei:

• ASCII-Text

• beliebige Bytes

• feste Records, struct

• Daten in einer Baumstruktur (Winword, Excel)

• Header mit unterschiedlichen Records

– dBase Datei – Grafikdateien – MP3-Datei

Zusätzliche Daten: Dateiattribute

Datum / Zeit

(43)

Funktionen für Verzeichnisse

CreateDir (name)

DeleteDir (name)

RenameDir (oldName, newName)

Link (Name)

FirstName (Name, Bits), Traversieren einer Festplatte

NextName () , Traversieren einer Festplatte

(44)

Implementierung von Dateien

Verfahren: kontinuierliche Allokation:

Die Datei wird auf n-Blöcken hintereinander gespeichert.

Vorteil: einfach zu implementieren, schnell

Nachteil: keine dynamische Änderung möglich, Fragmentierung (welche) Dateigröße sollte (muss) vorher bekannt sein!

Festplatte (Datei 1 bis 4):

(45)

Festplatte: Clusterdefinition des Betriebssystems

Anzeige: Sektoren der Festplatte, alle 512 Byte groß

A

B

C

d

(46)

Implementierung von Dateien

Verfahren: verknüpfte Liste:

1. Liste: Block enthält Pointer 2. Liste: Block enthält Daten

Vorteil: keine externe Fragmentierung, Auffüllen der Block-Lücken Blockgröße ist Zweierpotenz

Nachteil: Random-Zugriff

Pointer

Daten

Pointer Pointer

Daten Daten

(47)

Festplatte: Clusterdefinition des Betriebssystems

Anzeige: Sektoren der Festplatte, alle 4096 Byte groß

A

B

C

d

Datei1: 1, 13, 25, 10, 4, 8, 28

E F

G

(48)

Implementierung von Dateien

Verfahren: verknüpfte Liste mit Indexeinsatz (FAT-12):

Block: Pointer

Liste: Tabelle mit den Indizes

Nachteil: die Tabelle muss im Hauptspeicher ständig präsent sein.

Interne Fragmentierung

Beispiel mit 3 Bytes Länge:

000 freier Cluster 001-FFD Cluster belegt FFE defekt

FFF letzter Cluster Vorteil: keine externe Fragmentierung

Blöcke mit Zweier Potenz

Tabelle im Hauptspeicher (FAT)

 4093 mögliche Cluster

(49)

Beispiel: MS DOS FAT16

2 Bytes:

0000 freier Cluster 0001-FFFD Cluster belegt FFFE defekt

FFFF letzter Cluster

 65533 mögliche Cluster

80 GBytes  1,2 MB Clustergröße

Abhilfe:

Unterteilung in Partition, Maximal vier sind möglich!

Beispiel: Windows FAT32

4 Bytes:

0000 0000 freier Cluster 01-FFFF FFFD Cluster belegt FFFF FFFE defekt

FFFF FFFF letzter Cluster

 4,29·1009 mögliche Cluster

80 GBytes  19 Bytes Clustergröße

Implementierung von Dateien

(50)

Dateigröße: 4 GB

 Clustergröße: 4 KB = 4096 Bytes

 Frage: Wie viele Cluster?

Cluster-Berechnung

 1 GB sind 1073741824 Bytes

 4 GB sind 4294967296 Byte

 Anzahl Cluster: 4294967296/4096 = 1048576 Cluster

Ext4 mit 100 MB Blöcken:

 1 GB sind 1073741824 Bytes

 4 GB sind 4294967296 Byte

 Anzahl Cluster: 4*2

30

/(100*2

20

)= 4096/100 = 41 Cluster

(51)

Implementierung von Dateien: I-nodes (UNIX)

Jeder Dateieintrag enthält:

I-Node Nummer: (2 Bytes, 4 Bytes, 8 Bytes)

Dateinamen: 200 Zeichen

2 Bytes

I-Node Nummer

I-Node

Dateiname, Größe, Datum, Zeit,

Plattenblöcke, Benutzerrechte

14 Bytes, Dateiname

(52)

Verweis auf Datenblöcke

1. Block

8. Block 9. Block 10. Block

3. Block 2. Block

2x indiz. Block 1x indiz. Block

Cluster

Cluster Cluster 1. Block

256

(53)

Verweis auf Datenblöcke

1. Block

8. Block 9. Block 10. Block

3x indiz. Block 3. Block 2. Block

2x indiz. Block 1x indiz. Block

Cluster 0. Block

255

Cluster

Cluster

Cluster

255 255

255 255 255

0. Block 0. Block

0. Block 0. Block 0. Block

(54)

Einlesen einer Datei:

Analyse des Pfades/Namens

Bestimme Laufwerk

Suche Pfad

Öffne Datei zum Lesen/Schreiben (Rechte)

Stelle Hauptspeicher zur Verfügung

Lese die ersten Blöcke von der "Festplatte" in den Hauptspeicher (Zwischenspeicher)

Bis hierher ist es ein Stream mit Bytes

Gib den Anfangszeiger des Speichers an das aufrufende Programm

Das Programm liest nacheinander die Daten

Ab hier ist es ein Stream mit logischen Daten (int, double, String)

mimi

(55)

Cache

CPU:

3 GHz Hauptspeicher

5ns

Cache: i7-6770 HQ

-

Level1: Cache 256 kB

-

Level2: Cache, 1 MB

-

Level3: Cache, 6 MB

CPU

L1 Cache L2 Cache L3 Cache Hauptspeicher

0,3 ns

5 ns

1 ns 3 ns

(56)

ASUS ROG Rampage VI Extreme Omega: 661,00 Euro

(57)

Intel Core i9-9980XE Extreme Edition CPU - 18x 3.00GHz, 2040 €

(58)

Intel Core i9-9980XE Extreme Edition CPU - 18x 3.00GHz, 2040 €

L1 Cache 18x 32 KB = 576 KB

L2 Cache 18x 1024 KB

L3 Cache 24,75 MB

Bis zu 4,5 GHz Taktfrequenz

Maximal Speicher: 128 GB

Cache: i7-6770 HQ

-

Level1: Cache 256 kB

-

Level2: Cache, 1 MB

-

Level3: Cache, 6 MB

(59)

AMD Ryzen Threadripper 2990WX CPU - 32x 3.00GHz, 1854 Euro

(60)

AMD Ryzen Threadripper 2990WX CPU - 32x 3.00GHz, 1854 Euro

L1 Cache 18x32 KB = 576 KB

L2 Cache 32x512KB = 16 MB

L3 Cache 64 MB

Bis zu 4,2 GHz Taktfrequenz

Maximal Speicher: 128 GB

Cache: i7-6770 HQ

-

Level1: Cache 256 kB

-

Level2: Cache, 1 MB

-

Level3: Cache, 6 MB

(61)

Intel Xeon Gold 6130, 16x 2.10GHz, 2101,99 Euro

(62)

Intel Xeon Gold 6130, 16x 2.10GHz, 2102 Euro

L1 Cache 16x 32 KB = 512 KB

L2 Cache 16x 1024 KB

L3 Cache 22 MB

Maximal Speicher: 768 GB

Max Bandbreite: 119.21 GB/s

Bandbreite

Single 19.87 GB/s

Double 39.74 GB/s

Quad 79.47 GB/s

Cache: i7-6770 HQ

-

Level1: Cache 256 kB

-

Level2: Cache, 1 MB

-

Level3: Cache, 6 MB

(63)

Cache

Hauptspeicher

5ns Festplatte:

5 ms

Cache

-

Cache 256 kB

-

SSD

Seagate IronWolf Pro 14TB 3.5 Zoll

546,26 Euro

Kapazität 14 TB

Drehzahl 7.200 U/Min

Cache 256 MB

(64)

Solid State Disk

Seagate Nytro 3330 SSD 15.36TB

8399,00 Euro

2.5 Zoll

Schnittstelle: SAS 12Gb/s

Kapazität: 15,36 TB

Transferleistung lesend:1.3 GB/s

Transferleistung schreibend 1.0 GB/s

(65)

Einteilung nach Zugriffsformen

Zugriffsformen

ortsadressierter Speicher

inhaltsbezogener Speicher

wahlfreier Zugriff

sequentieller Zugriff

index- sequentieller

Zugriff

(66)

Einteilung nach Zugriffsformen

Ortsadressierter Speicher (Datei)

Sequentieller Zugriff (Java-Datei)

Wahlfreier Zugriff (Binär-Blöcke)

Wahlfreier Zugriff (Binär-Blöcke mit einem Index- Verzeichnis, Datenbank)

Inhaltsbezogener Speicher

googeln

(67)

Defragmentierung

(68)

Dateien / Pfade:

Pfade immer ohne Leerzeichen

Dateinamen immer ohne Leerzeichen

Dateinamen immer ohne äöüÜÄÖßáé

Sonst muss man Dateien mit "C:\Test 5\Test 007.txt" schreiben

Wichtig:

Auch in Programmen!

Tipps

(69)

Zeilentrennung:

Windows: CR/LF \r\n char(13) char(10)

Unix: LF \n

Linux: LF \n

Apple: LF \n

Android: LF \n

Tabulatoren

Horizontaler Tab: char(9) \t

Tipps

(70)

Batch-Datei

In einer Zeile in einer Ascii-Datei eintragen:

start /ABOVENORMAL "C:\test 1\prog.exe"

"c:\eigene Bilder\urlaub\bild1.jpg"

Tipps

(71)

Interne Monitorauflösung

Speichern der Abmessungen und Position der Dialoge

Restaurieren der Abmessungen und Position der Dialoge

BS-Funktionen in C#

int left = System.Windows.SystemParameters.VirtualScreenLeft;

int width = System.Windows.SystemParameters.VirtualScreenWidth;

int height = System.Windows.SystemParameters.VirtualScreenHeight

Tipps

(72)

Interne Monitorauflösung

In welchen Bereichen liegen die Abmessungen?

0 bis 1080

0 bis 2160

-1080 bis 0 0 bis 1080

Tipps

Überraschenderweise gibt es auch negative Positionen!

Wichtig bei der Überprüfungen der Werte!

(73)

Dateiformate für Textdateien (Zeichenkodierungen) Formate

ASCII

ANSI

UTF-8 (Unicode Transformation Format)

o 1, 2, 3 oder 4 Bytes

UTF-16 (Unicode Transformation Format)

o 1 oder 2 Bytes

UTF-32 (Unicode Transformation Format)

o Immer 4 Bytes

Unicode (Notepad)

Unicode Big Endian (Notepad)

Tipps

(74)

Dateiformate für Textdateien

(75)
(76)

Dateiformate für Textdateien

Kodierung hexadezimale Darstellung

UTF-8 EF BB BF 

UTF-16 (BE) FE FF

UTF-16 (LE) FF FE

UTF-32 (BE) 00 00 FE FF

UTF-32 (LE) FF FE 00 00

BE: Big Endian

LE: Little Endian

(77)

Wird ein BOM verwendet, kann es jedoch auch zu Problemen mit

Programmen kommen, die kein Byte Order Mark erwarten oder kennen.

So wird in Unix-artigen Umgebungen oft in Skriptdateien der Shebang- Mechanismus verwendet, bei dem die Zeichenfolge „#!“ ebenfalls am Dateianfang stehen muss. Steht hier ein unerwartetes BOM, gibt es Probleme.

Auch melden Compiler wie z. B. gcc (vor Version 4.4) bei Verwendung eines BOM überschüssige Zeichen am Dateianfang und in PHP mit

Standardeinstellungen führt das BOM zur Ausgabe von Zeichen an den Browser, so dass ohne „output buffering“ keine HTTP-Header mehr geändert werden können.

In Java wird beim Einlesen von UTF-8 Texten das Byte Order Mark nicht automatisch erkannt. Es ist Sache der Anwendungssoftware, das daraus generierte Zeichen 0xFEFF bei Bedarf zu entfernen.[3]

Dateiformate für Textdateien

https://de.wikipedia.org/wiki/Byte_Order_Mark

(78)

Viele Programme erkennen nicht immer das Datei

o

Problem der deutschen Sonderzeichen

o

Problem: BOM

Abhilfe

ä ersetzen durch _ae_

Ä ersetzen durch _Ae_

Abhilfe

Die erste Zeile einlesen und vergessen

Dateiformate für Textdateien

(79)

Mit der Taste „entf“ werden im Explorer die Dateien in den Papierkorb verschoben.

o

Ordnername: c:\$Recycle.Bin d:\$Recycle.Bin

o

Gleiche Dateien erhalten eine laufende Nummer!

Mit den Tasten „shift+entf“ werden im Explorer die Dateien gelöscht.

Papierkorb

(80)

System-Information

Programm: msinfo32.exe

(81)

Threads, Task, Multi-CPU

(82)

Threads, Task, Multi-CPU

Normale Programme verwenden nur eine CPU!

Bei komplexen und aufwändigen Algorithmen:

Primzahlberechnung

Rendering

Chemie (Molekülstrukturen)

wäre es sinnvoller, wenn man mehrere CPU‘s benutzen könnte.

Lösung:

Threads

Einfach in Java zu erzeugen.

(83)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen

(84)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen bis 500 000

(85)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen bis 500 000

(86)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen bis 500 000

(87)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen bis 500 000

Trotz mehr Threads: langsamer

(88)

Threads, Task, Multi-CPU: Beispiel

Primzahlen berechnen bis 500 000

(89)

DOS-Ebene

Kommando-orientierte Befehle:

cmd Windows-Emulationsprogramm für die Dos-Ebene

Laufwerk: Laufwerkswechsel

dir Anzeige des Verzeichnis-Inhalts

cd Change Direktory

md Make Direktory

rd Remove Direktory

ren Umbenennen einer Datei

type Anzeige einer Datei

copy source dest Datei kopieren

Wildcards * ? (*=0,1,n) (?=1)

..\ Oberes Verzeichnis

.\ Aktuelles Verzeichnis

(90)

DOS-Ebene: Beispiele

c: d: // Laufwerkswechsel

cd test // Verzeichniswechsel

md test1

md c:\test\progs\abc // nur letztes Verzeichnis copy datei1.txt datei2.txt

copy con datei3.txt // Editor, Taste F6=Ende copy *.txt c:\111 // 1 files is copied

copy *.txt c:\111 // 1 Datei(en) kopiert

(91)

DOS-Ebene

XCOPY-Parameter:

Quelle Die zu kopierenden Dateien.

Ziel Position und/oder Name der neuen Dateien.

/A Kopiert nur Dateien mit gesetztem Archivattribut, ändert das Attribut nicht.

/M Kopiert nur Dateien mit gesetztem Archivattribut, setzt das Attribut

nach dem Kopieren zurück.

/D:M-T-J Kopiert nur die an oder nach dem Datum geänderten Dateien.

Ist kein Datum angegeben, werden nur Dateien kopiert, die neuer als die bestehenden Zieldateien sind.

/P Fordert vor dem Erstellen jeder Zieldatei eine Bestätigung.

/S Kopiert Verzeichnisse und Unterverzeichnisse, die nicht leer sind.

/E Kopiert alle Unterverzeichnisse (leer oder nicht leer).

/V Überprüft jede neue Datei auf Korrektheit.

/W Fordert vor dem Beginn des Kopierens zu einem Tastendruck auf.

/C Setzt das Kopieren fort, auch wenn Fehler auftreten.

(92)

DOS-Ebene

XCOPY-Parameter:

/I Falls Ziel nicht vorhanden ist und mehrere Dateien kopiert werden, nimmt XCOPY an, dass das Ziel ein Verzeichnis ist.

/Q Zeigt beim Kopieren keine Dateinamen an.

/F Zeigt die Namen der Quell- und Zieldateien beim Kopieren an.

/L Listet die Dateien auf, die ggf. kopiert werden.

/G Ermöglicht das Kopieren von verschlüsselten Dateien auf ein Ziel wo Verschlüsselung nicht unterstützt wird.

/H Kopiert auch Dateien mit den Attributen 'Versteckt' und 'System'.

/R Überschreibt schreibgeschützte Dateien.

/T Erstellt die Verzeichnisstruktur, kopiert aber keine Dateien.

Leere oder Unterverzeichnisse werden nicht kopiert. Um auch diese zu kopieren, müssen Sie die Optionen /T /E angeben.

/U Kopiert nur Dateien, die im Zielverzeichnis vorhanden sind.

/K Kopiert Attribute. Standardmäßig wird 'Schreibgeschützt' gelöscht.

(93)

DOS-Ebene

XCOPY-Parameter:

/EXCLUDE:Datei1[+Datei2][+Datei3]...

Gibt eine Liste von Zeichenfolgen an. Jede Zeichenfolge sollte in einer einzelnen Zeile in der Datei angezeigt werden. Wenn eine der

Zeichenfolgen Teil des absoluten Verzeichnispfads der zu kopierenden Datei ist, wird diese Datei vom Kopiervorgang ausgeschlossen.

/O Kopiert Informationen über den Besitzer und ACL.

/X Kopiert Dateiüberwachungseinstellungen (bedingt /O).

/Y Unterdrückt die Aufforderung zur Bestätigung, dass eine vorhandene Zieldatei überschrieben werden soll.

/-Y Fordert zur Bestätigung auf, dass eine bestehende Zieldatei überschrieben werden soll.

/Z Kopiert Dateien in einem Modus, der einen Neustart ermöglicht.

(94)

Xcopy: Beispiele

xcopy *.* g:\test /S /Y /I /V

xcopy *.dat g:\test /C /W /E /S /Y /I /V

echo start des Backups pause

rem /D:MM-TT-YYYY

xcopy *.* g:\backup\platteD /S /I /V /D:01-15-2007

(95)

ENTER Dialog: Der umrahmte Schalter, Default, wird aktiviert Strg-Z Undo (Letzte Aktion rückgängig machen)

Strg-S Save: Speichern, Sichern

Strg-C Copy: Bereich in die Zwischen-Ablage kopieren Strg-V Aus der Zwischen-Ablage kopieren

Strg-X Bereich entfernen und in die Zwischen-Ablage kopieren Strg-A Alles markieren

Strg-P Print: Drucken

Druck Der ganze Bildschirm in die Zwischen-Ablage

Alt-Druck Nur das aktuelle Windows-Fenster in die Zwischenablage F5 Refresh: Bild neu aufbauen/ anzeigen

(Nodepad: F5 liefert Datum)

Wichtige Tasten unter Windows

(96)

Entf Das vorher markierte löschen Alt-F4 Offene Anwendungen schließen Alt-Tab Zwischen den Fenstern wechseln

Alternative: Win-Tab

Strg-F Such-Maske: Suchbegriff eingeben (Winword, Notepad) F3 Weiter suchen

Alt-Leertaste System-Menü des aktuellen Fensters anzeigen

STRG+ESC Anzeigen des Menüs Start

Taste UMSCHALT beim Einlegen der CD-ROM

Wichtige Tasten unter Windows

(97)

Taste Funktion

WIN Startmenü öffnen

WIN + R Datei ausführen

WIN + D Desktop anzeigen

WIN + M Alle Fenster minimieren

SHIFT + WIN + M Minimieren rückgängig machen WIN + F1 Hilfe und Supportcenter

WIN + E Explorer starten

WIN + F Dateisuche

STRG + WIN + F Computer suchen

WIN + TAB Programmwechsel durch Taskleiste (Aero) WIN + PAUSE Systemeigenschaften

WIN + L PC sperren

WIN + U Hilfsprogramm-Manager öffnen

WIN + Q Benutzer wechseln

Wichtige Tasten unter Windows

(98)

Taste Funktion

WIN + Pfeiltaste nach oben Windows Fenster Maximieren WIN + Pfeiltaste nach unten Windows Fenster Minimieren WIN + Pfeiltaste nach links Windows Fenster links anheften WIN + Pfeiltaste nach rechts Windows Fenster rechts anheften WIN+Shift+Pfeiltaste links Windows Fenster in den linken

Monitor verschieben

WIN+Shift+Pfeiltaste rechts Windows Fenster in den rechten Monitor verschieben

WIN + Home Minimieren aller anderen Windows Fenster (außer dem aktiven)

WIN + T Wechseln zum nächsten Taskbareintrag

Wichtige Tasten unter Windows

(99)

Taste Funktion

WIN + (Ziffern 1-9) Anwendung in den gewünschten Taskbar- Slot (1-9) einfügen

WIN + Leertaste Alle Fenster werden durchsichtig (Transparent) - Blick auf Desktop

WIN + G Gadgegts werden in den Vordergrund geholt WIN + P Anzeigeeinstellungen

WIN + X Mobility Center

WIN + (Plustaste) Zoom in (Vergrößern)

WIN + (Minustaste) Zoom out (Verkleinern)

Wichtige Tasten unter Windows

(100)

Tipps

Desktop-Verknüpfung

- Link, Eigenschaften

- HotKey mit STRG+ALT+Shortcut

(101)

Tipps

Batch-Datei für ein virtuelles Laufwerk

@echo off

rem Definition eines Laufwerks

subst y: c:\Daten

Referenzen

ÄHNLICHE DOKUMENTE

zentrationsverlauf dieser Tracer kann auf den Vol u menstrom geschlossen werden.. Große Gebäuderäume, hohe Luftwechsel und kom plizierte Strömungsbed ingu ngen bereiten bei der

2 Innerhalb dieser Studie erfolgte die Untersuchung zweier maschineller Nickel-Titan- Systeme bezüglich der Qualität ihrer Wurzelkanalpräparation: Es handelt sich zum

Um weitere Verbesserungen für Fußgänger, Radfahrer und Autofahrer zu erzielen und um die Belastungen während der Bauzeiten zu verringern, wurden wesentliche Veränderungen an

März 2013 Korth / Hansen Korth / Bremer März 2013. Name

Durch diesen Ansatz lassen sich die Flussspannungen auf unter 100 mV reduzieren, wodurch ef- fizienter Betrieb selbst bei geringen Versorgungsspannungen wie 1,5 V m¨oglich ist..

Bürgerbeteiligung zu "City West – Stadtstraße lang: Wie geht es weiter?" vorgestellt werden, können sich interessierte Bürgerinnen und Bürger auch im Rathaus informieren..

The programming aids include assemblers having macro capabilities; program compilers, including compilers that are capable of compiling source programs written in

Clear cards are normally placed before object cards for the purpose of clearing memory prior to loading a new program.. MANUAL ALTERNATE SWITCHES. Mode of