Zugriff auf Prozessdaten unter Java

Größe: px
Ab Seite anzeigen:

Download "Zugriff auf Prozessdaten unter Java"

Transkript

1 Zugriff auf Prozessdaten unter Java N. JAZDI Institut für Automatisierungs- und Softwaretechnik (IAS), Universität Stuttgart SUMMARY Java has gained increasing importance in the field of industrial automation for many different reasons. Compared to other programming languages, Java is easier to use and strictly object-oriented. It is also platform independent, meaning that this programming language can create programs that execute on various platforms. Due to this special feature, it is not possible to access direct process control within a java application, which, unfortunately, is a very important need in industrial automation. This paper descripes potential solutions to overcome this lack within Communications API (Application Programming Interface ) and JNI (Java Native Interface) technologies. 1 EINLEITUNG Der enorme Wettbewerbs- und Kostendruck in der gesamten Automatisierungstechnik fordert nachdrücklich neue Technologien, die der Welt der Globalisierung und des Internets gewachsen sind. Web-Technologien sind hierbei die richtige Lösung. Sie bieten viele Vorteile, die in der Welt der Automatisierungstechnik unbedingt gebraucht werden, um mit den ständig wachsenden Anforderungen Schritt halten zu können. Der weltweite Zugriff auf Prozessdaten, die Ferndiagnosen und die Fernwartung über das Internet und die Beibehaltung bestehender Software sind einige dieser Vorteile. Sie bieten einen effektiveren Informationsaustausch und tragen zur Senkung der Kosten bei. und die Fernbedienung bzw. Fernsteuerung der Automatisierungssysteme soll dabei über eine Internet- Architektur geschehen. Die verschiedenen Komponenten, die zur Realisierung dieses Konzeptes notwendig sind, wie z.b. die Kommunikations- oder die Prozessvisualisierungskomponente, würden in individuell gestaltete Web-Seiten integriert. Bild 1 zeigt die Architektur des Konzeptes. Browser Mit Hilfe der Web-Technologien ist es möglich, verschiedene Haushaltsgeräte zu vernetzen und sie über einen PC zu bedienen bzw. zu überwachen. Sollte ein Gerät, wie z.b. die Waschmaschine defekt sein, reicht es aus, dass die Reparaturfirma über ein Netz die Verbindung zu dem defekten Gerät aufnimmt, um eine Ferndiagnose zu stellen. Grundsätzlich wäre es denkbar, dass sogar Teile der möglichen Softwarefehler über das Netz zu beheben sind (Fernwartung) bzw. dass nach der Feststellung der Hardwarefehler die Wartungskosten enorm sinken könnten. Prozessautomatisierungssystem Datenbankanbindung Internet/Intranet Das Institut für Automatisierungs- und Softwaretechnik der Universität Stuttgart hat eine Forschungsinitiative mit den Firmen Adstec [1] und aims GmbH [2] begonnen, um diesem Ziel einen Schritt näher zu kommen. Das Ziel des Forschungsvorhabens ist eine plattformübergreifende und herstellerunabhängige Lösung zur Überwachung und Steuerung komplexer technischer Prozesse über das Internet bzw. Intranet zu realisieren. Die Prozessüberwachung räumlich getrennter Anlagen Technischer Prozess Bild 1: Überwachung und Steuerung komplexer technischer Prozesse über das Internet bzw. Intranet Der Bediener (Client-Seite) baut eine Verbindung zum technischen Prozess über ein Netz (z.b. Internet/Intranet) via Browser auf. Auf der Server-Seite übernimmt die Systemverwaltungskomponente die zentrale Aufgabe der Steuerung und Koordinierung aller

2 Abläufe, wie die Datenbankanbindungen, die Erstellung statischer bzw. dynamischer HTML-Anteile oder die Prozessankopplung. Die Prozessankopplung ist eine sehr komplexe Aufgabe, da die Prozessdaten zum Teil unter Echtzeitanforderungen gelesen bzw. geschrieben werden müssen. Zur Prozessankopplung sollen in der Forschungsinitiative unter anderem die Einsatzmöglichkeiten von Java untersucht und falls möglich eingesetzt werden. Java repräsentiert derzeit die wohl attraktivste Möglichkeit für den plattformunabhängigen Austausch von Applikationen im Internet. Java bietet die Möglichkeit, dass der Benutzer auf der Client-Seite interaktiv mit der Java- Applikation kommuniziert. In diesem Beitrag soll versucht werden, den Zugriff auf Prozessdaten unter Java zu erläutern. Nach einer allgemeinen Beschreibung der Sprache Java werden zwei zentrale Möglichkeiten eines Zugriffs auf Prozessdaten unter Java durch den Einsatz von Communications API und JNI-Technologien, beschrieben. 2 JAVA Sun Microsystems hat Java wie folgt definiert: Java ist eine einfache, objektorientierte, verteilte, interpretierte, robuste, sichere, portable, multithread-fähige und dynamische Sprache [3]. Java ist eine objektorientierte Programmiersprache, die an C++ angelehnt ist und einige Elemente von Smalltalk übernommen hat. Dazu zählen beispielsweise Bytecode oder Garbage collection (automatische Speicherverwaltung) [4]. Java ist nicht nur eine Sprache, sondern bildet mit dem Objektformat Java-Bytecode und der Java virtuellen Maschine (JVM) eine vollständige Systemplattform. Damit werden komplette Entwicklungssysteme bis hin zum inkrementellen Fern -Laden von Modulen als Ganzes direkt nutzbar bzw. austauschbar. Portierungsprobleme, wie sie allein schon durch den Übergang von einem Compiler auf einen anderen entstehen, tauchen nicht mehr auf. Um dies zu gewährleisten, wurde auf ein bewährtes Prinzip zurückgegriffen: Es wird eine virtuelle Maschine definiert, für die auf den heute üblichen Hardwareplattformen effiziente Interpreter implementiert werden können. Java-Programme werden mit einem Compiler in den sog. Bytecode für die Java virtuelle Maschine übersetzt. Java ist vollständig objektorientiert aufgebaut. Es ähnelt in weiten Zügen C++, verzichtet jedoch auf dessen prozeduralen Hintergrund. Java ermöglicht, die Vorteile der objektorientierten Methodologie und ihre Fähigkeiten des Entwickelns flexibler modularer Programme sowie die Mehrfachverwendung des Codes voll auszuschöpfen. Java- Quellcode Java Compiler Java- Bytecode Bild 2: Java Entwicklungsumgebung Ein Java Bytecode besteht aus Anweisungen für die JVM. Dies bedeutet, dass diese Anweisungen nicht für ein spezifisches System ausgelegt sind, sondern auf jeder Plattform unter jedem Betriebssystem lauffähig sind, so lange ein Java-Interpreter verfügbar ist. Diese Möglichkeit der Verfügbarkeit einer einzelnen Binärdatei, die auf beliebigen Plattformen ausführbar ist, spielt im Zusammenhang mit Applets (Java Anwendungen, die in einer Web-Seite ausgeführt werden können) die entscheidende Rolle, weil das World Wide Web selbst plattformunabhängig ist. Ebenso wie HTML- Dateien auf jeder Plattform gelesen werden können, lassen sich Applets auf jeder javafähigen Browser-Plattform ausführen. Während jede zugrundeliegende Plattform ihre eigene Implementierung der JVM hat, gilt jeweils dieselbe Spezifikation. Aufgrund dieses Umstandes kann die Java-Plattform eine Standard- und eine konstante Programmierungsschnittstelle zu den Applets und den Anwendungen auf jeder möglichen Hardware zur Verfügung stellen. Folglich ist die Java-Plattform für das Internet ideal, da ein Programm auf jedem Computer in der Welt lauffähig sein soll. Java Interpreter Java Bytecode lokal oder via Netz Class Loader Laufzeitsystem Betriebssystem Hardware Just-In-Time Compiler Bild 3: Java Laufzeitumgebung Java Klassen- Bibliothek JVM Ein weiteres Merkmal von Java ist das Multithreading. Es erlaubt einem Programm, mehrere Programmteile gleichzeitig ablaufen zu lassen. Die Standardbibliothek von Java bietet bereits Klassen, mit denen verteilte Anwendungen auf der Basis von

3 TCP/IP einfach realisiert werden können. Die Java Remote Method Invocation (RMI) ermöglicht es auf sehr einfache Weise, Client-Server-Applikationen zu erstellen [5]. RMI ist eine Schnittstelle für verteilte Java Objekte. Sie ist in drei Schichten aufgeteilt. Die oberste, die Stub- Skeleton Schicht, ist für die Verwaltung der verteilten Objekte zuständig, die Remote Reference Schicht für die Kommunikation zwischen Client/Server und der JVM und schließlich die Transportschicht für die eigentliche Netzwerkfunktionalität. Die Netzwerkanbindung basiert auf dem TCP/IP Protokoll. RMI Client Stubs Remote Reference Transport Virtuelle Verbindung Netzwerkverbindung Bild 4: Die RMI Architektur RMI Server Skeleton Remote Reference Transport Der Verzicht auf Pointer leistet den größten Beitrag zur Vereinfachung der Programmiersprache, ohne dass dafür die Leistung gemindert wurde. Statistiken haben aufgezeigt, dass ein großer Teil von Fehlern in C/C++- Programmen auf Fehler bei der Pointer-Verarbeitung zurückzuführen sind. Der Verzicht der Java-Entwickler auf Operator-Overloading, multiple Vererbung und die Einschränkung der automatischen Typumwandlung tragen ebenfalls zu einer höheren Verlässlichkeit der Java-Programme bei. 3 ZUGRIFF AUF HARDWARE UNTER JAVA Java bietet keine Möglichkeit zum direkten Zugriff auf Systemressourcen. Solch ein Zugriff würde das Plattformunabhängigkeitsprinzip von Java verletzen, da z.b. die Schnittstellen plattformabhängig sind. Der Zugriff auf Netzwerkdaten ist dagegen möglich, falls der Webserver und die Applikation auf dem gleichen Rechner laufen. Hierzu ist jedoch ein Zugriff auf Prozessdaten explizit zu erlauben. Java bietet zwei Möglichkeiten, um auf die Systemressourcen zuzugreifen: Das Java Communications API (Application Programming Interface) und das Java Native Interface (JNI). Im Folgenden sollen beide Methoden kurz beschrieben werden. 3.1 Java Communications API Das Java Communications API, das als Standarderweiterung für die Java Plattform gilt, kann verwendet werden, um plattformunabhängige Kommunikationsanwendungen für Technologien wie Sprachpost (voice mail), Telefax und Smart Cards zu schreiben. Diese Communications API enthält einige beispielhafte Anwendungen, mit denen sich die Funktionalität der Ports überprüfen läßt. Das Communications API enthält Unterstützung für serielle Schnittstellen RS232 und IEEE 1284 parallele Ports. Das Java Communications Extension API besteht aus Klassen auf drei Ebenen, aus: Hochstufenklassen (high-level) wie CommPortIdentifier und CommPort, die den Zugriff und Besitz der Kommunikationsports verwalten, den Niedrigstufenklassen (low-level) wie SerialPort und ParallelPort, die eine Schnittstelle zu den physikalischen Kommunikationsports zur Verfügung stellen, wobei die aktuelle Freigabe der Java Kommunikation Extension API Zugriffe auf die seriellen (RS-232) und parallelen (IEEE 1284) Ports ermöglicht, und den Treiberstufenklassen (driver-level), die eine Schnittstelle zwischen den niedrigen Klassen und dem zugrundeliegenden Betriebssystem liefern. Treiberstufenklassen sind ein Teil der Implementierung, aber nicht Teil des Java Communications Extension API. Sie sollten nicht vom Programmierer in Anwendungen benutzt werden. Für den Einsatz von Java Communications API muss das Javax.comm-Paket in das Programm eingebunden werden. Dadurch wird es möglich, die Methoden dieses Paketes zu verwenden. Nachfolgend sollen die wichtigsten Dienste, die das Communications API zur Verfügung stellt, kurz beschrieben werden. Javax.comm Erweiterungspaket Das javax.comm-paket liefert die folgenden Grunddienste: Die Aufzählung der vorhandenen Ports auf dem System. Diese statische Methode CommPortIdentifier.getPortIdentifiers bringt ein Aufzählungsobjekt zurück, das ein CommPortIdentifier Objekt für jeden vorhandenen Port enthält. Dieses Comm- PortIdentifier Objekt ist die zentrale Einheit für die Zugriffssteuerung zu einem Kommunikationsport. Das Öffnen und die Inanspruchnahme des Kommunikationsports, indem man die Hochstu-fenmethoden in seinem CommPortIdentifier Objekt verwendet. Die Inanspruchnahme der Portbesitzabsicht zwischen mehrfachen Java-Anwendungen. Ereig-

4 nisse werden fortgepflanzt, um interessierte Anwendungen zu benachrichtigen und dem Inhaber des Ports zu erlauben, Besitz abzutreten. Port- InUseException wird benutzt, wenn eine Anwendung den Port nicht öffnen kann. Niedere Klassen wie SerialPort und ParallelPort haben Methoden für die Verwaltung der I/O auf dem Kommunikationsport. Die Steuerung kommuniziert mit der Maschine über eine serielle Schnittstelle (RS232) ohne ein spezielles Protokoll. Zur Kommunikation mit der seriellen Schnittstelle wird das Communication API von Sun verwendet. Bild 5 zeigt die Systemarchitektur, die die Komponenten des Systems und deren Kommunikation graphisch darstellt. Das Empfangen von Ereignissen, die dem Kommunikationsport Zustandsänderungen beschreiben, wenn z.b. eine serielle Schnittstelle eine Zustandsänderung für Carrier Detect, Ring Indicator, DTR, etc. hat, ermittelt SerialPort Objekt ein SerialPortEvent, das die Zustandsänderung beschreibt. Applikation Auftragsannahme Auftragsbearbeitung Maschineneinstellung Im Folgenden werden zwei wichtige Bestandteile des Pakets näher beschrieben. ParallelPort (paralleler Kommunikationsport) Layoutdarstellung Auftragsverwaltung Maschinen -steuerung (Ser. Prot) Markierungsmaschine ParallelPort beschreibt die hardwarenahe Schnittstelle zu einem parallelen Kommunikationsport, die durch das Betriebssystem zur Verfügung gestellt wird. ParallelPort definiert die minimale angeforderte Funktionalität für die parallelen Kommunikationsports. SerialPort (RS-232 serieller Kommunikationsport) SerialPort beschreibt die hardwarenahe Schnittstelle zu einem seriellen Kommunikationsport, der durch das Betriebssystem zur Verfügung gestellt wird. SerialPort repräsentiert die minimal geforderte Funktionalität für die seriellen Kommunikationsports. Um die Einsatzmöglichkeiten von Communications API näher zu untersuchen, wurden bzw. werden verschiedene Projekte am IAS durchgeführt. Nachfolgend soll eine Fallstudie, bei der unter dem Einsatz von Communications API auf die Hardware zugegriffen wurde, kurz umrissen werden Fallstudie: Nadelpräger Am IAS wird versucht, ein objektorientiertes Framework zu entwickeln, das sich auf die Steuerung von Markiermaschinen und die Verwaltung von Markieraufträgen konzentriert. Unter Zuhilfenahme dieses Frameworks soll eine konkrete Applikation für den am IAS vorhandenen Modellprozess Nadelpräger entstehen. Die Fallstudie umfasst unter anderem folgende Anforderungen: Eine Berücksichtigung verschiedener Markierungstechnologien und Anlagekonfigurationen steht im Vordergrund. Die konkrete Applikation wurde jedoch für den Nadelpräger erstellt. Die zu markierende Spezifikation (Layoutdaten) kann als Textdatei oder in einer relationalen Datenbank abgelegt sein. Die Applikation verwendet eine Datei. Bild 5: Systemarchitektur der Nadelpräger Die Architektur des Systems wird in fünf Komponenten aufgeteilt, wobei die Komponente Markierungsmaschine der Hardware entspricht. Die drei Komponenten Layoutdarstellung, Auftragsverwaltung und Maschinensteuerung bilden das Framework. Zusammen mit der Komponente Applikation entsteht das Softwaresystem, zusammen mit der Komponente Markierungsmaschine schließlich das gesamte System. Die Komponente Applikation steuert den Programmablauf, insbesondere aber die Interaktion der Applikation mit dem Anwender. Die Layout-Komponente ist für die Erstellung der Layoutdateien aus den Textdateien zuständig. Die Verwaltung aller Aufträge (zugeordnet nach Prioritäten) wird von der Auftragsverwaltung-Komponente gesteuert. Zur Ansteuerung des Nadelprägers ist die Maschinensteuerung-Komponente zuständig. Sie erfolgt über eine serielle Schnittstelle. Die Steuerung gibt dem Nadelpräger Befehle und empfängt im Gegenzug Statusmeldungen. Zur Kommunikation mit dem Nadelpräger über die serielle Schnittstelle, wurde das Communications API eingesetzt. Hierzu diente die Klasse SerialPort. Mit Hilfe der Methoden dieser Klasse ist eine Kommunikation mit der Schnittstelle von der Java-Applikation aus möglich. Über diese Schnittstelle werden schließlich die ASCII-Dateien gesendet und empfangen. 3.2 Java Native Interface (JNI) Das Konzept der virtuellen Maschine (Plattformunabhängigkeit) erlaubt, wie schon erwähnt, keine hardwarespezifischen bzw. systemnahen Zugriffe. Auch bei ge-

5 wissen zeitkritischen Anwendungen ist eine Lösung in reinem Java nicht immer möglich. Das Java Native Interface (JNI) ist aber eine Möglichkeit, um die nativen Codes, die in C oder C++ implementiert sind, in eine Java Anwendung einzubinden. Allerdings ist zu beachten, dass Java Applikationen, die native Methoden einsetzen, nicht mehr plattformunabhängig sind. Im Folgenden soll mit Hilfe einer Java Applikation, die eine native Methode enthält, das Konzept des JNI erläutert werden. Die native Methode soll die Message- Box() Funktion des Windows 32 API sein, die eine graphische Dialogbox ausgibt. Zunächst wird ein Java Programm, in dem die native Methode deklariert ist, geschrieben: Aufruf einer nativen Methode class Beipiel_JNI { public static void main (String [] args) { Beipiel_JNI app = new Beipiel_JNI (); app.showmessage ("Die native Methode wurde aufgerufen!"); private native void ShowMessage (String msg); static { System.loadLibrary ("MsgImpl"); Der static Block in der Deklaration ruft die Methode System.loadLibrary auf. Diese Methode lädt ein DLL in den Speicher und verlinkt es. Der Pfad zu diesem DLL muss dabei entweder in die Systemumgebung eingetragen sein oder das DLL muss im gleichen Verzeichnis wie das Java Class File gespeichert werden. Javah: Headerfile Generator für das Einbinden von C/C++-Code Zunächst wird die Beispiel_JNI.java Klasse mit javac kompiliert. Hierzu wird zuerst in das Verzeichnis, in dem der Quellcode gspeichert ist, gewechselt und anschließend mit javac Beipiel_JNI.java kompiliert. Anschließend wird das Werkzeug javah verwendet, um ein Headerfile von der Klasse Beipiel_JNI zu erstellen. Hierzu wird der Befehl javah -jni Beipiel_JNI verwendet. Javah liest den Java-Quellcode und generiert für jede Deklaration einer nativen Methode eine prototypische Funktion in ein C- oder C++-Headerfile. Im Folgenden ist das generierte Headerfile zu sehen: /* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> /* Header for class Beipiel_JNI */ /* * Class: Beipiel_JNI * Method: ShowMessage * Signature: (Ljava/lang/String;)V */ JNIEXPORT void JNICALL Java_ Beipiel_JNI _ShowMessage (JNIEnv *, jobject, jstring); #ifdef cplusplus #endif #endif Die Präprozessor Anweisung #ifdef cplusplus besagt, dass dieses File sowohl mit einem C- als auch mit einem C++-Compiler kompiliert werden kann. JNIEnv jobject und jstring sind Datentypdefinitionen von JNI. Der letzte Schritt ist das Schreiben eines C- oder C++- Quellcodes. Dieser verweist auf das Headerfile, welches von Javah generiert wurde. Im vorliegenden Beispiel wäre dies Beipiel_JNI.h. Nachfolgend wird der C++- Code, der eine Dialogbox aufruft, dargestellt: #include <windows.h> #include " Beipiel_JNI.h" BOOL APIENTRY DllMain(HANDLE hmodule, DWORD dwreason, void** lpreserved) { return TRUE; JNIEXPORT void JNICALL Java_ Beipiel_JNI _ShowMessage(JNIEnv * jenv, jobject thisx, jstring jmsg) { const char *msg; msg = jenv ->GetStringUTFChars(jMsg,0); MessageBox(HWND_DESKTOP, msg, "Java Native Interface, JNI", MB_OK MB_ICONEXCLAMATION); jenv ->ReleaseStringUTFChars(jMsg,msg); Der Code wird kompiliert und daraus eine DLL generiert. Dieser Teil ist plattformabhängig. Das generierte DLL-File heißt in diesem Beispiel MsgImpl.dll. Die Java-Applikation ruft nun beim Ausführen die angegebene native Methode auf Wie das oben beschriebene Beispiel zeigt, bietet Java eine überschaubare Methode für den Zugriff auf Hardware mittels JNI-Technik. Dies bedeutet, dass auch die vorhandenen Treiber Funktionen, die in C oder C++ vorliegen, von einer Java Applikation aus aufrufbar sind. Zur Veranschaulichung des oben beschriebenen Konzeptes soll eine Möglichkeit der praktischen Umsetzung, nämlich die Fernbedienung eines Kaffeeautomaten unter dem Einsatz von JNI kurz dargestellt werden. #ifndef _Included_ Beipiel_JNI #define _Included_ Beipiel_JNI #ifdef cplusplus extern "C" { #endif

6 3.2.1 Fallstudie: Einsatz von JNI bei der Fernsteuerung eines industriellen Kaffeeautomaten Am IAS wurde im Rahmen eines Pilotprojektes ein Konzept realisiert, das die Ansteuerung eines am IAS vorhandenen industriellen Kaffeeautomaten mit Hilfe eines Web-Browsers von einem beliebigen Ort aus ermöglicht. Die durch die Messfühler erfassten Zustände der Steuerelemente und Ventile des Kaffeeautomaten sowie die verschiedenen Temperaturen werden als Sensorsignale durch das Java-Programm abgefangen und ausgewertet. Die Wünsche des Anwenders werden durch das Programm an die entsprechenden Aktoren weitergegeben. Die Implementierung erfolgte auf einer Windows-NT-Plattform. Bild 6 zeigt die Systemarchitektur zu diesem Projekt. der Komponente IO-Schnittstelle und ihrer Teilkomponenten wieder. Datenweitergabe Fehlerdaten Steuerbefehle Statusdaten Aktordaten Timer Bild 7: Aufbau der Komponente IO-Schnittstelle TimerEvent Datenvergleich Datenerfassung Systemzustand Sensorwert e Sensordaten Client Server Hardware Anwender Applet RMI Anwendung JNI IO-Treiber Kaffeeautomat Die Komponente Datenerfassung enthält Methoden, die über das JNI alle Sensorwerte und Temperaturdaten erfassen. Zudem wandelt sie die rohen analogen Werte in dimensionsbehaftete Werte um. Die Komponente Datenvergleich fragt beim Eintreffen einer Nachricht von der Komponente Timer mittels der Datenerfassung alle Sensoren ab und vergleicht den neuen Zustand mit dem in den Klassen der einzelnen Sensoren festgehaltenen Werte. Die Komponente Timer erzeugt periodisch eine Nachricht (Event), die die Komponente Datenvergleich veranlasst, die Sensordaten erneut von der Komponente Datenerfassung anzufordern. Die Komponente Datenweitergabe beinhaltet Methoden zur Ansteuerung der Aktoren über das JNI. Dafür erhält sie von der Komponente Steuerung der Anwendung die entsprechenden Befehle und gibt diese, JNI-mäßig aufbereitet, an die Aktoren weiter. Eventuelle Fehlermeldungen werden an die Komponente Steuerung weitergereicht. Bild 6: Die Systemarchitektur Die Applikation besteht aus zwei Teilen: Einer Java- Anwendung, die auf dem Prozessrechner - der gleichzeitig auch der Web-Server ist - läuft und einem Java- Applet, das von diesem Server auf den jeweiligen Client geladen und dort in einem Browser ausgeführt wird. Beide Teilanwendungen kommunizieren miteinander über Remote Method Invocation (RMI). Der Aufruf der nativen Methoden (in diesem Fall Aufruf der DLL's von den IO-Karten) wurde gemäß des Verfahrens, das im vorherigen Abschnitt beschrieben wurde, realisiert. Hiermit wurde ein direkter Zugriff von einer Java-Anwendung aus auf die Hardware realisiert. Das Ergebnis ist die Fernsteuerung des Kaffeeautomaten von jedem beliebigen Rechner über das Internet. Bild 8 zeigt die Bedienungsoberfläche des Applets. Das Applet dient zur Interaktion mit dem Anwender und zur Zustandsausgabe des Systems. Die Anwendung auf dem Server besteht aus drei Teilkomponenten, der Kaffeesteuerung, der RMIServerSteuerung und der Fehlerbehandlung. Sie dient der Verarbeitung der Anwenderwünsche und ihrer Umsetzung in Befehle für die Aktoren. Die Komponente Kaffeesteuerung beinhaltet unter anderem die Komponente IO-Schnittstelle, die als Verbindung zwischen der Anwendung und dem Java Native Interface (JNI) dient. Sie ist für die Kommunikation mit der Hardware zuständig und wird dafür in die vier Teilkomponenten Datenerfassung, Datenvergleich, Datenweitergabe und Timer unterteilt. Bild 7 gibt den Aufbau Bild 8: Das Applet zur Fernbedienung des Kaffeeautomaten

7 3.3 Vergleich zwischen Communications API und JNI Das Communications API bietet viele Methoden, mit deren Hilfe ein Zugriff auf Systemressourcen (über serielle Schnittstellen RS232 oder IEEE 1284 parallele Schnittstellen) unter Java möglich wird. Dies setzt auf das JNI-Konzept, bietet jedoch nur die Möglichkeit über serielle- oder parallele Schnittstellen auf die Hardware zuzugreifen. Um das Communications API zu verwenden, muss das Javax.comm-Paket in das Java-Programm eingebunden werden. Das Javax.com-Paket ist plattformabhängig,, wobei es nicht für alle Plattformen vorhanden ist. Die API's werden weiter entwickelt und bieten somit immer mehr Möglichkeiten für den Zugriff auf Prozessdaten. Der größte Nachteil ist die Einschränkung der Ports und das fehlende API für alle Plattformen. Das JNI Konzept bietet eine sehr überschaubare Möglichkeit für den Zugriff auf Systemressourcen unter Java. Es ist eine übergreifende Technologie im Gegensatz zu Communications API. Das Konzept gilt für alle Plattformen und es ist möglich, die Java-Aufrufe von C/C++ Applikationen aus durchzuführen. Als Fazit ist festzuhalten, wenn eine Möglichkeit besteht, auf die Systemressourcen über die serielle- oder parallele Schnittstelle zuzugreifen und für die einzusetzende Plattform das Communications API vorhanden ist, auf diese Möglichkeit zugegriffen werden sollte. Falls diese Möglichkeit allerdings nicht besteht, sollte das JNI-Konzept eingesetzt werden. 4 ZUSAMMENFASSUNG Java ist eine an C++ angelehnte, objektorientierte Programmiersprache. Java hat sich für interaktive Web- Applikationen durchgesetzt. Im Bereich der Automatisierungstechnik gewinnt Java immer mehr an Bedeutung. Dies hat verschiedene Gründe. Zum einen ist Java im Vergleich zu anderen Sprachen einfacher und streng objektorientiert. Zum anderen ist Java plattformunabhängig. Dies bedeutet, dass Java Programme auf allen Zielplattformen, auf denen eine JVM installiert ist, laufen. Für direkte Zugriffe auf die Hardware bietet Java verschiedene Möglichkeiten. Hier sind das API und das JNI Konzept zu nennen, wobei das Communications API auch auf das JNI-Konzept zugreift. Das Java Communications API, das als Standard-Erweiterung für die Java Plattform gilt, kann verwendet werden, um plattformunabhängige Kommunikationsanwendungen für Technologien wie Sprachpost (voice mail), Telefax und Smart Cards zu schreiben. Die Kommunikation erfolgt jedoch über serielle- oder parallele Schnittstellen. Das Konzept von Java Native Interface (JNI) bietet eine Möglichkeit, um die nativen Codes, die in C oder C++ implementiert sind in eine Java Anwendung einzubinden. Hierbei ist zu beachten, dass Java Applikationen, die native Methoden einsetzen, nicht mehr plattformunabhängig sind. Für die Portierung auf eine andere Plattform genügt es jedoch, die native Methode auf einer neuen Hardware zu implementieren. 5 LITERATUR [1] [2] [3] e/jni/index.html [4] Klimas, E. J., Skublics, S., Thomas, D. A.: Smalltalk With Style. Prentice Hall (1995) [5] Arnold, K., Gosling, J.: The Java Programming Language (second edition). Addison- Wesley, Reading, Mass (1998) [6] Chang, Dan; Harkey, Dan: Client/Server Data Access with Java and XML, WILEY & SONS, (1998) [7] Flanagan, D.:Java in a nutshell: a desktop quick reference for Java Programmers. O'Reilly & Associates Inc. (1997) [8] Lauber, R., Göhner, P.: Prozessautomatisierung 1 (3. Auflage). Springer-Verlag, (1999) [9] Liang, Sheng: Java Native Interface: Programmer's Guide and Spezification, Addison- Wesley, Amsterdam (1998) [10] Nilsen, K.: Adding Real-Time Capabilities to Java. Communication of the ACM, vol. 41 No. 6, (1998) Java lässt keinen direkten Zugriff auf Systemressourcen zu, da z.b. Schnittstellen systemabhängig sind. Ein direkter Zugriff auf Netzwerkdaten ist jedoch möglich, wenn der Daten-Server gleichzeitig der Web-Server ist.

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

EasyWk DAS Schwimmwettkampfprogramm

EasyWk DAS Schwimmwettkampfprogramm EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java Stand: 21.02.2015 Java-Plattform: Auf Ihrem Computer muss die Java-Plattform, Standard-Edition der Version 7 (Java SE 7) oder höher installiert

Mehr

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 VORBEDINGUNGEN Als Vorbedingungen sollte bereits

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl Step by Step Remotedesktopfreigabe unter Windows Server 2003 von Remotedesktopfreigabe unter Windows Server 2003 Um die Remotedesktopfreigabe zu nutzen muss diese am Server aktiviert werden. Außerdem ist

Mehr

CADEMIA: Einrichtung Ihres Computers unter Windows

CADEMIA: Einrichtung Ihres Computers unter Windows CADEMIA: Einrichtung Ihres Computers unter Windows Stand: 21.02.2015 Java-Plattform: Auf Ihrem Computer muss die Java-Plattform, Standard-Edition der Version 7 (Java SE 7) oder höher installiert sein.

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs Informatik WiSe 15/16 Java 1 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2015 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello! 12.10.2015 Dr. Werner Struckmann / Stephan

Mehr

Kurzanleitung zu XML2DB

Kurzanleitung zu XML2DB Kurzanleitung zu XML2DB Inhaltsverzeichnis 1. Einleitung...3 2. Entwicklungsumgebung...3 3. Betriebsanleitung...3 3.1 Einrichten der Java Umgebung...3 3.2 Allgemeines zu java und javac...4 3.2.1 Allgemeines

Mehr

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen 4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen Highlights: objektorientierte Sprache Plattformunabhängigkeit bei Hardware und Betriebssystem optimale Einbindung im Internet und Intranet

Mehr

Nutzung von GiS BasePac 8 im Netzwerk

Nutzung von GiS BasePac 8 im Netzwerk Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff

Mehr

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele: 2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway

Mehr

Robot Karol für Delphi

Robot Karol für Delphi Robot Karol für Delphi Reinhard Nitzsche, OSZ Handel I Version 0.1 vom 24. Januar 2003 Zusammenfassung Nach der Einführung in die (variablenfreie) Programmierung mit Robot Karol von Freiberger und Krško

Mehr

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...

Mehr

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung: Installation Bevor Sie mit der Installation von MOVIDO 1.0 beginnen, sollten Sie sich vergewissern, dass der Internet Information Server (IIS) von Microsoft installiert ist. Um dies festzustellen, führen

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

PHP Kurs Online Kurs Analysten Programmierer Web PHP

PHP Kurs Online Kurs Analysten Programmierer Web PHP PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione

Mehr

Applications Applets (eingeschränkte Rechte)

Applications Applets (eingeschränkte Rechte) 1 Arten von Java-Programmen Man unterscheidet 2 verschiedene Arten von Java-Programmen: Applications Applets (eingeschränkte Rechte) Erstere sind eigenständige Programme. Letztere sind "kleine" Programme,

Mehr

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. In diesem Artikel werden wir Ihnen zeigen, wie Sie eine Datenbank verschlüsseln können, um den Zugriff einzuschränken, aber trotzdem noch eine

Mehr

LabView7Express Gerätesteuerung über LAN in einer Client-Serverkonfiguration. 1. Steuerung eines VI über LAN

LabView7Express Gerätesteuerung über LAN in einer Client-Serverkonfiguration. 1. Steuerung eines VI über LAN LabView7Express Gerätesteuerung über LAN in einer Client-Serverkonfiguration Arbeitsblatt und Demonstration A. Rost 1. Steuerung eines VI über LAN Eine Möglichkeit zur Steuerung virtueller Instrumente

Mehr

Local Control Network Technische Dokumentation

Local Control Network Technische Dokumentation Steuerung von Hifi-Anlagen mit der LCN-GVS Häufig wird der Wunsch geäußert, eine Hi-Fi-Anlage in die Steuerung der LCN-GVS einzubinden. Auch das ist realisierbar. Für die hier gezeigte Lösung müssen wenige

Mehr

Datenbank-basierte Webserver

Datenbank-basierte Webserver Datenbank-basierte Webserver Datenbank-Funktion steht im Vordergrund Web-Schnittstelle für Eingabe, Wartung oder Ausgabe von Daten Datenbank läuft im Hintergrund und liefert Daten für bestimmte Seiten

Mehr

Android Remote Desktop & WEB

Android Remote Desktop & WEB Application Note extends your EnOcean by a new dimension Android Tablets Android Remote Desktop & WEB myhomecontrol Stand: 22JAN2013 BootUp_mHC-ApplNote_Android_RemoteDesktop.doc/pdf Seite 1 von 7 Einleitung

Mehr

Installation der SAS Foundation Software auf Windows

Installation der SAS Foundation Software auf Windows Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software

Mehr

Ein mobiler Electronic Program Guide

Ein mobiler Electronic Program Guide Whitepaper Telekommunikation Ein mobiler Electronic Program Guide Ein iphone Prototyp auf Basis von Web-Technologien 2011 SYRACOM AG 1 Einleitung Apps Anwendungen für mobile Geräte sind derzeit in aller

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Einführung in PHP. (mit Aufgaben)

Einführung in PHP. (mit Aufgaben) Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites

Mehr

Webbasierte Installation des Cisco AnyConnect VPN-Client 3.1 unter Linux

Webbasierte Installation des Cisco AnyConnect VPN-Client 3.1 unter Linux Webbasierte Installation des Cisco AnyConnect VPN-Client 3.1 unter Linux Voraussetzungen: Die Installation des Clients setzt eine graphische Benutzeroberfläche voraus. Der Client selbst sowie die Installation

Mehr

Eine Einführung in die Installation und Nutzung von cygwin

Eine Einführung in die Installation und Nutzung von cygwin Eine Einführung in die Installation und Nutzung von cygwin 1 1. Woher bekomme ich cygwin? Cygwin ist im Internet auf http://www.cygwin.com/ zu finden. Dort lädt man sich die setup.exe in ein beliebiges

Mehr

Flashfragen in ILIAS Test & Assessment. Helmut Schottmüller

Flashfragen in ILIAS Test & Assessment. Helmut Schottmüller Flashfragen in ILIAS Test & Assessment Helmut Schottmüller Flashfragen in ILIAS Test & Assessment Helmut Schottmüller Veröffentlicht Januar 2009 Copyright 2009 Helmut Schottmüller Inhaltsverzeichnis 1.

Mehr

CADEMIA: Einrichtung Ihres Computers unter Mac OS X

CADEMIA: Einrichtung Ihres Computers unter Mac OS X CADEMIA: Einrichtung Ihres Computers unter Mac OS X Stand: 28.01.2016 Java-Plattform: Auf Ihrem Computer muss die Java-Plattform, Standard-Edition der Version 7 (Java SE 7) oder höher installiert sein.

Mehr

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee 2 10245 Berlin Tel.:+49(0) 30 2900 8639 Fax.:+49(0) 30 2900 8695 Database Exchange Manager Replication Service- schematische Darstellung Replication Service- allgemeines Replikation von Daten von bzw. in ein SAP-System und einer relationalen DMS-Datenbank Kombination

Mehr

EKF Software Server. Handbuch. Version 2.1. Hersteller: 2008 mesics gmbh Berliner Platz 8 48143 Münster info@mesics.de www.mesics.

EKF Software Server. Handbuch. Version 2.1. Hersteller: 2008 mesics gmbh Berliner Platz 8 48143 Münster info@mesics.de www.mesics. EKF Software Server Handbuch Version 2.1 Hersteller: 2008 mesics gmbh Berliner Platz 8 48143 Münster info@mesics.de www.mesics.de Inhalt Inhalt... 2 Allgemeines... 3 Systemvoraussetzungen... 3 Installation...

Mehr

Online-Publishing mit HTML und CSS für Einsteigerinnen

Online-Publishing mit HTML und CSS für Einsteigerinnen mit HTML und CSS für Einsteigerinnen Dipl.-Math. Eva Dyllong Universität Duisburg Dipl.-Math. Maria Oelinger spirito GmbH IF MYT 07-2002 Web-Technologien Überblick HTML und CSS, XML und DTD, JavaScript

Mehr

ICS-Addin. Benutzerhandbuch. Version: 1.0

ICS-Addin. Benutzerhandbuch. Version: 1.0 ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...

Mehr

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

Mehr

Administrator Handbuch

Administrator Handbuch SPTools Extension Keys: sptools_fal_base sptools_fal_driver SPTools Version: 1 Extension Version: 1.0.2 Inhaltsverzeichnis... 1 1. Einleitung... 2 2. Systemanforderungen... 3 3. SPTools FAL Installation...

Mehr

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005 Das Software Studio Christian Efinger mobilepoi 0.91 Demo Version Anleitung Erstellt am 21. Oktober 2005 Kontakt: Das Software Studio Christian Efinger ce@efinger-online.de Inhalt 1. Einführung... 3 2.

Mehr

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,

Mehr

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen 2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen Dienste des Internets Das Internet bietet als riesiges Rechnernetz viele Nutzungsmöglichkeiten, wie etwa das World

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi 06.09.10 1 Kapitel 1 Einstieg in Java Dr. Elham Firouzi 06.09.10 1 1 : Einstieg in Java Einleitung Ein erstes Beispiel Berner Fachhochschule Entwicklung von Java-Programmen Applikationen Applets Vor und Nachteile

Mehr

Auto-Provisionierung tiptel 30x0 mit Yeastar MyPBX

Auto-Provisionierung tiptel 30x0 mit Yeastar MyPBX Allgemeines Auto-Provisionierung tiptel 30x0 mit Yeastar MyPBX Stand 21.11.2014 Die Yeastar MyPBX Telefonanlagen unterstützen die automatische Konfiguration der tiptel 3010, tiptel 3020 und tiptel 3030

Mehr

Internet online Update (Internet Explorer)

Internet online Update (Internet Explorer) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Internetexplorer und gehen auf unsere Internetseite:

Mehr

JPC Visualisierung in Java

JPC Visualisierung in Java Visualisierung in Java Ihr Partner für f r Embedded Systeme! Hauptsitz: Niederwangen (Bern), Schweiz Niederlassungen: Winterthur (Zürich) und Basel, Schweiz Sales Office: München, Deutschland NetModule

Mehr

Verwendung des Terminalservers der MUG

Verwendung des Terminalservers der MUG Verwendung des Terminalservers der MUG Inhalt Allgemeines... 1 Installation des ICA-Client... 1 An- und Abmeldung... 4 Datentransfer vom/zum Terminalserver... 5 Allgemeines Die Medizinische Universität

Mehr

zur WinIBW Version 2.3

zur WinIBW Version 2.3 zur WinIBW Version 2.3 Stand: 14. Dezember 2001 18. Januar 2002 BW Installation (lokal) Technische Voraussetzungen Softwarebeschaffung Installation Start Pica-Schriften Probleme Technische Voraussetzungen

Mehr

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen Inhalt Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen 2.2 Installation von Office 2013 auf Ihrem privaten PC 2.3 Arbeiten mit den Microsoft

Mehr

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Autorisierung Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Dokumentation zum Referat von Matthias Warnicke und Joachim Schröder Modul: Komponenten basierte Softwareentwickelung

Mehr

CONVEMA DFÜ-Einrichtung unter Windows XP

CONVEMA DFÜ-Einrichtung unter Windows XP Einleitung Als Datenfernübertragung (DFÜ) bezeichnet man heute die Übermittlung von Daten zwischen Computern über ein Medium, bei der ein zusätzliches Protokoll verwendet wird. Am weitesten verbreitet

Mehr

Installationsanleitung SSL Zertifikat

Installationsanleitung SSL Zertifikat Installationsanleitung SSL Zertifikat HRM Systems AG, Technikumstrasse 82, Postfach, CH-8401 Winterthur, Telefon +41 52 269 17 47, www.hrm-systems.ch Inhaltsverzeichnis 1. Einleitung 3 2. Austausch Zertifikat

Mehr

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH Amt für Informatik Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH Anleitung vom 12. September 2009 Version: 1.0 Ersteller: Ressort Sicherheit Zielgruppe: Benutzer von SSLVPN.TG.CH Kurzbeschreib:

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014 Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...

Mehr

Java Virtual Machine (JVM) Bytecode

Java Virtual Machine (JVM) Bytecode Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,

Mehr

Installationsanleitung für CashPro im Mehrbenutzerzugriff/Netzwerkbetrieb

Installationsanleitung für CashPro im Mehrbenutzerzugriff/Netzwerkbetrieb Installationsanleitung für CashPro im Mehrbenutzerzugriff/Netzwerkbetrieb CashPro basiert auf Accesstechnologie 2003 und ist auch unter den aktuellen Accessversionen 2007 bis 2013 einsetzbar und Mehrbenutzerfähig.

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung Diese Anleitung hilft Ihnen, das nachfolgend geschilderte Problem zu beheben.

Mehr

Installationsanleitung. Hardlock Internal PCI Hardlock Server Internal PCI

Installationsanleitung. Hardlock Internal PCI Hardlock Server Internal PCI Installationsanleitung Hardlock Internal PCI Hardlock Server Internal PCI Aladdin Knowledge Systems 2001 Aladdin Document : Hardlock Internal PCI Guide D Hl-mn (10/2001) 1.1-00851 Revision: 1.1 Stand:

Mehr

Web Sockets mit HTML5. Quelle: www.html5rocks.com/de

Web Sockets mit HTML5. Quelle: www.html5rocks.com/de Web Sockets mit HTML5 Quelle: www.html5rocks.com/de Intensive Client-Server-Kommunikation: Beispiele Online-Spiele mit mehreren Mitspielern Chat-Anwendungen Live-Sport-Ticker Echtzeit-Aktualisierungen

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

Backup-Server einrichten

Backup-Server einrichten Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version.0 Voraussetzungen für diesen Workshop. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Das Produkt M-Lock ist

Mehr

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper) Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10 Technische Informationen (White Paper) Inhaltsverzeichnis 1. Über dieses Dokument... 3 2. Überblick... 3 3. Upgrade Verfahren... 4

Mehr

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag

Mehr

Betriebshandbuch. MyInTouch Import Tool

Betriebshandbuch. MyInTouch Import Tool Betriebshandbuch MyInTouch Import Tool Version 2.0.5, 17.08.2004 2 MyInTouch Installationshandbuch Inhaltsverzeichnis Inhaltsverzeichnis... 2 Bevor Sie beginnen... 3 Einleitung...3 Benötigte Daten...3

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers Ist Excel das richtige Tool für FMEA? Einleitung Wenn in einem Unternehmen FMEA eingeführt wird, fangen die meisten sofort damit an,

Mehr

Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7

Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7 Anleitung zur Einrichtung eines Netzwerkes für den Gebrauch von GVService unter Windows 7 In dieser Anleitung geht es um das Bereitstellen einer zentralen GV Service Installation auf einem Server-PC, auf

Mehr

Dieser Ablauf soll eine Hilfe für die tägliche Arbeit mit der SMS Bestätigung im Millennium darstellen.

Dieser Ablauf soll eine Hilfe für die tägliche Arbeit mit der SMS Bestätigung im Millennium darstellen. Millennium SMS Service Schnellübersicht Seite 1 von 6 1. Tägliche Arbeiten mit der SMS Bestätigung Dieser Ablauf soll eine Hilfe für die tägliche Arbeit mit der SMS Bestätigung im Millennium darstellen.

Mehr

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16. Copyright Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand 01.08.2005-08-16 Änderungen in Dokumentation und Software sind vorbehalten! Copyright Copyright 2005 COSA GmbH Alle Rechte vorbehalten.

Mehr

Windows 8 Lizenzierung in Szenarien

Windows 8 Lizenzierung in Szenarien Windows 8 Lizenzierung in Szenarien Windows Desktop-Betriebssysteme kommen in unterschiedlichen Szenarien im Unternehmen zum Einsatz. Die Mitarbeiter arbeiten an Unternehmensgeräten oder bringen eigene

Mehr

Java Einführung Programmcode

Java Einführung Programmcode Java Einführung Programmcode Inhalt dieser Einheit Programmelemente Der erste Programmcode Die Entwicklungsumgebung: Sun's Java Software Development Kit (SDK) Vom Code zum Ausführen des Programms 2 Wiederholung:

Mehr

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1): Supportanfrage ESN Bitte füllen Sie zu jeder Supportanfrage diese Vorlage aus. Sie helfen uns damit, Ihre Anfrage kompetent und schnell beantworten zu können. Verwenden Sie für jedes einzelne Thema jeweils

Mehr

Automatische Installation (wenn das SSO-Applet nicht vorhanden ist)! Abbildung 1:Auswahldialog für Installationslaufwerk

Automatische Installation (wenn das SSO-Applet nicht vorhanden ist)! Abbildung 1:Auswahldialog für Installationslaufwerk SS EE IITTEE:: I 11/ /55 Bei jedem Aufruf des SSO-Applet wird kontrolliert, ob das Konfigurationsverzeichnis ( ssoapplet ) existiert. Dabei werden alle Laufwerke, auf die der Benutzer Lese- und Schreibrechte

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Herzlich willkommen bei der Installation des IPfonie -Softclients!

Herzlich willkommen bei der Installation des IPfonie -Softclients! Herzlich willkommen bei der Installation des IPfonie -Softclients! Sie benötigen diesen Softclient, um mit Ihrem Computer bequem über Ihren Internetanschluss telefonieren zu können. Der Softclient ist

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien. Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten

Mehr

Internet und WWW Übungen

Internet und WWW Übungen Internet und WWW Übungen 7 Serverseitige Web-Technologien [WEB7] Rolf Dornberger 1 06-11-12 7 Serverseitige Web-Technologien 1. Begriffe Zusatz für Interessierte: 2. JSP erstellen 3. Servlet erstellen

Mehr

http://www.hoststar.ch

http://www.hoststar.ch Kapitel 16 Seite 1 Die eigene Homepage Im Internet finden Sie viele Anbieter, die Ihnen rasch und zuverlässig einen Webhost für die eigene Homepage einrichten. Je nach Speicherplatz und Technologie (E-Mail,

Mehr

HBF IT-Systeme. BBU-BSK Übung 2 Stand: 24.08.2010

HBF IT-Systeme. BBU-BSK Übung 2 Stand: 24.08.2010 BBU-BSK Übung 2 Stand: 24.08.2010 Zeit Laborübung 45 min Erstellung von virtuellen Maschinen mit VMWare Player Eine neue virtuelle Maschine erstellen: Ab dem VMWare Player 3 kann man nicht nur virtuelle

Mehr

Java Enterprise Architekturen Willkommen in der Realität

Java Enterprise Architekturen Willkommen in der Realität Java Enterprise Architekturen Willkommen in der Realität Ralf Degner (Ralf.Degner@tk-online.de), Dr. Frank Griffel (Dr.Frank.Griffel@tk-online.de) Techniker Krankenkasse Häufig werden Mehrschichtarchitekturen

Mehr

KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE

KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung...Seite 03 2. Zugriff auf Cloud Object Storage mit Cyberduck...Seite 04 3. Neuen Container

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

DLLs (dynamic loaded libraries) mit MingW erstellen

DLLs (dynamic loaded libraries) mit MingW erstellen DLLs (dynamic loaded libraries) mit MingW erstellen Autor: Michel D. Schmid Datum: April 2, 2009 Contents 1 Einführung 1 1.1 Open-Source Tools.......................................... 1 2 Beispiel 1:

Mehr