summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorFabian Schillinger2010-11-09 02:25:21 +0100
committerFabian Schillinger2010-11-09 02:25:21 +0100
commita1be80d76695511f7996f366f2e983db2e96b972 (patch)
tree9f4f40be99cbbad323438a57e485eeb0c604e80c /doc
parentfixed typo (diff)
downloadpvs-a1be80d76695511f7996f366f2e983db2e96b972.tar.gz
pvs-a1be80d76695511f7996f366f2e983db2e96b972.tar.xz
pvs-a1be80d76695511f7996f366f2e983db2e96b972.zip
added a list to processesStartDialog:
we can chose some commands from this list to start them or we can add new entries for a later usage modified documentation
Diffstat (limited to 'doc')
-rw-r--r--doc/LaTeX/bilder/processlist.pngbin74236 -> 82069 bytes
-rw-r--r--doc/LaTeX/bilder/runprocess.pngbin0 -> 41192 bytes
-rw-r--r--doc/LaTeX/devel/0300-pvs.tex8
-rw-r--r--doc/LaTeX/user/0001-chapter.tex24
4 files changed, 25 insertions, 7 deletions
diff --git a/doc/LaTeX/bilder/processlist.png b/doc/LaTeX/bilder/processlist.png
index 20074ee..c2e09af 100644
--- a/doc/LaTeX/bilder/processlist.png
+++ b/doc/LaTeX/bilder/processlist.png
Binary files differ
diff --git a/doc/LaTeX/bilder/runprocess.png b/doc/LaTeX/bilder/runprocess.png
new file mode 100644
index 0000000..7b2f6bd
--- /dev/null
+++ b/doc/LaTeX/bilder/runprocess.png
Binary files differ
diff --git a/doc/LaTeX/devel/0300-pvs.tex b/doc/LaTeX/devel/0300-pvs.tex
index 66783f9..0060a63 100644
--- a/doc/LaTeX/devel/0300-pvs.tex
+++ b/doc/LaTeX/devel/0300-pvs.tex
@@ -400,17 +400,19 @@ unter \url{http://lab.openslx.org/projects/pvs/wiki/RemoteKeyMouse}.
\subsection{Prozesse starten}
\index{Prozesse!starten} \index{starten}
Das ferngesteuerte Starten von Prozessen funktioniert durch den einfachen Versand eines PVSCOMMAND mit dem dem Ident STARTPROCESS an den Client, der Inhalt des PVSCOMMAND ist in diesem Fall ein durch den Dozenten angegebener Prozess. Der Client versucht diesen Prozess lokal zu starten.\\
-Sollte hierbei ein Fehler auftreten schickt der Client dem Manager ein PVSCOMMAND mit Ident PROCESSES, der Inhalt besteht dann aus der Nachricht START ERROR und einer Zahl, die die Art des Fehlers angibt.
+Sollte hierbei ein Fehler auftreten schickt der Client dem Manager ein PVSCOMMAND mit Ident PROCESSES, der Inhalt besteht dann aus der Nachricht START ERROR und einer Zahl, die die Art des Fehlers angibt.\\
+Die Fehlermeldung wird zusammen mit der Information über die Art des Fehlers (Fehlender Prozess/nicht genug Rechte, Crash, Timeout, Read Error, Write Error, Unbekannter Fehler) im Log angezeigt.
\subsection{Prozesse beenden}
\index{Prozesse!beenden} \index{beenden}
Das ferngesteuerte Beenden von Prozessen funktioniert analog zum Starten durch den Versand eines PVSCOMMAND mit dem dem Ident KILLPROCESS an den Client, hier gibt der Inhalt die lokale PID, des zu beendenden Prozesses an.\\
-Auch hier schickt der Client dem Manager bei einem Fehler ein PVSCOMMAND mit Ident PROCESSES, der Inhalt besteht dann aus der Nachricht STOP ERROR und einer Zahl, die die Art des Fehlers angibt.
+Auch hier schickt der Client dem Manager bei einem Fehler ein PVSCOMMAND mit Ident PROCESSES, der Inhalt besteht dann aus der Nachricht STOP ERROR und einer Zahl, die die Art des Fehlers angibt.\\
+Auch hier wird die Fehlermeldung zusammen mit der Information über die Art des Fehlers (Fehlender Prozess/nicht genug Rechte, Crash, Timeout, Read Error, Write Error, Unbekannter Fehler) im Log angezeigt.
\subsection{Prozesseliste anzeigen}
\index{Prozesse!anzeigen} \index{anzeigen}
Hier sendet der Manager dem Client ein PVSCOMMAND mit Ident SHOWPROCESSES. Das PVSCOMMAND mit Ident SHOW und Inhalt clear lässt den Client seine Prozessliste leeren.\\
-Anschließend wird der Inhalt von \textit{/proc/} auf dem Client ausgelesen, ist kein Inhalt vorhanden wird ein PVSCOMMAND mit Ident PROCESSES und Nachricht SHOW ERROR gesendet. Sonst werden sämtliche Ordner in \textit{/proc/} die nur aus Zahlen bestehen durchlaufen. Es wird die Datei \textit{status} ausgelesen um den Namen des Prozesses und die UID des Besitzers zu erhalten. Ist die UID nicht identisch mit der UID des Client wird dieser Prozess verworfen, somit ist sichergestellt, dass nur Prozesse angezeigt werden, bei denen auch tatsächlich die Berechtigung vorhanden ist sie zu beenden. Ist dies der Fall wird außerdem noch ein Teil der Datei \textit{cmdline} ausgelesen. Der Client sendet daraufhin ein PVSCOMMAND mit Ident SHOW und Inhalt PID<\#>Name<\#>cmdline und füllt somit seinen Prozessvektor auf. Ist \textit{/proc} komplett abgearbeitet wird ein PVSCOMMAND mit Ident SHOW und Inhalt finished abgesendet, dies löst ein Neues lesen der Prozessliste Managerseitig aus:\\
+Anschließend wird der Inhalt von \textit{/proc/} auf dem Client ausgelesen, ist kein Inhalt vorhanden wird ein PVSCOMMAND mit Ident PROCESSES und Nachricht SHOW ERROR gesendet. Sonst werden sämtliche Ordner in \textit{/proc/} die nur aus Zahlen bestehen durchlaufen. Es wird die Datei \textit{status} ausgelesen um den Namen des Prozesses und die UID des Besitzers zu erhalten. Ist die UID nicht identisch mit der UID des Client wird dieser Prozess verworfen, somit ist sichergestellt, dass nur Prozesse angezeigt werden, bei denen auch tatsächlich die Berechtigung vorhanden ist sie zu beenden. Ist dies der Fall wird außerdem noch ein Teil der Datei \textit{cmdline} ausgelesen. Der Client sendet daraufhin ein PVSCOMMAND mit Ident SHOW und Inhalt PID<\#>Name<\#>cmdline und füllt somit seinen Prozessvektor auf. Ist \textit{/proc} komplett abgearbeitet wird ein PVSCOMMAND mit Ident SHOW und Inhalt finished abgesendet, dies löst ein erneuetes lesen der Prozessliste Managerseitig aus:\\
Hier wird zu beginn die Prozessliste des Client gelöscht und der Prozessvektor des Clients gelesen. Für jeden Eintrag der Art PID<\#>Name<\#>cmdline wird eine neue Zeile in der Prozessliste geschrieben und PID, Name und cmdline in die jeweiligen Zellen geschrieben.
\section{Netzwerkkommunikation}
diff --git a/doc/LaTeX/user/0001-chapter.tex b/doc/LaTeX/user/0001-chapter.tex
index a7b2d75..3e1c42d 100644
--- a/doc/LaTeX/user/0001-chapter.tex
+++ b/doc/LaTeX/user/0001-chapter.tex
@@ -93,11 +93,27 @@ es erscheint dann ein Menü, aus dem die gewünschte Aktion ausgewählt werden k
{\em Vorsicht:} Die Steuerkonsole fragt vor der Ausführung einer Aktion nicht noch einmal
nach.
\\ \\
-\subsection{Prozessliste anzeigen}
+\subsection{Remote Prozesse starten}
+\label{Prozesse starten}
+Über den Button aus der Abbildung \ref{png:Prozessestarten} kann der Dialog um Prozesse ferngesteuert zu starten geöffnet werden. Es muss mindestens ein Client ausgewählt werden, auf dem der eingegebene Prozess gestartet werden soll. Der Dialog (Abbildung \ref{png:Prozessestarten}) bietet folgende Funktionen:\\
+\begin{enumerate}
+ \item Diese Liste bietet den Dozenten die Möglichkeit sich bestimmte Prozesse abzuspeichern und bequem aufzurufen. Prozesse werden grundsätzlich nur mit Beschreibung abgespeichert, fehlt entweder die Beschreibung oder der Prozess selbst wird der Eintrag nichtmehr gespeichert.\\
+ Ein Klick auf die Liste fügt den ausgewählten Prozess in das Textfeld ein. Mit Doppelklick auf ein Feld der Liste kann dieses Element editiert werden, so sind sowohl die Beschreibung, als auch der Prozess editierbar. Um einen Eintrag zu löschen reicht es dessen Prozess oder Beschreibung zu entfernen und mit einem Klick auf Speichern zu übernehmen. Der Speichern-Button fügt automatisch eine leere Zeile an das Ende der Liste an, um weitere Priozesse abspeichern zu können.
+ \item Prozesse die in diesem Textfeld eingetragen sind werden mit einem Klick auf Start nach einer erneuten Abfrage auf dem Client gestartet, Änderungen an der Liste werden dabei gespeichert, der Dialog geschlossen. Ein Klick auf Abbrechen schließt den Dialog ohne die Prozessliste erneut zu speichern und ohne den Prozess zu starten.
+\end{enumerate}
+Schlägt das ferngesteuerte Starten fehl wird dies in den Logdateien angezeigt.
+\begin{figure}[h]
+ \centering
+ \includegraphics[scale=0.6]{bilder/runprocess.png}
+ \caption{Dialog um Prozesse ferngesteuert zu starten und zugehöriger Button links}
+ \label{png:Prozessestarten}
+\end{figure}
+
+\subsection{Remote Prozessliste anzeigen}
\label{Prozessliste}
-Hier ein Überblick über die Prozessliste (Siehe Abbildung \ref{png:Prozessliste}).\\
+Hier ein Überblick über die Prozessliste (Siehe Abbildung \ref{png:Prozessliste}). Die Prozessliste kann über die Toolbar in der PVS Steuerkonsole über den Button aus der Abbildung \ref{png:Prozessliste} angezeigt werden.
\begin{enumerate}
- \item Anzeige der Tabs - hier wird für jeden Client ein neuer Reiter erstellt, ein Klick auf den Reiter aktiviert die Anzeige für diesen Client. Die Prozessliste wird daraufhin aktualisiert.
+ \item Anzeige der Tabs - hier wird für jeden verbundenen Client ein neuer Reiter erstellt, ein Klick auf den Reiter aktiviert die Anzeige für diesen Client. Die Prozessliste wird daraufhin aktualisiert.
\item Prozessliste - Hier werden die Prozesse des gewählten Clients angezeigt, in den Spalten stehen die ProzessID, der Name und die Commandline. Die Prozessliste wird alle 5 Sekunden aktualisiert, ausser es ist mindestens eine Zeile markiert. Es können mehrere Zeilen markiert werden, sie müssen nicht zusammenhängen.
\item Buttons Refresh und Stop process - mit Refresh wird die Liste aktualisiert, unabhängig davon, ob Zeilen markiert wurden. Ein Klick auf Stop process beendet die markierten Prozesse nach einer erneuten Abfrage.
\item Start Process - Ein eingegebener Prozess wird auf dem aktuellen Client gestartet.
@@ -106,7 +122,7 @@ Mit einem Klick auf Close werden die Prozesslisten geschlossen.
\begin{figure}[h]
\centering
\includegraphics[scale=0.5]{bilder/processlist.png}
- \caption{Prozessliste}
+ \caption{Prozessliste und zugehöriger Button links}
\label{png:Prozessliste}
\end{figure}
\\