• Keine Ergebnisse gefunden

Fachbereich Automatisierung und Informatik

N/A
N/A
Protected

Academic year: 2021

Aktie "Fachbereich Automatisierung und Informatik"

Copied!
49
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Fachbereich

Automatisierung und Informatik

Wernigerode

Installation der PS3

Stand Mai 2010

Dipl. Inf., Dipl.-Ing. (FH) Michael Wilhelm Friedrichstraße 57 - 59

38855 Wernigerode

Raum: 2.202

Tel.: 03943/659-338 Fax: 03943/659-399

Email: mwilhelm@hs-harz.de

Web: http://mwilhelm.hs-harz.de/download/ps3

(2)

Inhaltsverzeichnis

1 Installation von Yellow Dog auf einer Playstation 3 ... 6

1.1 Überblick 6

1.2 Linux Installation auf der PS/3 6

1.3 Wechsel von PS3 nach Linux 7

1.3.1 Auswahl System-Einstellungen 7

1.3.2 Eintrag: "Formatierungs-Dienstprogramm 7

1.3.3 Festplatte formatieren 8

1.3.4 Formatierungsvorgang starten 8

1.3.5 Partitionieren 9

1.3.6 10 GB dem PS3-System 9

1.3.7 Schnellformatierung 10

1.3.8 Starten der Formatierung 10

1.3.9 Ende der Formatierung 11

1.4 Wechsel von PS3 nach Yellow-Dog-Linux 11

1.4.1 Neustart: Aufruf System-Einstellungen 11

1.4.2 Auswahl Standardsystem 12

1.4.3 Bootreihenfolge 12

1.4.4 PS3-System verlassen 13

2 Linux Installation auf der PS/3 ... 14

2.1 Reihenfolge der Linux Installation auf der PS/3: 14

2.2 Ablauf 14

2.2.1 System bootet mit YDL 14

2.2.2 Auswahl der Bildschirmauflösung 15

2.2.3 Überprüfen der DVD 15

2.2.4 Starten der Installation 16

2.2.5 Tastatur Deutsch 16

2.2.6 Tastatur: Deutsch 17

2.2.7 Partitionstabelle anlegen 17

2.2.8 Partitionstabelle anlegen 18

2.2.9 Sicherheitsabfrage 18

2.2.10 Auslagerungsdatei anlegen 19

2.2.11 Netzwerkanschluss 19

2.2.12 Auswahl der Zeitzone 20

2.2.13 Root-Passwort vergeben 20

2.2.14 Angepasste Softwareinstallation 21

2.2.15 Beispiel Desktop 22

2.2.16 Beispiel Softwareentwicklung 22

2.3 Softwareinstallation 22

2.3.1 Ablauf der Softwareinstallation 23

2.3.2 Starten der Installation der Pakete 23

2.3.3 Dateisystem formatieren 24

2.3.4 Formatieren beenden 24

2.3.5 Kopieren vorbereiten 25

2.3.6 Kopieren der Pakete 25

3 Starten des Linux-Systems, YDL Einträge ... 27

3.1.1 Starten des Linux-System 27

3.1.2 Lizenzvereinbarung 27

3.1.3 Firewall-Einstellungen 28

3.1.4 Dump-System (Für Abstürze eines Programms) 28

3.1.5 Datum und Uhrzeit 29

3.1.6 Username und Passwort 29

3.1.7 Soundkarte 30

(3)

4 Starten des Linux-System ... 31 5 Installieren der IBM-Software ... 32 6 Unix-Befehle... 33

6.1 Konsolen-Befehle 33

6.2 Weitere Befehle: 34

6.3 Komprimierung 34

6.4 Anbinden eines USB-Sticks 35

6.5 Der Text-Editor vi / vim 35

6.5.1 Aufrufen des Editors: 36

6.5.2 Text bearbeiten 37

6.5.3 Kursorposition ändern 37

6.5.4 Korrekturen im Einfügemodus 37

6.5.5 Suchen 38

6.5.6 Ersetzen eines Zeichens 38

6.5.7 Sprung 38

6.5.8 Löschen von Zeichen 38

6.5.9 Zwischenspeicher 39

6.5.10 Datei-Operationen 39

6.5.11 Beenden 39

6.5.12 Besonderheiten 40

Automatisches Einrücken 40

6.5.13 Parameter des vi-Editors 40

6.5.14 Zusammenfassung der vi-Befehle 41

7 Programmieren... 42

7.1 Programmoptionen des gcc 42

7.1.1 Erste Beispielprogramm 42

7.2 Threads / Mutex 43

7.2.1 Funktion: pthread_create 43

7.3 Mutex 44

7.4 Zeitmessung 44

7.5 Debugger 44

7.5.1 Beispiel: 45

7.6 Vectorfelder SIMD 45

7.7 Spu-Funktionen 46

8 Indexverzeichnis ... 48

(4)

Abbildungsverzeichnis

Abbildung 1PS3 Einstellungen 7

Abbildung 2Formatierung 7

Abbildung 3Festplatte Formatierung 8

Abbildung 4Formatierung starten 8

Abbildung 5Aufteilen der Bereiche 9

Abbildung 610 GB der PS3 9

Abbildung 7Typ der Formatierung 10

Abbildung 8Starten der Formatierung 10

Abbildung 9Ende der Formatierung 11

Abbildung 10 Aufruf der System-Einstellungen 11

Abbildung 11 Standardsystem 12

Abbildung 12 Bootreihenfolge 12

Abbildung 13 Umstellung der Boot-Reihenfolge 13

Abbildung 14 Erstes booten mit YDL 14

Abbildung 15 Auswahl der Bildschirmauflösung 15

Abbildung 16 Prüfen der DVD 15

Abbildung 17 Startbildschirm des YDL 16

Abbildung 18 Tastaturauswahl 16

Abbildung 19 Tastatur 17

Abbildung 20 Partitionstabelle 17

Abbildung 21 Partitionstabelle 18

Abbildung 22 Partitionstabelle 18

Abbildung 23 Auslagerungstabelle 19

Abbildung 24 Netzwerkanschluss 19

Abbildung 25 Zeitzone 20

Abbildung 26 Username und Passwort 20

Abbildung 27 Auswahl der Software 21

Abbildung 28 Auswahl der Software (Desktopumgebungen) 22

Abbildung 29 Auswahl der Software (Softwarentwicklung) 22

Abbildung 30 Softwareinstallation 23

Abbildung 31 Softwareinstallation 23

Abbildung 32 Dateisystem 24

Abbildung 33 Partitionen erstellen 24

Abbildung 34 Kopieren vorbereiten 25

Abbildung 35 Starten des Kopierens der Software 25

Abbildung 36 Konfiguration des Systems 26

Abbildung 37 Bootloader 26

Abbildung 38 Beenden der Installation 26

Abbildung 39 Start von Yellow Dog 27

Abbildung 40 Lizenz 27

Abbildung 41 Firewall 28

Abbildung 42 Kdump 28

Abbildung 43 Datum und Zeit 29

Abbildung 44 Username und Passwort 29

Abbildung 45 Audio 30

Abbildung 46 Erster Start, Eingabe des Usernamens 31

Abbildung 47 Erster Start, Eingabe des Passwort 31

Abbildung 48 Anzeige des Desktops 31

Abbildung 49 PPU-Zusatztools 32

Abbildung 50 SPU-Zusatztools 32

(5)
(6)

1 Installation von Yellow Dog auf einer Playstation 3

1.1 Überblick

Installation von YDL auf einer PS/3.

Überblick über die einzelnen Schritte:

• DVD-Iso runterladen

• DVD Brennen

• PS/3: Aufteilen der Festplatte, Formatieren

• Umschalten des BS-Modus

• Installation von Yellow Dog Linux

• Kopieren der IBM-Pakete

• Installieren der Pakete (rpm)

• Programmieren der Software

1.2 Linux Installation auf der PS/3

• Festplatte formatieren / partitionieren

• System-Einstellungen

• Eintrag „Formatierungs-Dienstprogramm“

• Festplatte formatieren ESC oder

• Möchten Sie die Festplatte formatieren (Ja/Nein) +

• Eintrag: Benutzerdefiniert (Pfeiltaste ) und

• Eintrag: Weisen 10 GB dem PS3-System zu

• Eintrag: Vollständige Formatierung oder

• Schnellformatierung

• Sicherheitsabfrage (Zeit 2h und 29 Min):

• Abschließen mit

(7)

1.3 Wechsel von PS3 nach Linux

1.3.1 Auswahl System-Einstellungen

Abbildung 1 PS3 Einstellungen

Einstellungen: Auswahl des Eintrags "System-Einstellungen"

1.3.2 Eintrag: "Formatierungs-Dienstprogramm

Abbildung 2 Formatierung

System-Einstellungen: Eintrag: "Formatierungs-Dienstprogramm", dann Eingabetaste

(8)

1.3.3 Festplatte formatieren

Abbildung 3 Festplatte Formatierung Festplatte formatieren: Eingabetaste

1.3.4 Formatierungsvorgang starten

Abbildung 4 Formatierung starten

Mit Pfeiltasten links/rechts auswählen, dann Eingabetaste oder

Abbruch mit Esc

(9)

1.3.5 Partitionieren

Speicherbereich der Disk: Benutzerdefiniert

Abbildung 5 Aufteilen der Bereiche

Speicherbereich der Disk: Benutzerdefiniert

1.3.6 10 GB dem PS3-System

Abbildung 6 10 GB der PS3

Pfeiltasten oben/unten: Weisen Sie 10 GB dem PS3-System zu

(10)

1.3.7 Schnellformatierung

Abbildung 7 Typ der Formatierung

Formatierung: Pfeiltasten oben/unten:

• Schnellformatierung

• sonst 3 oder mehr Stunden, dann Eingabetaste

1.3.8 Starten der Formatierung

Abbildung 8 Starten der Formatierung Pfeiltasten link/rechts: Ja, dann Eingabetaste

(11)

1.3.9 Ende der Formatierung

Abbildung 9 Ende der Formatierung

Esc oder Eingabetaste drücken: System starten neu

1.4 Wechsel von PS3 nach Yellow-Dog-Linux Nach dem Neustart auswählen:

Suchen über

• Einstellungen

• System-Einstellungen

• Standardsystem (Eintrag: Anderes System)

1.4.1 Neustart: Aufruf System-Einstellungen

Abbildung 10 Aufruf der System-Einstellungen

(12)

Nach Neustart: Aufruf System-Einstellungen

1.4.2 Auswahl Standardsystem

Abbildung 11 Standardsystem Auswahl Standardsystem: Eingabetaste

1.4.3 Bootreihenfolge

Abbildung 12 Bootreihenfolge

Bootreihenfolge: Auswahl mit Pfeiltasten oben/unten: Andere System

(13)

1.4.4 PS3-System verlassen

Abbildung 13 Umstellung der Boot-Reihenfolge Pfeiltaste links/rechts: Ja und Eingabetaste

(14)

2 Linux Installation auf der PS/3

2.1 Reihenfolge der Linux Installation auf der PS/3:

• Die DVD einlegen

• Das System bootet mit YDL:

• Auswahl der Auflösung:

Install_ps3_720p 1366x768 Pixel für 1440x900 bzw. 1650x900 Bildschirme Install_ps3_1080p Full HD Auflösung für 1920x1080 Bildschirme

• Root-Passwort vergeben

• Einstellung der Zeitzone

• Auswahl der Software (Benutzerdefiniert)

2.2 Ablauf

2.2.1 System bootet mit YDL

Abbildung 14 Erstes booten mit YDL

(15)

2.2.2 Auswahl der Bildschirmauflösung

Abbildung 15 Auswahl der Bildschirmauflösung

Eintrag kboot:

Auswahl mit Tab-Taste

Auswahl: 1920x1080 Pixel install_ps3_1080p Auswahl: 1440x900 Pixel install_ps3_768p

2.2.3 Überprüfen der DVD

Abbildung 16 Prüfen der DVD Überprüfen der DVD: Empfohlen

(16)

2.2.4 Starten der Installation

Abbildung 17 Startbildschirm des YDL

Starten der Installation mit dem Schalter "Weiter"

2.2.5 Tastatur Deutsch

Abbildung 18 Tastaturauswahl Tastatur Deutsch: Eintrag "Germany"

(17)

2.2.6 Tastatur: Deutsch

Abbildung 19 Tastatur

Tastatur: Deutsch (latin1 ohne "tote" Akzente")

2.2.7 Partitionstabelle anlegen

Abbildung 20 Partitionstabelle

Abfrage, ob die Partitionstabelle angelegt werden soll

(18)

2.2.8 Partitionstabelle anlegen

Abbildung 21 Partitionstabelle Partitionstabelle anlegen

2.2.9 Sicherheitsabfrage

Abbildung 22 Partitionstabelle Löschen aller Daten mit Ja

(19)

2.2.10 Auslagerungsdatei anlegen

Abbildung 23 Auslagerungstabelle

Der Hauptspeicher ist mit 250 MB sehr gering. Deshalb wird eine Auslagerungsdatei angelegt.

2.2.11 Netzwerkanschluss

Abbildung 24 Netzwerkanschluss

Netzwerkanschluss mit DHCP oder man vergibt eine feste IP-Adresse (192.168.1.100)

(20)

2.2.12 Auswahl der Zeitzone

Abbildung 25 Zeitzone

Auswahl der Zeitzone: Europa/Berlin

2.2.13 Root-Passwort vergeben

Abbildung 26 Username und Passwort

Root-Passwort vergeben: zum Beispiel "Playstation"

(21)

2.2.14 Angepasste Softwareinstallation

Abbildung 27 Auswahl der Software

Softwareinstallation: Jetzt anpassen, Minimalsoftware

• Desktop-Umgebungen:

Gnome Desktopumgebung

• Anwendungen:

Editoren

Grafisches Internet

• Softwareentwicklung

Entwicklungsbibliotheken Entwicklungswerkzeuge

• Grundsystem:

Basis

Einwahl-Netzwerk-Unterstützung Systemwerkzeuge

Verwaltungswerkzeuge X-Window-System

(22)

2.2.15 Beispiel Desktop

Abbildung 28 Auswahl der Software (Desktopumgebungen) Beispielauswahl für den Desktop

2.2.16 Beispiel Softwareentwicklung

Abbildung 29 Auswahl der Software (Softwarentwicklung) Beispielauswahl für die Softwareentwicklung

2.3 Softwareinstallation

Ablauf der Softwareinstallation

• Vorbereiten des Systems

• Formatieren

• Kopieren und installieren der Pakete

• User einrichten mit Passwort

(23)

2.3.1 Ablauf der Softwareinstallation

Abbildung 30 Softwareinstallation Ablauf der Softwareinstallation

2.3.2 Starten der Installation der Pakete

Abbildung 31 Softwareinstallation

Ablauf der Softwareinstallation: Starten der Installation der Pakete

(24)

2.3.3 Dateisystem formatieren

Abbildung 32 Dateisystem

Ablauf der Softwareinstallation: Dateisystem formatieren

2.3.4 Formatieren beenden

Abbildung 33 Partitionen erstellen

Ablauf der Softwareinstallation: Formatieren beenden

(25)

2.3.5 Kopieren vorbereiten

Abbildung 34 Kopieren vorbereiten

Ablauf der Softwareinstallation: Kopieren vorbereiten

2.3.6 Kopieren der Pakete

Abbildung 35 Starten des Kopierens der Software Ablauf der Softwareinstallation: Kopieren der Pakete

(26)

Abbildung 36 Konfiguration des Systems

Abbildung 37 Bootloader Installation beendet

Abbildung 38 Beenden der Installation

(27)

3 Starten des Linux-Systems, YDL Einträge

3.1.1 Starten des Linux-System

Abbildung 39 Start von Yellow Dog

Starten des Linux-System, Anzeige der Details

3.1.2 Lizenzvereinbarung

Abbildung 40 Lizenz

Starten des Linux-System: Zustimmen

(28)

3.1.3 Firewall-Einstellungen

Abbildung 41 Firewall

Starten des Linux-System: Firewall-Einstellungen

3.1.4 Dump-System (Für Abstürze eines Programms)

Abbildung 42 Kdump

Starten des Linux-System: Dump-System (Für Abstürze eines Programms)

(29)

3.1.5 Datum und Uhrzeit

Abbildung 43 Datum und Zeit

Starten des Linux-System: Datum und Uhrzeit

3.1.6 Username und Passwort

Abbildung 44 Username und Passwort

Starten des Linux-System: Username und Passwort Username: user1

Passwort: linux

(30)

3.1.7 Soundkarte

Abbildung 45 Audio

(31)

4 Starten des Linux-System

Abbildung 46 Erster Start, Eingabe des Usernamens

Abbildung 47 Erster Start, Eingabe des Passwort

Abbildung 48 Anzeige des Desktops

(32)

5 Installieren der IBM-Software

Installieren der zusätzlichen IBM-Software

• Kopieren der Softwarepakete auf einer CD / USB-Stick

• Starten der PS3

• Einfügen des Datenträgers ion die PS3

• Kopieren der Pakete nach /home/ps3

• Shell erzeugen mit root-Passwort

• Wechseln nach /home/ps3

• Installieren mit rpm –ivh p*.rpm rpm -ivh g*.rpm

Abbildung 49 PPU-Zusatztools

Abbildung 50 SPU-Zusatztools

(33)

6 Unix-Befehle

6.1 Konsolen-Befehle

cat Anzeige des Inhaltes einer Datei cat /proc/meminfo Info zum System

cat /proc/cpuinfo Info zum System Parameter zum cat

-n mit Nummer am Anfang -v Sonderzeichnen als ^X....

-e Ausgabe des Dollarzeichens am Ende jeder Zeile (mit -v) -t Tabs als ^T, Formfeed als ^L

cd „blank“ cd home

cd ~ cd home

chmod u+x datei Änderung des Execute Attributs (Starten ohne Prefix bash) chmod u+w datei Änderung des Schreibrechtes

chmod u-r datei Änderung des Leserechtes

chmod go-r datei Änderung des Leserechtes bei der Gruppe

clear Löschen des Bildschirms

cp Kopieren

Parameter:

-r Rekursives Kopieren

-R Rekursives Kopieren

-recursive Rekursives Kopieren

-f Überschreiben erzwingen

-v Verbose rsp. View, anzeigen der kopierten Dateien

xcopy-Ersatz:

cp -f -r -v /home/2010/* /mnt/dos/2010

df Anzeige des freien Festplattenspeichers du Anzeige des benutzten Festplattenspeichers grep Suchen von Zeichenfolgen in Dateien

bash script Starten des Scriptes „script“

bash Aufruf der Bashshell

ls Auflisten der Dateien / Verzeichnisse -l Komplettliste (Longformat) -R Rekursiv

-a Auflisten aller Einträge (.)

-A Auflisten aller Einträge ( ohne . und ..) -p Jedes Verzeichnis erhält ein /

-i Ausgabe der i-node Nummer -s Ausgabe der Blockgröße (Size) -1 Eine Spalte

-b Ausgabe nicht druckbarer Zeichen in Oktaldarstellung

(34)

mkdir Anlegen eines Verzeichnisses

more Seitenweise anzeigen einer Datei etc.

ls | more oder cat datei1 | more

ps Anzeige des Prozessstatus

pwd Print working Directory (Aktuelle Verzeichnis)

rmkdir Löschen eines leeren Verzeichnisses

rm -drf [verzeichnis] Rekursives Löschen nicht leerer Verzeichnisse

rpm –ivh paketname Installation eines Paketes ( Optionen –i install, -v verbose, -h hash rpm -ivh *.rpm

sort Sortieren einer Datei

wc Word Count

who Anzeige der aktuellen Benutzer whoami Anzeige des aktuellen Benutzers

6.2 Weitere Befehle:

shutdown now -r -r reboot after shutdown: PC wird nach dem Runterfahren neu gestartet.

Der häufigste Fehler bei Verwendung des shutdown-Befehls ist, dass keine Zeitangabe gemacht wird (hier: now)

ls s -R > beliebig.txt Erzeugt eine Datei beliebig.txt, in der das Ergebnis der Auflistung inkl.

Unterverzeichnissen zu finden ist.

locate index.html Alle Dateien namens "index.html" werden aufgelistet. Es können auch Platzhalter verwendet werden, wie "*.pdf"

find ordner/ -type f -name "index.htm" Alle Dateien namens "index.htm" werden aufgelistet.

cp /home/user/*.* /floppy/ Dateien von Festplattenverzeichnis werden auf Diskette kopiert

6.3 Komprimierung

Archive mit Inhalt von /etc und /home erstellen:

tar cvf test.tar /etc/ /home/

tar cvf - /etc /home | gzip > test.tar.gz tar cvf - /etc /home | bzip2 > test.tar.bz2

Mit GNU tar ist folgende Kurzform möglich, um gepackte Archive zu erstellen:

tar czvf test.tar.gz /etc/ /home/

tar cjvf test.tar.bz2 /etc/ /home/

(35)

Archive entpacken:

tar xvf test.tar

gunzip < test.tar.gz | tar xvf - bunzip2 < test.tar.bz2 | tar xvf - zcat test.tar.gz | tar xvf -

Mit GNU tar ist folgende Kurzform möglich:

tar xzvf test.tar.gz tar xjvf test.tar.bz2

Archivinhalt ansehen:

tar tvf test.tar

gunzip < test.tar.gz | tar tf - bunzip2 < test.tar.bz2 | tar tf - zcat test.tar.gz | tar tf -

Mit GNU tar ist folgende Kurzform möglich:

tar tzvf test.tar.gz tar tjvf test.tar.bz2

Archive von einem Verzeichnis packen und über 'pipes' in ein anderes Verzeichnis entpacken tar cvf - 'directory' | ( cd 'directory'/; tar xpvf -)

Beispiel:

tar -C sourcedir cvf - . | tar -C targetdir xpvf - und dies via SSH übers Netzwerk

ssh user@host "tar cfv - /ursprung1/ /ursprung2/" | (cd /ziel/; tar xpvf -)

6.4 Anbinden eines USB-Sticks

Mount mittels Namens

1) Anlegen des USB-Verzeichnisses, mkdir /mnt/usb1 2) mount -t vfat /mnt/usb1 -L BUFF_E

Unmount mittels Verzeichnis 1) umount /mnt/usb1

6.5 Der Text-Editor vi / vim

Der Editor vi ist Bestandteil nahezu aller UNIX-Systeme. Der Texteditor vi kennt nicht den Komfort aus Windows-basierten Editoren. Er hat zwei Modi:

a) Den Befehlsmodus b) Den Eingabemodus

Der Befehlsmodus ermöglicht das Ausführen von Kommandos wie Kursor verschieben, Eingabemodus ändern, Suchen, Schreiben auf Festplatte). Der vi-Editor wurde entwickelt, um auf

(36)

alten Terminals zu laufen. Dementsprechend gibt es keine Menüs oder Mausbefehle, die es Ihnen ermöglicht, den Text zu ändern. Alle Befehle werden über die Tastatur eingegeben. Diese Übersicht gibt eine kurze Übersicht über die wichtigsten Befehle.

Hinweis:

Bei vi-Befehlen ist die Groß- und Kleinschreibung zu beachten.

6.5.1 Aufrufen des Editors:

Der Editor wird mit dem Befehl „vi dateienamen“ aufgerufen.

Beispiel:

vi test1

~

~

~

~

~

~

~

~

~

~

"test1" [New file]

Existiert die angegebene Datei, so wird diese in den Editor geladen. Bei einer neuen Datei ist die Anzeige leer und in der untersten Zeile ist der Dateinamen angegeben.

Am Anfang ist man immer im Befehlsmodus.

Jeder Befehl fängt mit dem „ESC“-Zeichen an.

(37)

6.5.2 Text bearbeiten

Zeigt die Übersicht über die wichtigsten Befehle:

O

I_______ixa_______A o

Befehl Beschreibung

ESC i Fügt Text vor dem aktuellen Zeichen ein ESC I Fügt Text am Zeilenanfang ein

ESC a Fügt Text nach dem aktuellen Zeichen ein ESC A Fügt Text am Zeilenende hinzu

ESC o Fügt eine Zeile unter der aktuellen Zeile ein ESC O Fügt eine Zeile oberhalb der aktuellen ein ESC R Eingabe von Text im Überschreibemodus

Nach der Eingabe eines Textes können Sie mit folgenden Befehlen die Kursorposition ändern.

6.5.3 Kursorposition ändern

Befehl Beschreibung ESC j Eine Zeile nach unten ESC k Eine Zeile nach oben ESC h Ein Zeichen nach links ESC l Ein Zeichen nach rechts ESC w Ein Wort nach rechts

ESC W Ein durch Leerzeichen abgetrenntes Wort nach rechts ESC b Ein Wort nach links

ESC B Ein durch Leerzeichen abgetrenntes Wort nach links ESC Shift I An den Zeilenanfang

ESC Shift A An das Zeilenende, ESC ( An den Satzanfang ESC ) An das Satzende

ESC { An den Anfang des Absatzes ESC} An das Ende des Absatzes STRG+F Eine Seite rückwärts STRG+B Eine Seite vorwärts STRG+H

6.5.4 Korrekturen im Einfügemodus

Wenn man sich vertippt hat, kann man mit dem Befehl „STRG+H“ den Cursor zurückbewegen, ohne den Eingabemodus zu verlassen. Der Befehl kann mehrmals wiederholt werden. Eine Alternative ist das Kommando „Strg+W“. Dieser Befehl veranlasst den Kursor bis zum Anfang des vorherigen Wortes zu springen.

(38)

6.5.5 Suchen

Befehl Beschreibung

ESC /= Sucht das erste = ab Position ESC n Nächste Suche

N Nächste Suche

:%s/ab/cd/ Ersetzt die Buchstaben ab durch cd

6.5.6 Ersetzen eines Zeichens

Befehl Beschreibung ESC r Ersetzt ein Zeichen

ESC c Ändert text, bis ESC bestätigt wird ESC cw Ändert das nächste Wort

ESC cnw Ändert die nächsten n Wörter

ESC:%s/abc/aus/g g alles ersetzen c Confirm, Bestätigen ESC:%s(abc

6.5.7 Sprung

Befehl Beschreibung

ESC +100 Sprung zur 100. Zeile ESC :n Cursor in Zeile n

ESC G Cursor ans Ende des Dokumentes

6.5.8 Löschen von Zeichen

Befehl Beschreibung ESC x Löscht ein Zeichen ESC dw Löscht bis Wortende ESC db Löscht bis zum Wortanfang ESC dnw Löscht die nächsten n Wörter ESC dd Löscht die Zeile

ESC d0 Löscht bis zum Zeilenanfang ESC D Löscht bis zum Zeilenende ESC dg Löscht bis zur letzten Zeile ESC dlg Löscht bis zur ersten Zeile

Es existiert eine Anzahl von Zwischenspeichern, die man zum Kopieren und Einfügen von Texten verwenden kann. Der Standardpuffer, der immer verfügbar ist, und die Puffer a-z können beliebig verwendet werden.

(39)

6.5.9 Zwischenspeicher

Die untere Liste beschreibt die Befehle zum Kopieren von Texten.

Befehl Beschreibung

ESC Y Übernimmt eine Textzeile in den Standardpuffer ESC nY Übernimmt n-Textzeilen in den Standardpuffer ESC ybsp Speichern den Textes „bsp“ in den Zwischenpuffer ESC yw Übernimmt das nächste Wort in den Standardpuffer ESC nyw Übernimmt die nächsten n Wörter in den Standardpuffer ESC dd Übernimmt eine Textzeile in den Standardpuffer und

löscht diese

ESC ddp Übernimmt eine Textzeile in den Standardpuffer und löscht diese und fügt diese nach der nächsten Zeile wieder ein.

ESC p Wenn der Standardpuffer eine Zeile enthält, wird unter der aktuellen Zeile eine neue Zeile eingefügt und der Inhalt des Standardpuffers eingefügt.

ESC P Wenn der Standardpuffer eine Zeile enthält, wird vor der aktuellen Zeile eine neue Zeile eingefügt und der Inhalt des Standardpuffers eingefügt.

6.5.10 Datei-Operationen

Befehl Beschreibung ESC ZZ Speichert und beendet ESC :w name Schreibt die Datei ESC w Schreibt die Datei

ESC r Einlesen einer Datei am Cursor

ESC: w! Speichert die Datei auch bei Schreibschutz

6.5.11 Beenden

Befehl Wirkung

ESC:x Beenden ohne sichern des Inhaltes

ESC:wq! Inhalt nicht zurückschreiben und Ende des Editors ESC ZZ Inhalt zurückschreiben und Ende des Editors ESC:q! Beenden ohne sichern des Inhaltes

ESC:q Beenden falls gesichert des Inhaltes

(40)

6.5.12 Besonderheiten

Automatisches Einrücken

Mit dem Befehl :se ai (set autoindent) rückt der Editor bei einer neuen Zeile den Kursor auf den Anfang der oberen Zeile. Dieser Befehl ist sehr nützlich bei Schleifen und Funktionen.

Um den Kursor nach links zu bewegen, muss man die Taste „Strg+D“ benutzen. Die Taste „Strg+H“

ist hier nicht wirksam.

6.5.13 Parameter des vi-Editors Starten:

Befehl Wirkung

vi Datei Starten des vi-Editors mit der Datei

vi +n datei Starten des vi-Editors mit der Datei, Beginn ab Zeile n

vi +/muster datei Starten des vi-Editors mit der Datei, start mit dem Kursor auf der ersten Zeile, die muster enthält

vi –R datei Start nur zum Lesen der Datei

vi Start des vi-Editors.

Weitere Funktionen:

:e datei Datei lesen :w datei Datei schreiben vi datei1 datei2 Einlesen aller Dateien.

Umschalten zur nächsten Datei mit dem Befehl :n Zur ersten Datei mit :rewind

(41)

6.5.14 Zusammenfassung der vi-Befehle

Befehl Beschreibung

ESC i Einfügemodus, vor dem Cursor ESC a Einfügemodus, nach dem Cursor ESC x Zeichen löschen

ESC d Löscht die Zeile ab Kursorposition ESC dd Löscht die Zeile

ESC O Neue Zeile oberhalb ESC o Neue Zeile unter aktuellen ESC I Fügt Text am Zeilenanfang ein ESC A Fügt Text am Zeilenende ein

ESC :w name Speichert die Datei unter dem Namen ESC :w Speichert die Datei

ESC: w! Speichert die Datei auch bei Schreibschutz ESC :x Speichert die Änderung und beendet ESC :q! Ende ohne zu speichern, ohne Abfrage ESC :q Ende ohne zu speichern, mit Abfrage ESC ZZ, :wq Speichert und Ende

ESC u UNDO

ESC :set number Anzeige der Zeilennummern

(42)

7 Programmieren

In diesem Kapitel wird die Programmierfähigkeit auf der PS3 unter YDL gezeigt. Damit ist nicht die Spieleprogrammierung gemeint.

7.1 Programmoptionen des gcc

Beispiel Beschreibung

gcc bsp1.c Übersetzt und linkt die Datei Ausgabe in a.out (Assember.out)

./bsp1 Startet das Programm

gcc bsp1.c -o bsp1 Übersetzt und linkt die Datei Ausgabe in bsp1

gcc -c bsp1.c Übersetzt die Datei bsp1.c und erstellt die Datei bsp1.o gcc -o bsp bsp1.c bsp2.c Übersetzt die Datei bsp1.c und bsp2.c

erstellt die Datei bsp1.o und bsp2.o

Linkt beide *.o zu einer "Exe-Datei" namens bsp

ppu32-gcc PS3 Power PC Komplier/Linker

ppu-gcc PS3 Power PC Komplier/Linker

spu-gcc PS3 SPU Komplier/Linker

spu32-gcc PS3 SPU Komplier/Linker

-m32 -Wl,-melf32ppc Setzt den Kompiler in den 32-Bit Modus

-lm Lädt zusätzlich die Library libm

-lspe Lädt zusätzlich die Library libspe

-IPath Setzt einen zusätzlichen Pfad für die include-Dateien -LPath Setzt einen zusätzlichen Pfad für die Bibliotheken

-O Optimiert die Übersetzung

gcc -O -o bsp bsp1.c

-g Fügt debug-Code hinzu

gcc -g -o bsp bsp1.c gcc -O -g -o bsp bsp1.c

.C Endung für C++-Dateien

.cc Endung für C++-Dateien

g++ Aufruf des C++ Kompiler

kill -9 prozessnr löscht den Prozess

7.1.1 Erste Beispielprogramm

// 1. Beispielprogramm

// compile with: gcc bsp1.c -o bsp1

#include <stdio.h>

int main(void){

puts("Hallo Wernigerode");

return 0;

} • Aufruf einer Bash-Konsole Strg+Alt+F1

(43)

• Einloggen mit user1

• Anlegen eines Verzeichnisses mkdir samples

• wechseln nach sampels cd samples

• Datei erstellen vi bsp1.c

• eintragen:

• Modus wechseln mit ESC i

• Beenden mit ESC ZZ

• Aufruf des Kompilers und Linkers gcc bsp1.c

• oder gcc bsp1.c -o bsp1

• Aufruf des Kommandos ./a.out

• oder ./bsp1

7.2 Threads / Mutex

7.2.1 Funktion: pthread_create

Includedatei: #include <pthread.h>

Übersetzen mit -lpthread

int pthread_create(

pthread_t *thread, Thread description record, int

const pthread_attr_t *attr, NULL

void *(*start_routine)(void*), Pointer zur Prozedur

void *arg Agrumente,meist eine struct

);

Beispiel:

#include <stdio.h>

#include <stdlib.h>

#include <pthread.h>

// Standardisierte Aufruf Konvention, * ist richtig void * print_char (void *ch) {

printf ("%s", (char*)ch);

return NULL;

}

int main () {

char ch1='-', ch2='*';

pthread_t p1, p2;

if ( pthread_create (&p1, NULL, print_char, &ch1) ) { fprintf (stderr, "Fehler bei 1. Thread\n");

exit (EXIT_FAILURE);

}

if ( pthread_create (&p2, NULL, print_char, &ch2) ) { fprintf (stderr, "Fehler bei 2. Thread\n");

exit (EXIT_FAILURE);

}

// warten auf beiden Threads pthread_join (p1, NULL);

pthread_join (p2, NULL);

(44)

puts ("Ende");

return 0;

}

Aufruf des Kompilers und Linkers:

gcc -D_REENTRANT bsp1.c -lpthread Die Option Reentrant sichert threadsichere Funktion zu.

7.3 Mutex

pthread_mutex_t sumMutex; // Definition

pthread_mutex_init(&sumMutex, NULL); // Init

pthread_mutex_lock(&sumMutex); // Sperren, Down

pthread_mutex_unlock(&sumMutex); // Freigeben, Up

7.4 Zeitmessung

Mit folgendem Programmcode kann man die Laufzeit messen:

struct timeval t1,t2;

double d1,d2;

gettimeofday(&t1,NULL);

// calc

gettimeofday(&t2,NULL);

d1 = t1.tv_sec + (t1.tv_usec/1000000.0);

d2 = t2.tv_sec + (t2.tv_usec/1000000.0);

printf("Zeit %f\n",d2-d1);

7.5 Debugger

Der Debugger ist eine sehr effiziente Möglichkeit Fehler zu finden. Er arbeitet kommandoorierntiert.

Optionen des Debuggers:

list oder l Listing des Quellcodes um den aktuellen Punkt

l 1,5 Listing von Zeile bis 5

run oder r Starten des Programms

break zeile Haltepunkt setzen

break zeile if Bedingung Haltepunkt setzen

step oder s Einzelschritt, in eine Funktion

next oder n Schritt,

(45)

continue oder c Programm weiterlaufen lassen

info breakpoints Anzeige der Haltepunkte

delete 2 Löschen des 2. Haltepunkts

print i Anzeige des Inhalts von i

print

whatis i Anzeige des Typs von i

set variable s=0 ändern der Summe

quit oder q Ende

Enter letzten Befehl wiederholen

7.5.1 Beispiel:

Programmname: gdb

Vorgehen:

• vi bsp.c // schreiben

• gcc bsp.c –ggdb3 -o b // übersetzen

• gdb bsp // Aufruf des Debuggers

• run // starten des Programms l // anzeige, list um main

r // starten

n // next, nächster Schritt, ohne Funktion s // step. Nächster Schritt, mit Funktion

7.6 Vectorfelder SIMD

In einem Register passen vier float-Zahlen. Mittels spezieller Befehle können nun einfache Operationen parallel ausgeführt werden. Damit zeigen sie jeweils auf den Anfang der einzelnen Felder. Durch die "union" kann man auf die einzelnen beiden Varianten, entweder als Feld, oder als Register, zugreifen. Durch die Pointer ist nun die Weiterschaltung sehr elegant und schnell.

Einfacher Beispielcode für allgemeine Vectorfelder:

vector float vA={1,2,3,4};

vector float vB={3,4,5,6};

vector float vC={0,0,0,0};

vC = spu_add(vA,vB);

oder

vC = vA + vB;

print_f_vector("vA",vA);

print_f_vector("vB",vB);

print_f_vector("vC",vC); // 4,6,8,10

vC = spu_mul(vA,vB);

oder

vC = vA * vB;

print_f_vector("vA",vA);

print_f_vector("vB",vB);

print_f_vector("vC",vC); // 3,8,15,24

(46)

Pointer:

// Diese union sichert den Zugriff auf den Speicher mittels zweier verschiedener Adressierungen // 1. als normale Pointer, beispielsweise 10000 Zahlen

// 2. als VectorFeld, jeweils genau VIER float Zahlen typedef union {

float *fVal;

vector float * myVec;

} floatVec;

Quellcode der 2. Variante

float *a, *b, *c, *d; // Pointer floatVec a4a, b4a, c4a, d4a;

// root Referenz zuweisen for (k=0; k<N; k++) {

for (i=0; i<MAX; i+=4) {

a4a.myVec = a4a.myVec * a4a.myVec;

d4a.myVec = a4a.myVec + b4a.myVec + c4a.myVec;

// Increment }

7.7 Spu-Funktionen

Funktion Beschreibung

d = spu_add(a, b) Vector add, d=a+b

d = spu_addx(a, b, c) Vector add extended, 64 Bit d = spu_genb(a, b) Vector generate borrow

d = spu_genbx(a, b, c) Vector generate borrow extended d = spu_genc(a, b) Vector generate carry

d = spu_gencx(a, b, c) Vector generate carry extended d = spu_madd(a, b, c) Vector multiply and add; d=a*b+c d = spu_mhhadd(a, b, c) Vector multiply high high and add d = spu_msub(a, b, c) Vector multiply and subtract; d=a*b-c d = spu_mul(a, b) Vector multiply, d=a*b

d = spu_mulh(a, b) Vector multiply high d = spu_mulhh(a, b) Vector multiply high high d = spu_mulo(a, b) Vector multiply odd

d = spu_mulsr(a, b) Vector multiply and shift right d = spu_nmadd(a, b, c) Negative vector multiply and add d = spu_nmsub(a, b, c) Negative vector multiply and subtract d = spu_re(a) Vector floating-point reciprocal estimate

d = spu_rsqrte(a) Vector floating-point reciprocal square root estimate

d = spu_sub(a, b) Vector subtract; d=a-b d = spu_subx(a, b, c) Vector subtract extended

(47)

Hinweis:

Komplexere Befehle, wie sqrt, sin, werden nacheinander abgehandelt !

(48)

8 Indexverzeichnis

A

Anderes System 11

Audio 30

Auflösung 14

Auslagerungsdatei 19

B

Beispielprogramm 42

Benutzerdefnierte Softwareinstallation 21

D

Debugger 44

Desktop 31

DHCP 19

E

Erster Start 31

F

find 34

Formatierung 7

G

gcc 42

I

Installation IBM-Software 32

K

komprimierung 34

Konsolen-Befehle 33

L

Linux Eingaben 14

Linux Installation

Überblick 6

M

Mutex 44

N

Netzwerksystem 19

P

Parationtabelle anlegen 17

Programmieren 42

Prüfen der DVD 15

(49)

R

root 20

S

shutdown 34

SIMD 45

Spe 46

Speicherbereich festlegen 9

Spu 46

Starten des Linux-Systems 27

T

tar 34

Tastatur 16

Thread 43

U

Überblick 6

Unix-Befehle 33

usb 35

Username 29

V

Vektorfelder 45

vi 35

Beenden 39

Besonderheiten 40

Clipboard 39

datei-Operationen 39

Ersetzen 38

Kursorposition 37

Löschen 38

Parameter 40

Sprung 38

Suchen 38

Text bearbeiten 37

Zusammenfassung 41

Zwischenspeicher 39

W

Wechsel von PS3 nach Linux 7

X

xcopy 33

Y

YDL-Einträge 27

Z

Zeitmessung 44

Zeitzone 20

Abbildung

Abbildung 8 Starten der Formatierung  Pfeiltasten link/rechts: Ja, dann Eingabetaste
Abbildung 9 Ende der Formatierung
Abbildung 11  Standardsystem  Auswahl Standardsystem: Eingabetaste
Abbildung 13  Umstellung der Boot-Reihenfolge  Pfeiltaste links/rechts: Ja und Eingabetaste
+7

Referenzen

ÄHNLICHE DOKUMENTE

Wie in der vorherigen Fassung wird der CHA 2 DS 2 -Vasc-Score zur Bestimmung des Schlaganfallrisikos als Basis für die Entscheidung für eine orale Antikoagu- lation eingesetzt, wobei

Basis dieser Empfehlung sind die Daten der MADIT-Studie, die nach einem Follow-up von mittlerweile acht Jahren zeigen, dass bei Patienten mit weniger als 30

To infer suitable ESC/Java annotations for a given program, Houdini generates a large number of candidate annotations and uses ESC/Java to verify or refute each of these

Projector does not execute commands nor return a colon when the projector is in an abnormal state such as a lamp failure and abnormal high temperature. As for

Vor allem haben Studien auch gezeigt, dass eine sehr strikte glykämi- sche Kontrolle das Risiko ebenfalls er- höhen kann.» Eine Einstellung auf ei - nen Zielwert zwischen 6,0 und

Zur Erhöhung des kar- diovaskulären Risikos, das in vier Klas- sen (tiefes, moderates, hohes und sehr hohes Risiko) unterteilt wird, tragen neben dem erhöhten Blutdruck

❖ MRA sind bei allen Patienten mit persistierender Symptomatik (NYHA II–IV, Ejektionsfraktion [EF] ≤ 35%) trotz Behandlung mit ACE-Hemmer (oder ARB bei Unverträglichkeit)

Die Entscheidung, ob mit einer Mono- oder einer Kombinationstherapie begonnen wird, sollte daher vom initialen Blutdruck, weiteren Risikofaktoren und einem even- tuell schon