Overview. Multitasking in Embedded Systems. Software development with Linux. Using Multitasking in Microcontrollers. URL:

Größe: px
Ab Seite anzeigen:

Download "Overview. Multitasking in Embedded Systems. Software development with Linux. Using Multitasking in Microcontrollers. URL: http://hlb-labor."

Transkript

1 Overview Software development with Linux Using Multitasking in Microcontrollers URL: 1

2 Chapter 1 Software development under Linux OS 2

3 Softwareentwicklung mit Linux Was ist Linux? Das Linux Dateisystem Aufsetzen des Betriebssystems Installation von Softwarepaketen Werkzeuge ToolChain_STM32 Versionskontrollsysteme 3

4 Historie von Linux 1991 begann Linus Torvalds in Helsinki (Finnland) mit der Entwicklung einer Terminal-Emulation, um unter anderem seinen eigenen Computer besser zu verstehen. Mit der Zeit merkte er, dass sich das System immer mehr zu einem Betriebssystem entwickelte und kündigte es daraufhin in der UsenetThemengruppe für das Betriebssystem Minix, comp.os.minix an.[3] Im September desselben Jahres sollte das System dann auf einem Server den Interessierten zur Verfügung gestellt werden. Da der damalige FTP-ServerAdministrator Ari Lemmke mit den von Torvalds vorgesehenen Namen Freax oder Buggix nicht einverstanden war, stellte jener es stattdessen in einem Verzeichnis mit dem Namen Linux zur Verfügung. Torvalds widersetzte sich anfangs dieser Namensgebung, gab seinen Widerstand aber schnell auf, da er nach eigener Aussage eingestehen musste, dass Linux einfach ein besserer Name war. Linux wurde zu dieser Zeit noch unter einer eigenen Lizenz veröffentlicht, welche die kommerzielle Nutzung verbot. Schnell merkte Torvalds aber, dass diese hinderlich war, und entschied sich dazu, allen Entwicklern deutlich mehr Freiraum zu geben. Er und seine Mitautoren stellten daraufhin im Januar 1992 Linux unter die GNU GPL[4]. Somit konnte man Linux in GNU integrieren und dies als das erste freie Betriebssystem vertreiben. Dieser Schritt machte das System für eine noch größere Zahl von Entwicklern interessanter, da es für diese die Modifizierung und Verbreitung vereinfachte kündigte Torvalds an, dass er einen Pinguin als Maskottchen für Linux haben wolle, und schrieb einen Wettbewerb aus, aus dem schließlich der populäre Tux hervorging. Quelle: 4

5 Was ist Linux? Kernel Das Programm init Shells Benutzerverwaltung Grafische Benutzeroberfläche Anwendungen Distributionen Community 5

6 Der Linux Kernel Oberboss im System Lizensiert unter GNU General Public License 2 Komponenten Speicherverwaltung Gerätetreiber Multitasking Scheduler Interprozesskommunikation Paketfilter (Firewall) Quelle: 6

7 GNU General Public License 2 Copyleft Prinzip Lizenznehmer: Alle abgeleiteten Werke auch GPL 2 Autor: Darf Werk auch unter anderen Lizenzen veröffentlichen Lizenznehmer muss Quelltext veröffentlichen! Mehrere Gerichtsverfahren gegen Firmen z.b Verfahren gegen D-Link 7

8 Das Programm /sbin/init Erstes Programm bei jedem Systemstart Startet alle weiteren Programme verwaltet Runlevel 0. System anhalten 1. Einzelbenutzer (meistens root) 2. Mehrbenutzer ohne Netzwerk 3. Mehrbenutzer mit textueller Oberfläche 4. Reserviert/ Unbenutzt 5. Mehrbenutzer mit grafischer Oberfläche 6. Rechner wird neugestartet Befehle (als Superuser) > runlevel > init <N> gibt aktuellen Runlevel aus schaltet in Runlevel <N> 8

9 Das Linux Dateisystem Dateisystem ist Zentralbibliothek des Rechners Linux Philosophie: Alles ist eine Datei! Laufwerke immer in Ordner eingehängt / ist die Wurzel von allem alles andere darunter Zugriff auf Hardware über virtuelle Dateien Zugriffsrechte/ Schutzbits Versteckte Dateien 9

10 Laufwerke in Ordnern keine Laufwerkbuchstaben! Einhängen eines Laufwerks mittels mount Benötigt oft Superuser Rechte (sudo) sudo mount /dev/sda2 /media/home Anzeige der Mountpoints mittels df oder mount > df -h Dateisystem rootfs devtmpfs tmpfs /dev/sda1 /dev/sda2 Größe Benut Verf Ben%% Eingehängt auf 20G 18G 2,9G 86% / 984M 228K 984M 1% /dev 990M 1,4M 988M 1% /dev/shm 20G 18G 2,9G 86% / 54G 46G 5,2G 90% /home 10

11 / ist die Wurzel Immer ein Laufwerk in / eingehängt => Bei Neuinstallation reicht eine /-Partition alle anderen Datenträger in Unterordnern /-Verzeichnis (Beispiel opensuse) /bin Kommandos für root und normale Benutzer /boot Kernel und für Bootvorgang benötigte Dateien /dev Virtuelles Dateisystem devfs enthält Dateien für Zugriff auf Hardwaregeräte /etc Systemkonfiguration (globale Einstellungen für alle Benutzer) /home Jeder Benutzer für gewöhnlich ein eigenes Verzeichnis /lib Gemeinsam genutzte Programmbibliotheken /media Dynamische Datenträger wie z.b. USB-Sticks, CDROM Laufwerke,... /opt Optional installierte Software (z.b. QtSDK) /proc Virtuelles Dateisystem mit Informationen zum laufenden System /root Das Heimatverzeichnis des Superusers /sbin Befehle zur Systemverwaltung (nur mit Superuser Rechten benutzbar) /sys Virtuelles Dateisystem sysfs eine erweiterte Darstellung von devfs (/dev) /usr Die meisten Anwendungen sind hier installiert /var Variable Informationsdateien und Datenbanken Quelle: 11

12 Der Ordner /dev Hardwaregeräte in Form von Dateien sichtbar Vom Kernel mittels devtmpfs automatisch gefüllt Beispieleinträge Ein Eintrag pro Festplatte und pro Partition /dev/sda Festplatte 1 /dev/sda1 Festplatte 1 Partition 1 Serielle Schnittstellen /dev/ttys0 /dev/ttyusb0 /dev/null interne serielle Schnittstelle erster USB-Seriell Wandler schluckt alle eingehenden Zeichen 12

13 Zugriffsrechte/ Schutzbits Für jede Datei drei Gruppen (E) (G) (A) Eigentümer Gruppe Andere Drei Arten von Schutzbits r darf lesen w darf schreiben x darf ausführen Schutzbits in Textdarstellung EEEGGGAAA > ls -l -rw-r--r-- 1 gregor users Okt 13:35 Quellen.txt > chmod g+w Quellen.txt > ls -l -rw-rw-r-- 1 gregor users Okt 13:35 Quellen.txt 13

14 Versteckte Dateien Dateien/ Ordner die mit Punkt beginnen Normalerweise nicht angezeigt Enthalten oft Einstellungen Bei Kopier- /Verschiebeaktionen ignoriert Punkt Einträge anzeigen > ls -al -rw-r--r-- 1 gregor gregor :30.springrc drwx gregor gregor :18.ssh Punkt Einträge kopieren cp -R \.* Ziel/ Im Dateiimanager versteckte Dateien anzeigen 14

15 Aufsetzen des Betriebssystems Wir machen uns die Hände schmutzig! Beispiel anhand Distribution Xubuntu Installation in VirtualBox Emulator 15

16 Linux Distro herunterladen 32 Bit Version (x86) optimal für Virtualisierung weniger Speicherbedarf einfacher zu emulieren 64 Bit Version (x64) optimal bei nativer Installation 16

17 Virtuelle Maschine erstellen 17

18 Namen vergeben 18

19 1GB RAM mindestens 19

20 Virtual Disk Image 20

21 Bootfestplatte erzeugen 21

22 Feste Größe ist schneller 22

23 20GB reichen zunächst 23

24 Zeit für einen Kaffee 24

25 ISO Image als virtuelle CD 25

26 Start von virtueller CD 26

27 Maus befreien: Strg Rechts 27

28 Inklusive Online Updates 28

29 Manuelle Partitionierung 29

30 Neue Partitionstabelle 30

31 Partition hinzufügen 31

32 Eine / Partition ist Pflicht! 32

33 Jetzt installieren 33

34 Ohne Swap fortfahren Auslagern auf virtuelle Festplatte langsam! Besser mehr Speicher für Maschine 34

35 Anmeldedaten 35

36 Ein gutes Passwort wählen GROSS- und kleinbuchstaben Ziffern Sonderzeichen,.! $ % & / ( ) = + Einen leicht zu behaltenen Satz wählen: Mann was der wieder für einen Quatsch sagt Sonderregeln (ein 1, sagen ;) Mwdwf1Q; Insgesamt 8 Zeichen! 36

37 Das kann dauern! 37

38 Neustart bestätigen 38

39 Ein aufgeräumter Desktop 39

40 Updates suchen 40

41 Updates installieren 41

42 Anwendungen installieren Änderungen am System nur als Superuser (root) Verschiedene Optionen Paketmanager Installationsskripte einzelne Pakete Quelltext 42

43 Der Superuser Ich bin /root, ich darf das! Eigenes Homeverzeichnis /root Darf jede Datei verändern Nur zur Systemkonfiguration Superuser werden > sudo su Etwas als Superuser ausführen > sudo reboot -n 43

44 Installation per Paketmanager Königlich einfache Bedienung Große Auswahl vorkonfigurierter Softwarepakete Abhängigkeiten automatisch aufgelöst Automatische Updates opensuse: yast, kpackagekit Debian: apt-get, aptitude, synaptic, kpackagekit 44

45 Installationsskripte Ähnlich Installation unter Windows OS Ausführbares Programm von Webseite Oft Dateinamensendung.run Datei muss ausführbar gemacht werden chmod +x DATEI Eigenschaften/ Dateizugriff im Dateimanager Oft als Superuser starten sudo./datei Beispiele QtCreator Grafikkartentreiber (NVIDA/ AMD) 45

46 Installation einzelner Pakete Für Fortgeschrittene User Per Suchmaschine suchen Muss zur Distribution passen opensuse, RedHat: sudo rpm install FILE.rpm Debian:.deb Format sudo gdebi FILE.deb Keine automatischen Updates! 46

47 Installation aus Quellen Pain in the Ass Suchen der richtigen Version neueste Quellen oft instabil Installationsanleitungen oft veraltet Neu kompilieren COMPILE.txt/ INSTALL.txt lesen! Foren durchsuchen Abhängigkeiten von Hand lösen Fehlermeldungen lesen Fehlende Software installieren Installationsscript erstellen (Fortgeschritten) 47

48 Gasterweiterungen Installieren Ermöglichen Gemeinsame Ordner Geteilter Zwischenspeicher 3D Grafikbeschleunigung Größenänderungen des Fensters 48

49 Skript nicht ausführbar Typisches Problem ISO Dateisystem hat keine Schutzbits 49

50 Shell im Ordner starten 50

51 autorun.sh direkt starten 51

52 Gasterweiterungen installiert 52

53 Wieder neustarten 53

54 Übung: Installieren Linux Distribution eigener Wahl installieren opensuse, Ubuntu/ Kubuntu, Debian, in virtueller Maschine oder als Dualboot System Darauf folgende Software installieren: QtCreator ( git yakuake STM32_ToolChain ( 54

55 Console Textuelles Eingabeinterface Erste Console 1991 vom Kernel bereitgestellt Ursprünglich Ausgabe direkt in Grafikkartenpuffer Terminal ist Entsprechung unter grafischer Oberfläche Immer noch erreichbar per Strg+F1,... 55

56 Shell Jede Konsole startet eine Shell Interpretiert menschliche Texteingaben Es gibt verschiedene Shells bash, csh, tcsh, (unterschiedliche Kommandosyntax!) Grundfunktionen Starten von Programmen Ausführen von Skripten Vollständige Programmiersprache Umsetzen von Pipe Anordnungen Bereitstellung von Umgebungsvariablen Umleitung von Textausgaben 56

57 Shell Jede Konsole startet eine Shell Interpretiert menschliche Texteingaben Es gibt verschiedene Shells bash, csh, tcsh, (unterschiedliche Kommandosyntax!) Grundfunktionen Starten von Programmen Ausführen von Skripten Vollständige Programmiersprache Umsetzen von Pipe Anordnungen Bereitstellung von Umgebungsvariablen Umleitung von Textausgaben 57

58 Programme starten Goldene Regel: Dateien immer tabben! Ausführbare Datei finden absoluter/ relativer Pfad geht immer > /bin/less Suche im Suchpfad Variable $PATH zu durchsuchende Verzeichnisse > echo $PATH./:/home/gregor/bin:/bin:/opt/QtSDK/QtCreator/bin/:..../ ist aktuelles Verzeichnis 58

59 Ausführen von Skripten Synonym: Batchdatei Erste Zeile definiert Interpreter #!/bin/bash #!/usr/bin/perl x Bit gesetzt: chmod +x DATEI Keine Dateinamensuffixe unter Linux! Oft aktuelles Verzeichnis nicht im Pfad 59

60 Shell Programmierung Variablen VARIABLE= WERT echo $VARIABLE Kontrollstrukturen if [ BEDINGUNG ]; then... fi for A in a b c... ; do... done Kein goto in bash! 60

61 Pipeanordnungen Idee: Kleine Befehle als Werkzeugkasten Kombination einfacher Befehle ist mächtig Pipe ist Verbindung zweier Befehle Pipesymbol ist senkrechter Strich A B Textausgabe von A ist Texteingabe für B cat hallo.txt grep Welt Lange Pipeketten möglich 61

62 Umgebungsvariablen Jede Shell erbt Variablen von Umgebung Neue Variablen in Elternshell unbekannt Variablen anzeigen: export (Bash) Nur exportierte Variablen weiter vererbt Variablen sterben mit ihrer Shell permanent durch Eintrag in Startup Skript Zuweisung: VARIABLE= Wert 62

63 Textausgaben umleiten Jedes Programm 1 Eingabestrom: STDIN 2 Ausgabeströme: STDOUT, STDERR Eingabe aus Datei: BEFEHL <DATEI Ausgabe in Datei: Zieldatei überschreiben: BEFEHL >DATEI1 2>DATEI2 An Zieldatei anhängen: BEFEHL >>DATEI1 2>>DATEI2 STDERR nach STDOUT umleiten: 2>&1 63

64 Shell Startup Skript Bei Start/ Login automatisch ausgeführt /etc/bash.bashrc ~/.bashrc ~/.profile ~/.login Beispiele: Suchpfad zu qtcreator > echo 'export PATH= /opt/qtsdk/qtcreator/bin/:$path' >>~/.bashrc Permanenter alias > echo 'alias ll= ls -lh ' >>~/.bashrc 64

65 Werkzeuge man cat less find grep gcc/ g++ make openocd gdb 65

66 Befehl man (1) Textbasiertes Anleitungssystem Ausführliche Beschreibungen Praktisch jeder Befehl beschrieben Programmierhandbuch Tastenzuordnungen Pfeiltasten Blättern / nach Text suchen Beenden q Alternative: info 66

67 Befehl man (2) Verschiedene Ebenen > man EBENE SCHLÜSSELWORT Ausführbare Programme oder Shellbefehle Systemaufrufe (Kernelfunktionen) Bibliotheksaufrufe (Funktionen in System-Bibliotheken) Spezielle Dateien (gewöhnlich in /dev Dateiformate und Konventionen, z. B. /etc/passwd Spiele Makropakete und Konventionen, z. B. man(7), groff(7) Systemadministrationsbefehle (in der Regel nur für root) Kernelroutinen [Nicht Standard] > man 1 open > man 2 open 67

68 Befehl cat Dateiinhalt ausgeben Oft Start einer Pipe > cat DATEI grep FOO less Here-Skript in Shell-/ Perl-Skript cat << END_OF_TEXT Hello World END_OF_TEXT 68

69 Befehl less Zeigt Dateiinhalt an Interaktives bidirektionales Blättern Suchfunktion: / Beenden: q 69

70 Befehl find Suchen von Dateien > find STARTPFAD -name MUSTER Viele Optionen zur Suchkonfiguration Verknüpfung mittels -and / -or Expression für jede gefundene Datei Default: -print Externes Programm: -exec BEFEHL {} \; Beispiele: > find /home -name \.* less > find./ -name *.txt -exec less {} \; man find 70

71 Befehl grep Universeller Suchbefehl Sucht im Eingabestrom nach Muster Gibt alle Zeilen aus, die Muster enthalten Syntax: grep MUSTER DATEI > grep Hallo HalloWelt.txt > cat HalloWelt.txt grep Hallo Kombination mit find > find./ -name *.h grep -n MUSTER man grep 71

72 Befehl gcc/ g++ Universeller Übersetzer Preprozessor C/ C++ Compiler Linker Assembler Übersetzen: gcc -c DATEI.c Linken: gcc DATEI1.o DATEI2.o -o OUT man gcc (10575 Zeilen) 72

73 Befehl make Führt makefile aus Umsetzung von Abhängigkeiten Einfache Regeln A.x mittels BEFEHL aus A.y erstellt Gegeben A.y, B.y, C.y, Für Ziel Z: Erstelle A.x, B.x, C.x, Ausnutzung Parallelität: make -jn (N = 2x CPU-Kerne) Für C wesentliche Dateiendungen.s.c.h.o Assembler Quelltext C Quelltext C Headerdatei Objektdatei (aus.c oder.s erstellt) 73

74 makefile Steuerdatei für make Regeln zur Übersetzung Konfigurationsoptionen Definition von Übersetzungsziele (ZIEL:) Quellverzeichnisse Zu erzeugender Objektdateien Name der Ausgabedatei Übersetzungsoptionen 74

75 GNU Make Quellen Offizielles Handbuch Deutsches Tutorial 75

76 ToolChain_STM32 Collection of Scripts Automatically downloads aprox. 500MB Sources patched and compiled Compiler binaries Programmer/ Debugger uc Libraries 76

77 Features ToolChain Downloaded + installed automatically FreeRTOS Multitasking Scheduler STM-StdPeripheralsLibrary Compiler Suite ARM NONE EABI FTDI Treiber für JTAG Programmer current OpenOCD (snapshot from SVN) multiple Ethernet TCP/IP Stacks LCD-Monitor Text + Graphic Mathematic Fixpoint Library 77

78 Creating a new project Start the adventure! 1. cd ToolChain_STM32 2../createNewProject.pl TEST FOO 3. cd../test 4. configure Makefiles 5. configure Programmer 6../compile.sh 7. Debug 78

79 Skript createnewproject.pl./createnewproject PROJECT AUTHOR copies template project Creates new folder in../ Fills in name of project and author Created folder may be moved anywhere 79

80 Template Project Complete, standalone framework Should run on most Cortex M3 boards Support for QtSDK Editor open file ProjektName.creator from QtCreator Compile: >./compile.sh Missing ToolChain downloaded + installed 80

81 Makefile Parsed for every compile.sh run Defines how to make things Which object files to compile Where to find.c/.h/.s -files Which constants to define Which files to include Dependencies between build targets 81

82 Configure Makefile (1) (2) (3) (4) (5) (6) (7) (8) (9) basic constants where to find h-files where to find c-files where to find s-files automagically collect files define ucontroller to use minimize code size phony build targets add some general files 82

83 Makefile - basic constants Compileroptimizations (-O) O0 O1 O3 Os no Optimizations (for Debugging) simple Optimizations maximal Optimizations creates smallest Binary > man gcc 83

84 Makefile where to find h-files Header files benötigt für #include gcc Parameter -I definiert einen Includepfad \ am Zeilenende: mit nächster Zeile fortfahren $(INCLUDE_DIRS) enhält viele -I Einträge $(INCLUDE_DIRS) direkt an gcc gegeben Headerfile finden: gcc durchläuft Liste der -I Einträge 84

85 Makefile where to find c-files C-Sources compiled into separate.o files vpath.%c stores list of folders vpath.%c only used by make Whenever FOO.o should be created Make searches all folders in vpath.%c The first found file FOO.c will be compiled 85

86 Makefile where to find s-files.s files contain assembler source code Often used for Bootloader vpath %.s stores relative paths of folders Whenever make should compile a FOO.s All folders in vpath %.s are searched First found file FOO.s is being compiled FOO.s FOO.o 86

87 Makefile collect files Files with certain name suffix.c.cc.cpp.s Only files in same folder as makefile Every found file compiled into corresponding.o file Not required to manually add these files to makefile 87

88 Makefile - define ucontroller STM32 ucs are separated into classes Classes differ by Required bootcode file Amount of RAM Amount of Flash Memory Functional units (GPIOs, Timer, UARTS,..) 88

89 Makefile - minimize code size Optimize during Compile & Link GCC can write Funktiones/ Data into separate Sektions of the objektfile Unreferenced sections can be skipped during link stage Important: All used interrupt handlers have to be marked as attribute ((used)) arm-none-eabi-gcc --help=optimizers less man gcc 89

90 Makefile - phony build targets.phony: clean all Lists all Targets which are no files Avoids ambiguity between build targets and files of same name Example: all, clean 90

91 Makefile - add general files $(MAIN_OBJS) stores list of all object files to create Every mandatory.c file requires one.o entry in $(MAIN_OBJS)! Exceptions: page Collect Files object files can be added to at any stage of makefile E.g.: MAIN_OBJS += foo.o 91

92 Makefile Extensions Subfolders in project folder extensions/ Makefile fragments provided by ToolChain No user created/ project related files here! extensions.local/ User created Makefile fragments go here extensions.active/ Symbolic links to extensions/ or extensions.local/ all makefile.* files here are included automatically 92

93 Folder extensions/ Two types of files makefile.nnn_name Makefile fragment in rank NNN provides some extra settings when activated activate.nnn_name.sh scripts that activate makefile fragments will create one or more links in extensions.active/ some scripts remove interferring links automatically (e.g. activate.100_board_xxx.sh) Added to search PATH Just cd to your project folder and issue: > activate.700_example_threading_queues_led.sh 93

94 Extensions in different Ranks Extensions, Makefiles, Activate-Scripts Filename shows three digit rank number High ranked extensions depend on extensions with lower rank number Lowest rank: Basic compiler libraries Highest rank: Complex examples ToolChain/ReadMe_Ranks.txt Rule: No rank depends on higher ranks! system libraries 100 basic definitions 200 basic libraries 300 public libraries 400 ToolChain libraries 600 simple examples 700 complex examples 999 external tools

95 Minimal SetUp > activate.600_example_leds.sh Creates out of the egg: makefile.050_compiler_sourcery_g++ makefile.100_board_olimex_p107 makefile.200_std_peripherals_library makefile.300_scheduler_free_rtos makefile.300_scheduler_free_rtos_heap1 makefile.600_example_leds + more in future releases of ToolChain 95

96 Extension 050_compiler_sourcery_g++ Basic Libraries provided by Compiler Binary compiler suite from CodeSourcery No source code available Outdated (not updated by CodeSourcery) CodeSourcery provides updated commercial compiler suite > activate.050_compiler_sourcery_g++.sh 96

97 Extension 100_board_XXX Board description CPU type Memory Size and Types Pin definitions One board description is mandatory > activate.100_board_olimex_p107.sh 97

98 Extension 200_std_peripherals_library Common library to access Peripherals on CortexM3 chips Mandatory for all example projects Required by FreeRTOS > activate.200_std_peripherals_library.sh 98

99 Extension 300_scheduler_free_rtos Multitasking scheduler Provides inter task communication Mandatory for all example projects Requires exactly one activated from 300_scheduler_free_rtos_heap1 300_scheduler_free_rtos_heap2 300_scheduler_free_rtos_heap3 > activate.300_scheduler_free_rtos.sh 99

100 Extension 400_debug_registers Provides global variables for certain registers Each variable is a pointer to detailed struct Allows easy reading of individual bit in hardware named access to bitfields in hardware registers > activate.400_debug_registers.sh 100

101 Extension 400_lcd_320x240_olimex driver for LCD panel on prototype board STM32-LCD from Olimex Basic graphical + text features Makes use of demo code from Olimex > activate.400_lcd_320x240_olimex.sh 101

102 Extension 400_fix_point_lib Library for Fixed Point mathematic operations CortexM3 CPUs have no Floating Point Unit Fixed Point Math much faster than Floating Point Math in Software Only low loss in accuracy Need to choose range according to application! Documentation/Math/ > activate.400_fix_point_lib.sh 102

103 Extension 400_network_uip_ste101p Basic TCP/IP network Stack uip Includes demo software from Olimex Requires Protoboard Olimex P107 Only one socket at a time Packet resend to be implemented by application Documentation/Network/ > activate.400_network_uip_ste101p.sh 103

104 Extension 400_support_adc Simple functions for ADC configuration Configuration of single ADC-channels DMA enabled data transfer into variables single channel, blocking readout > activate.400_support_adc.sh 104

105 Extension 600_example_leds Simple Multitasking example Two tasks communicate via shared Variables taskbrightness periodically changes brightnes value taskcontrolled creates PWM on pin PB_LED1 to show current brightness > activate.600_example_leds.sh 105

106 Extension 600_example_lcd Basic example how to use LCD panel on prototype board STM32-LCD from Olimex Shown Features initialize panel set background/ foreground color print single characters at certain positions printf() at certain/ current positions > activate.600_example_lcd.sh 106

107 Extension 700_example_threading_queues_led Example showing several tasks communicating via queues visualization via two LEDs can run on any board that defines PB_LED1, PB_LED2 > activate.700_example_threading_queues_led.sh 107

108 Extension 700_example_threading_queues_lcd Example showing several tasks communicating via queues visualization on LCD panel producer task: current value consumer task: current value Queue size > activate.700_example_threading_queues_lcd.sh 108

109 Extension 700_example_threading_semaphores_led Example showing several tasks communicate via semaphores several producer tasks give varying amount of tags to a semaphore several consumer tasks take one tag each and do something for a while Visualization via two LEDs on PB_LED1, PB_LED2 > activate.700_example_threading_semaphores_led.sh 109

110 Extension 700_example_threading_semaphores_lcd Example showing several tasks communicate via semaphores several producer tasks give varying amount of tags to a semaphore several consumer tasks take one tag each and do something for a while Visualization on LCD panel two producer tasks six consumer tasks > activate.700_example_threading_semaphores_led.sh 110

111 Adapting linker script Used when linking all objject files into final binary Defines memory adresses and assignments in the uc Memory divided into areas with attributes Name Access (r ead, w rite, x ecutable) Start Size Sections defined with attributes Name Alignment (1, 2, 4, 8 Bytes) Assigned memory area. is current address counter File stm32.ld contains linker script 111

112 Configure Programmer Programmer is a hardware device JTAG-Connection between Desktop PC/ Laptop and uc flashes binary file onto uc Allows Incircuit Debugging Must be supported by OpenOCD Example: ARM-USB-TINY-H from Olimex Corp. used programmer defined in _/interface.cfg List of supported programmers to be found in ToolChain/OpenOCD/share/openocd/scripts/interface/ 112

113 compile.sh./compile.sh downloads + installs missing ToolChain creates symbolic links to installed libraries may activate basic example framework compies current project updates QtCreator/PROJEKT.creator flashes binary onto uc 113

114 Debugging In which stage does the bug occur During compilation (gcc -c) Syntaxerror Includefile not found.c-datei makefile #02 During linking after compilation Objektfile missing Objektfile from wrong path makefile #09 makefile #03 During runtime Wrong uc chosen Too few/ much RAM Stackoverflow activate correct board stm32.ld xtaskcreate() call 114

115 Versionskontrollsysteme Erfassung von Änderungen an Dateien Protokollierung von Änderungen Wiederherstellung alter Zustände Archivierung der gesamten Historie Koordinierung des gemeinsamen Zugriffs Verzweigung in mehrere Branches 115

116 Funktionsweisen Lokale Versionsverwaltung Zentrale Versionsverwaltung Verteilte Versionsverwaltung 116

117 Lokale Versionsverwaltung Oft nur einzelne Datei versioniert Änderungen in Datei selbst gespeichert Werkzeuge: SCCS, RCS Beispiele Technische Zeichnung mit Änderungsindex 117

118 Zentrale Versionsverwaltung Als Client-Server System aufgebaut Ein zentraler Server speichert komplette Historie optional: Read-Only Zugriff für Fremduser optional: Web-Interface Entwickler jeweils nur eine Version Zugriff auch per Netzwerk möglich Werkzeuge cvs, svn (OpenSource) AlienBrain, Perforce, Team Foundation,

119 Verteilte Versionsverwaltung Jeder Entwickler hat komplette Historie Zusätzlich zentraler Server möglich Änderungen zwischen Entwicklern austauschen optional: Read-Only Zugriff für Fremduser optional: Web-Interface Werkzeuge git, GNU arch, Mercurial, Bazaar (OpenSource) BitKeeper 119

120 Wie Git das? Übersicht Installation Dezentrale Verwaltung Verzweigte Entwicklung Datenaustausch Markierte Revisionen Interoperabilität Web-Interface 120

121 Git - Übersicht Freie Software Verteilte Versionsverwaltung von Dateien Entwickelt zur Verwaltung des Linux Kernel Quelltextes Betriebsysteme Linux, Solaris, Mac OS X, FreeBSD, Windows (Cygwin, Msysgit, TortoiseGit-Shell) Aktuell eingesetzt in vielen OpenSource Projekten Amarok, Android, BusyBox, Debian, DragonFly BSD, Eclipse, Erlang, Fedora, Git, Gnome, KDE, Qt, Ruby, Kurzanleitung: Webseite:

122 Git - Installation Debian/ Ubuntu sudo apt-get install git opensuse sudo zypper install git Windows

123 Git - Dezentrale Verwaltung Jeder Benutzer hat eigenes Repository > git pull Holt neuesten Stand vom Zentralrepository Kann Merge ausführen! > git commit sichert aktuellen Stand lokal kommentiert aktuellen Stand erzeugt einzigartige Commit-ID (Hexzahl) > git push kopiert neuesten Stand auf Zentralrepository 123

124 Git - Verzweigte Entwicklung 1/3 4 Verzweigung in der Entwicklung > git checkout -b B1 1 Verzweigung ab einem älteren Zustand > git checkout -b B2 2 1 Verzweigungspunkt: Branchname/ Commit-ID/ Tag Alle verfügbaren Branches auflisten > git branch -r Auf anderen Branch wechseln > git checkout BRANCH_NAME Branch zum Server hochladen > git push origin BRANCH_NAME 124 B B2 5

125 Git - Verzweigte Entwicklung 2/3 User B > git clone :Repo auf Branch origin master User A > git clone :Repo auf Branch origin master > git checkout -b B1 Branch B1 lokal erstellt Wechsel zu Branch B1 > git push origin B1 Branch auf Server laden > git pull neuer Branch entdeckt > git branch -r alle Branches auflisten > git checkout B1 Wechsel zu Branch B1 125

126 Git - Verzweigte Entwicklung 3/3 Implizite Verzweigung User A > git commit -a -m C1 User B > git commit -a -m C2 > git push C1 fehlt Impliziter Branch User B > git pull > git commit -a automatischer Merge von C1 User A > git pull A jetzt auf Stand M 126 C C1 C C1 C2 C C1 M C2

127 Git Datenaustausch 1/2 International durch verschiedene Protokolle Git-Protokoll über TCP Port 9418 SSH (verschlüsselt) HTTP HTTPS FTP rsync (Patches) 127

128 Git Datenaustausch 2/2 Verschlüsselte Kommunikation per SSH Benutzer erzeugt RSA Schlüsselpaar > ssh-keygen -t rsa -C VORNAME.NACHNAME ~/.ssh/id_rsa ~/.ssh/id_rsa.pub Private Key Public Key Publickey auf Server kopieren Bei Anmeldung wird Private Key benötigt > git clone Server verschlüsselt Rechenaufgabe mit Public Key Client entschlüsselt mit Private Key und sendet Ergebnis Server akzeptiert Client 128

129 Git - Markierte Revisionen > git tag MARKIERUNG Definiert Markierung für aktuellen Stand Markierung beschreibt z.b. Releaseversion Markierung später für Branch nutzbar > git tag listet alle Markierungen auf > man git-tag 129

130 Git - Interoperabilität Git's das auch anders? Kompatibilitätsinterface GNU Arch (git-archimport) svn (git-svn) cvs (git-cvsexportcommit, git-cvsimport git-cvsserver) Darcs (darcs-fastconvert, darcs2git) Quilt (git-quiltimport) manpages 130

131 Git - Web-Interface Nice looking access to git OpenSource Software (some) gitweb is part of git distribution ViewGit is a total PHP rewrite CGit written in C gitalist is written in Perl Existing Webhoster (one) GitHub Closed Source hoster 131

132 Chapter 2 Multitasking in Embedded Systems 132

133 Multitasking in ES What is Singletasking? What is Multitasking? Why Multitasking? Different approaches Realtime Operating Systems FreeRTOS Synchronization Example Project Debugging Multitasking Software 133

134 What is Singletasking? Do only one thing at a time Most efficient way to solve problems Applicable to every algorithm No management overhead No internal synchronization required Easy to code Busy-wait for I/O No Interrupts 134

135 Singletasking Example while (1) { if ( Byte = receivebyte() ) { // blocks! Buffer[Index++] = Byte; if ( Index >= MessageSize) { M_t* M = (M_t*) Buffer; switch (M->Type) { case mt_commanda:... case mt_commandb: default: break; } Index = 0; } } } 135

136 What is Multitasking? Aim for multiple targets Switch context often Management overhead Synchronization required Interrupts required Hard to code/ debug Implicit delays Increased memory usage Implementation difficult for many algorithms 136

137 Multitasking Example main() { int Queue = xqueuecreate(...); xtaskcreate(receive, Queue, ); xtaskcreate(process, Queue, ); } void Process(int Q) { while (1) { M = (M_t*) xqueuereceive(q); if (M) { switch (M->Type) { case mt_cmda:... case mt_cmdb:... default: break; }}}} void Receive(int Q) { char Buffer[10][100]; int Index = 0; while (1) { char* Writer = &(Buffer[Index,0]); int Remaining = MessageSize; while (Remaining > 0) { if ( Byte = readbyte() ) { // sleeps! *Writer++ = Byte; Remaining--; } xqueuesend(q, &(Buffer[Index,0]);); Index++; if (Index > 99) Index = 0; } } 137

138 Why Multitasking? Functions spawnable multiple times Eases handling of slow IO Benefits from multiple CPU-cores Only 1 central Timer required Short Interrupt Service Routines Less global variables required 138

139 No life without Multitasking! Every Embedded System needs MT MT often implemented via Interrupts Complex Service Routines Data Exchange via Global Variables Difficult to debug Typical approach: Super-Loop Periodically starts set of functions Similar to task scheduler 139

140 Different Approaches Multiprogramming Ancient mechanism for Periheral Access Realized via Terminal Stay Ready (TSR) Cooperative Multitasking Central Scheduler manages Processes Each process grants CPU to other processes Single process can block whole system Preemptive Multitasking Scheduler interrupts each process periodically Requires central Interrupt-Timer Preemptible Multitasking High priority Applications can interrupt others (OS/2, Linux, FreeRTOS) Allows faster response times 140

141 Realtime Scheduling Definition of Realtime Real-time computing means a hardware + software system that must response within a strict time constraint. Realtime constraint Hard Violation causes hazardous results Firm Infrequent violations tolerable but degrade system's quality of service Soft Usefullness of results degrade after their deadline 141

142 FreeRTOS Multitasking Scheduler Premptible Multitasking High triority tasks block low priority ones Inter Thread Communication Semaphores Queues Developed specially for Embedded Systems Open Source FreeWare with Commercial Support Ported to several μc Architectures 142

143 FreeRTOS Queues Base of inter task communication Send message Task A Task Task Interrupt Service Routine Task Call by value Reading from empty queue Function call waits until Queue is filled No CPU time is wasted during Wait 2 1 Task B FreeRTOS Queues 3 143

144 FreeRTOS - Semaphores Binary Task B Task B Task A Implemented as Queue of fixed size 1 Best suited for inter thread signaling Task B waits until Task A activates once Counting Task A Implemented as Queue of fixed size N Task A can activate B up to N times at once Data in Queue is of no interest FreeRTOS - Semaphores 144

145 FreeRTOS - Mutex best suited for Resource locking Semaphore + Priority inheritance Non recursive Task A Can be locked only once Recursive Task B thread can lock multiple times must be unlocked as often as being locked FreeRTOS - Mutexes 145

146 Multithreading with Queues Activate Extensions for Queues example on STM32-P107 > cd extensions.active/ > rm * > ln -s../extensions/makefile.free_rtos. > ln -s../extensions/makefile.example_threading_queues. > ln -s../extensions/makefile.free_rtos. > ln -s../extensions/makefile.example_leds. 146

147 Multithreading with Queues Activate Extensions for Queues example on STM32-LCD > cd extensions.active/ > rm * > ln -s../extensions/makefile.free_rtos. > ln -s../extensions/makefile.example_threading_queues. > ln -s../extensions/makefile.free_rtos. > ln -s../extensions/makefile.lcd_320x240_olimex. 147

148 Multithreading with Queues Spawning Tasks Producer threading_start() Consumer Print 148

149 Multithreading with Queues Communicate via Queues s8_t Column; s8_t Row; char Text[10]; s16_t Value; Producer LED1 6 5 PJ PJ PJ 4 3 Consumer Print enqueue/ dequeue LED2 setport()/ clrport() 149

150 Multithreading with Semaphores Activate Extensions for Semaphores example on STM32-P107 > activate.700_example_threading_semaphores_led.sh Activate Extensions for Semaphores example on STM32-LCD > activate.700_example_threading_semaphores_lcd.sh 150

151 Multithreading with Semaphores Spawning Tasks Producer1 Producer2 threading_start() Consumer1 Consumer2 Print 151

152 Multithreading with Semaphores Communicate via Semaphore enqueue/ dequeue Producer1 Data irrelevant 0-10/s 0-10/s Semaphore Producer2 setport()/ clrport() 5/s 5/s 5/s 5/s Consumer1 LED1 Consumer2 LED2 Consumer3 Consumer4 PJ PJ PJ 152 Print

153 Debugging Multitasking Software Different types of Memories Multitasking & Stacks objdump 153

154 Different types of Memories Storage RAM Heap Stack Datatypes Constants Global Variables Local Variables 154

155 Constants Stored in Flashmemory along code Automatically initialized 0x (initial value contained in binary) Peripherals Reference to value points to 0x address > 0x RAM Example: char* HelloWorld = Hello world ; 155 Hello World 0x Flash

156 Global Variables Stored in RAM Initialized by code at program start Reference to value points to address > 0x x Peripherals Example: int V = 42; 0x RAM void main() { V++; } 0x Flash 156

157 Lokal Variables 157

158 Multitasking & Stacks Stacks in Singletask Applications Stacks in Multitasking Applications Stacks in FreeRTOS Stackoverflow 158

159 Debug: objdump 159

Versionskontrollsysteme

Versionskontrollsysteme Versionskontrollsysteme Erfassung von Änderungen an Dateien Protokollierung von Änderungen Wiederherstellung alter Zustände Archivierung der gesamten Historie Koordinierung des gemeinsamen Zugriffs Verzweigung

Mehr

Revisionskontrollsystem GIT

Revisionskontrollsystem GIT Revisionskontrollsystem GIT Diplom Informatiker Gregor Rebel 1/ 19 Revisionskontrollsystem GIT v1.2 Versionskontrollsysteme Erfassung von Änderungen an Dateien Protokollierung von Änderungen Wiederherstellung

Mehr

Softwareentwicklung unter Linux

Softwareentwicklung unter Linux Softwareentwicklung unter Linux 1/ 117 Übersicht Vergleich Betriebsysteme Was ist Linux? Rechtliche Situation Das Linux Dateisystem Aufsetzen des Betriebssystems Installation von Softwarepaketen Werkzeuge

Mehr

Overview. Praktikum Embedded Systems

Overview. Praktikum Embedded Systems Overview Praktikum Embedded Systems Wintersemester 2012/2013 Software development with Linux Using Multitasking in Microcontrollers URL: http://hlb-labor.de/lehre 1 Chapter 1 Software development under

Mehr

Linux und Eclipse Einführung SysArch Tutoren WS 2008/2009 Atanas Dimitrov, Johannes Weiss

Linux und Eclipse Einführung SysArch Tutoren WS 2008/2009 Atanas Dimitrov, Johannes Weiss Linux und Eclipse Einführung SysArch Tutoren WS 2008/2009 Atanas Dimitrov, Johannes Weiss 1 Entwicklung Graphische Oberflächen Distributionen Probleme und Kritik 2 Entwicklung I Linux ist ein weitgehend

Mehr

Versionsverwaltung für die KU Betriebssysteme. Eine Einführung

Versionsverwaltung für die KU Betriebssysteme. Eine Einführung Versionsverwaltung für die KU Betriebssysteme Eine Einführung 1 1 Versionsverwaltung? Wozu? Nachvollziehbarkeit Wer hat was wann geändert Wiederherstellbarkeit kaputteditiert Wartbarkeit Verschiedene Versionen

Mehr

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck Das Linux-Dateisystem bin usr sbin lib mail / var spool boot lpd Rc0.d etc Rc.d Rc1.d Verzeichnisstruktur / Root- oder Wurzelverzeichnis, das oberste Verzeichnis im kompletten Dateisystem. /bin Programme

Mehr

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung...Seite 03 2. Einrichtung des Systems...Seite 04 3. Erzeugen eines Backup-Skripts...Seite

Mehr

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung The ToolChain Grafisches Debugging mit der QtCreator Entwicklungsumgebung geschrieben von Gregor Rebel 2014-2015 Hintergrund Neben dem textuellen Debuggen in der Textkonsole bieten moderene Entwicklungsumgebungen

Mehr

Benutzer und Rechte Teil 1, Paketverwaltung, SSH

Benutzer und Rechte Teil 1, Paketverwaltung, SSH Benutzer und Rechte Teil 1, Paketverwaltung, SSH Linux-Kurs der Unix-AG Benjamin Eberle 26. Mai 2015 Wozu verschiedene Benutzer? (1) Datenschutz mehrere Benutzer pro Rechner, insbesondere auf Server-Systemen

Mehr

Mein eigener Homeserver mit Ubuntu 10.04 LTS

Mein eigener Homeserver mit Ubuntu 10.04 LTS In diesem Tutorial zeige ich ihnen wie sie mittels einer Ubuntu Linux Installation einen eigenen Homeserver für Windows Freigaben aufsetzen (SMB/CIFS). Zunächst zur der von mir verwendeten Software- /Hardwarekombination:

Mehr

Installation mit Lizenz-Server verbinden

Installation mit Lizenz-Server verbinden Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop 1. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Der M-Lock 2005 Lizenzserver

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

git & git-flow Jens Sandmann 14.12.2013 Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31

git & git-flow Jens Sandmann 14.12.2013 Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31 git & git-flow Jens Sandmann Warpzone Münster e.v. 14.12.2013 Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31 Überblick 1 git Versionskontrolle Allgemein VCS mit git 2 git flow 3 git nutzen 4 Anhang

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

How to install freesshd

How to install freesshd Enthaltene Funktionen - Installation - Benutzer anlegen - Verbindung testen How to install freesshd 1. Installation von freesshd - Falls noch nicht vorhanden, können Sie das Freeware Programm unter folgendem

Mehr

C++ mit Eclipse & GCC unter Windows

C++ mit Eclipse & GCC unter Windows C++ mit Eclipse & GCC Seite 1 / 14 C++ mit Eclipse & GCC unter Windows Hinweise Stand 18. Okt. 2014 => GCC 4.9.1 Boost 1.56.0 Eclipse Luna V. 4.4.1 Java Version 8, Update 25 (entspricht 1.8.0_25) Achtung

Mehr

Dateisystem 1, Suchpfad, Befehlstypen

Dateisystem 1, Suchpfad, Befehlstypen Dateisystem 1, Suchpfad, Befehlstypen Linux-Kurs der Unix-AG Benjamin Eberle 8. Januar 2015 Was ist ein Dateisystem? Verwaltung von Dateien auf Datenträgern Beispiele: EXT3, EXT4, FAT, NTFS unter Linux

Mehr

Die Projek*ools. Files, Git, Tickets & Time

Die Projek*ools. Files, Git, Tickets & Time Die Projek*ools Files, Git, Tickets & Time Agenda Die Abgabe von Dokumenten: Files Das Pflegen von Software: Versionskontrolle mit Git Management von Anforderungen: Tickets Management von Zeit: Time Files

Mehr

Dateisystem 1, Suchpfad, Befehlstypen

Dateisystem 1, Suchpfad, Befehlstypen Dateisystem 1, Suchpfad, Befehlstypen Linux-Kurs der Unix-AG Andreas Teuchert 17. Juni 2014 Was ist ein Dateisystem? Verwaltung von Dateien auf Datenträgern Beispiele: EXT3, EXT4, FAT, NTFS unter Linux

Mehr

Benutzer und Rechte Teil 1

Benutzer und Rechte Teil 1 Benutzer und Rechte Teil 1 Linux-Kurs der Unix-AG Zinching Dang 19. November 2012 Wozu verschiedene Benutzer? (1) Datenschutz mehrere Benutzer pro Rechner, insbesondere auf Server-Systemen unterschiedliche

Mehr

Torsten Flatter inovex GmbH. "Git.NET" gibt's nicht?

Torsten Flatter inovex GmbH. Git.NET gibt's nicht? Torsten Flatter inovex GmbH "Git.NET" gibt's nicht? Vorstellung Torsten Flatter inovex GmbH.NET / C# seit 2004 VSS, CVS, SVN, TFS, hq, git Enterprise-Umfeld Agenda Überblick Grundlagen Einsatzbereiche

Mehr

Versionsverwaltung mit Mercurial für Einsteiger

Versionsverwaltung mit Mercurial für Einsteiger Versionsverwaltung mit Mercurial für Einsteiger Chemnitzer Linuxtage 2009 Stefan Schwarzer, SSchwarzer.com info@sschwarzer.com Chemnitz, Germany, 2009-03-14 Versionsverwaltung mit Mercurial für Einsteiger

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 git Datamining

Mehr

Installations-Dokumentation, YALG Team

Installations-Dokumentation, YALG Team Installations-Dokumentation, YALG Team Version 8.1 1 Benötigtes Material 2 Vor der Installation 3 Beginn 4 Installation 4.1 Sicherheit 4.2 Partitionierung 4.3 Paketauswahl 4.4 Paketauswahl (fein) 5 Konfiguration

Mehr

Verteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln

Verteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln Verteilte Versionskontrolle mit GIT 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln 1 über mich 32 Jahre alt Softwareentwickler bei der Firma GreenPocket in Köln Java EE Entwickler und Rails

Mehr

git Änderungen verwalten mit git

git Änderungen verwalten mit git Änderungen verwalten mit git Wie arbeitet man am besten an einem Protokoll zusammen? PeP et al. Toolbox, 2014 2 Idee: Austausch über Mails PeP et al. Toolbox, 2014 3 Mails: Probleme Risiko, dass Änderungen

Mehr

Moodle aktuell halten mit Git

Moodle aktuell halten mit Git Moodle aktuell halten mit Git 3a 1 2 3b 3c 4c Vorstellung Andreas Grabs Softwareentwickler Seit 2010 Moodle Core- Entwickler Freier Mitarbeiter eledia GmbH Inhalt Allgemeines Allgmeine Vorteile Vorteile

Mehr

https://portal.microsoftonline.com

https://portal.microsoftonline.com Sie haben nun Office über Office365 bezogen. Ihr Account wird in Kürze in dem Office365 Portal angelegt. Anschließend können Sie, wie unten beschrieben, die Software beziehen. Congratulations, you have

Mehr

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung Inhalt 1. Einleitung:... 2 2. Igel ThinClient Linux OS und Zugriff aus dem LAN... 3

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

MobiDM-App Handbuch für Windows Mobile

MobiDM-App Handbuch für Windows Mobile MobiDM-App Handbuch für Windows Mobile Dieses Handbuch beschreibt die Installation und Nutzung der MobiDM-App für Windows Mobile Version: x.x MobiDM-App Handbuch für Windows Mobile Seite 1 Inhalt 1. WILLKOMMEN

Mehr

disk2vhd Wie sichere ich meine Daten von Windows XP? Vorwort 1 Sichern der Festplatte 2

disk2vhd Wie sichere ich meine Daten von Windows XP? Vorwort 1 Sichern der Festplatte 2 disk2vhd Wie sichere ich meine Daten von Windows XP? Inhalt Thema Seite Vorwort 1 Sichern der Festplatte 2 Einbinden der Sicherung als Laufwerk für Windows Vista & Windows 7 3 Einbinden der Sicherung als

Mehr

1 Vorraussetzungen. 2 Installiere Eclipse. FS 2015 Herausgabe: 2015-02-18 Dr. A. L. Schüpbach, D. Sidler, Z. István Departement Informatik, ETH Zurich

1 Vorraussetzungen. 2 Installiere Eclipse. FS 2015 Herausgabe: 2015-02-18 Dr. A. L. Schüpbach, D. Sidler, Z. István Departement Informatik, ETH Zurich 252-0842-00L Programmieren und Problemlösen Eclipse Tutorial FS 2015 Herausgabe: 2015-02-18 Dr. A. L. Schüpbach, D. Sidler, Z. István Departement Informatik, ETH Zurich 1 Vorraussetzungen Falls Java noch

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

MetaQuotes Empfehlungen zum Gebrauch von

MetaQuotes Empfehlungen zum Gebrauch von MetaQuotes Empfehlungen zum Gebrauch von MetaTrader 4 auf Mac OS Auch wenn viele kommerzielle Angebote im Internet existieren, so hat sich MetaQuotes, der Entwickler von MetaTrader 4, dazu entschieden

Mehr

SFTP SCP - Synology Wiki

SFTP SCP - Synology Wiki 1 of 6 25.07.2009 07:43 SFTP SCP Aus Synology Wiki Inhaltsverzeichnis 1 Einleitung 1.1 Grundsätzliches 2 Voraussetzungen 2.1 Allgemein 2.2 für SFTP und SCP 3 Installation 3.1 Welche openssl Version 3.2

Mehr

cs106 Informatiklabor Teil 1: Java-Installation

cs106 Informatiklabor Teil 1: Java-Installation Herbstsemester 2009 cs106 Informatiklabor Teil 1: Java-Installation Florian Zeller Vorgehen und Ziele Wöchentlich eine Übung Unterstützte Bearbeitung während den Übungsstunden Austausch mit älteren Semestern

Mehr

Betriebssystem Windows - SSH Secure Shell Client

Betriebssystem Windows - SSH Secure Shell Client Betriebssystem Windows - SSH Secure Shell Client Betriebssystem Windows - SSH Secure Shell Client... 1 Download... 2 Installation... 2 Funktionen... 3 Verbindung aufbauen... 3 Verbindung trennen... 4 Profile...

Mehr

Von SVN zu Git. Daniel Willmann <daniel@totalueberwachung.de> 2011-10-18 cbna

Von SVN zu Git. Daniel Willmann <daniel@totalueberwachung.de> 2011-10-18 cbna Von SVN zu Git Daniel Willmann 2011-10-18 cbna Inhalt Einführung Git für SVN Benutzer Weitergehende Konzepte Zusammenfassung Daniel Willmann Von SVN zu Git 2 Über den Vortragenden

Mehr

Herbstsemester 2009. cs106 Informatiklabor Teil 4: Partitionierung & Linux Installation. P.Huber@stud.unibas.ch

Herbstsemester 2009. cs106 Informatiklabor Teil 4: Partitionierung & Linux Installation. P.Huber@stud.unibas.ch Herbstsemester 2009 cs106 Informatiklabor Teil 4: Partitionierung & Linux Installation P.Huber@stud.unibas.ch Geschichte 1983 rief Richard Stallmann das GNU-Projekt ins Leben Ziel: Vollständig freies UNIX-ähnliches

Mehr

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1

Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1 Laufwerke unter Linux - Festplatten - - USB Sticks - September 2010 Oliver Werner Linuxgrundlagen 1 Wie wird auf Festplatten zugegriffen? Es gibt nur einen Verzeichnisbaum, siehe Verzeichnisse Es gibt

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

Windows Server 2012 R2 Essentials & Hyper-V

Windows Server 2012 R2 Essentials & Hyper-V erklärt: Windows Server 2012 R2 Essentials & Hyper-V Windows Server 2012 R2 Essentials bietet gegenüber der Vorgängerversion die Möglichkeit, mit den Boardmitteln den Windows Server 2012 R2 Essentials

Mehr

Anwenderhandbuch. ipoint - Server

Anwenderhandbuch. ipoint - Server Anwenderhandbuch ipoint - Server Inhaltsverzeichnis 1 ÜBERWACHUNG DES SERVERPROZESSES... 3 1.1 DEN SERVER STARTEN... 3 1.2 DEN SERVER ANHALTEN/BEENDEN... 6 2 DEN SERVER KONFIGURIEREN... 8 3 FIREWALL...11

Mehr

Linux - a bit advanced

Linux - a bit advanced Linux - a bit advanced Überblick Rechteverwaltung Dateisystem Shell-Programmierung Remote login Paketsystem Alternativen-System Rechte Drei Benutzerklassen Owner/User Group Others Drei Rechte Ausführen

Mehr

Konfigurationsdateien mit Git verwalten

Konfigurationsdateien mit Git verwalten Konfigurationsdateien mit Git verwalten Chemnitzer Linuxtage 2011 Julius Plenz 19. März 2011 Veröffentlicht unter der CreativeCommons-Lizenz (By, Nc, Sa) http://chemnitzer.linux-tage.de/2011/vortraege/782

Mehr

Linux im Studium. Serbest Hammade / Resh, Christian Sturm. Do, 15. November 2012

Linux im Studium. Serbest Hammade / Resh, Christian Sturm. Do, 15. November 2012 Linux im Studium Serbest Hammade / Resh, Christian Sturm Do, 15. November 2012 Linux Aufbau von Linux Distributionen Grafische Desktopumgebungen HFU & Linux Instant Messaging via Jabber (XMPP) HFU & Jabber

Mehr

Hex Datei mit Atmel Studio 6 erstellen

Hex Datei mit Atmel Studio 6 erstellen Hex Datei mit Atmel Studio 6 erstellen Es werden generell keine Atmel Studio Dateien ins Repository geladen, da jeder seine Dateien an anderen Orten liegen hat und weil nicht jeder das Atmel Studio 6 benutzt.

Mehr

Softwareupdate-Anleitung // AC Porty L Netzteileinschub

Softwareupdate-Anleitung // AC Porty L Netzteileinschub 1 Softwareupdate-Anleitung // AC Porty L Netzteileinschub Softwareupdate-Anleitung // AC Porty L Netzteileinschub HENSEL-VISIT GmbH & Co. KG Robert-Bunsen-Str. 3 D-97076 Würzburg-Lengfeld GERMANY Tel./Phone:

Mehr

Open Source. Hendrik Ebbers 2015

Open Source. Hendrik Ebbers 2015 Open Source Hendrik Ebbers 2015 Open Source About me Hendrik Ebbers Lead of JUG Dortmund Java Architect @ Canoo Engineering AG JavaOne Rockstar, Java Expert Group Member Speaker, blogger & author Engineering

Mehr

Oracle VirtualBox. Zum Herunterladen für alle Betriebssysteme gibt s die VirtualBox auf: https://www.virtualbox.org/

Oracle VirtualBox. Zum Herunterladen für alle Betriebssysteme gibt s die VirtualBox auf: https://www.virtualbox.org/ Für Vieltester von Betriebssystemen ein wohl einzigartiges Tool. Aber auch für diejenigen die Linux am Rechner haben und vielleicht doch für den einen oder anderen Fall Windows benötigen genau das richtige

Mehr

Python SVN-Revision 12

Python SVN-Revision 12 Python SVN-Revision 12 Uwe Ziegenhagen 7. Januar 2012 Vorwort Dieses Skript erhebt keinen Anspruch auf Vollständigkeit oder Richtigkeit. Es wird geschrieben, um mir als Gedächtnisstütze für den Umgang

Mehr

Umbenennen eines NetWorker 7.x Servers (UNIX/ Linux)

Umbenennen eines NetWorker 7.x Servers (UNIX/ Linux) NetWorker - Allgemein Tip #293, Seite 1/6 Umbenennen eines NetWorker 7.x Servers (UNIX/ Linux) Dies wird offiziell nicht von unterstützt!!! Sie werden also hierfür keinerlei Support erhalten. Wenn man

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

Tutorial: Erstellen einer vollwertigen XP Home CD aus der EEE 901 Recover DVD

Tutorial: Erstellen einer vollwertigen XP Home CD aus der EEE 901 Recover DVD Tutorial: Erstellen einer vollwertigen XP Home CD aus der EEE 901 Recover DVD Von SpecialK für www.eee-pc.de Stand:Version 1.0 vom 25.08.2008 Vorwort: Mit Hilfe dieses Tutorials wird aus der beim EEE 901

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

Entwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014

Entwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014 Entwicklungsumgebungen Packer, Vagrant, Puppet Alexander Pacnik Mannheim, 10.11.2014 inovex... über inovex und den Referenten 2 Entwicklungsumgebungen... Übersicht Einführung Packer Konfiguration Packer

Mehr

WinCVS Version 1.3. Voraussetzung. Frank Grimm fgr@micenet.de http://www.micenet.de. Mario Rasser mario@rasser-online.de http://www.rasser-online.

WinCVS Version 1.3. Voraussetzung. Frank Grimm fgr@micenet.de http://www.micenet.de. Mario Rasser mario@rasser-online.de http://www.rasser-online. WinCVS Version 1.3 Frank Grimm fgr@micenet.de http://www.micenet.de Mario Rasser mario@rasser-online.de http://www.rasser-online.de Voraussetzung 1. Installation von Python (Version >= 2.1) Download von

Mehr

Workshop: Eigenes Image ohne VMware-Programme erstellen

Workshop: Eigenes Image ohne VMware-Programme erstellen Workshop: Eigenes Image ohne VMware-Programme erstellen Normalerweise sind zum Erstellen neuer, kompatibler Images VMware-Programme wie die Workstation, der ESX-Server oder VMware ACE notwendig. Die Community

Mehr

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren 1 32- oder 64-bit Windows feststellen In den nachfolgenden Schritten ist es nötig, dass Sie wissen, ob Sie

Mehr

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

IBM Software Demos Tivoli Provisioning Manager for OS Deployment Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,

Mehr

Aufbau einer Testumgebung mit VMware Server

Aufbau einer Testumgebung mit VMware Server Aufbau einer Testumgebung mit VMware Server 1. Download des kostenlosen VMware Servers / Registrierung... 2 2. Installation der Software... 2 2.1 VMware Server Windows client package... 3 3. Einrichten

Mehr

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

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

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

Netbeans 6.1 mit SVN Server unter Debian etch mit Windows Clients

Netbeans 6.1 mit SVN Server unter Debian etch mit Windows Clients Netbeans 6.1 mit SVN Server unter Debian etch mit Windows Clients 1.1 JAVA 6 Installieren sudo gedit /etc/apt/sources.list und folgende zeilen hinzufügen deb http://www.backports.org/debian etch-backports

Mehr

Der Adapter Z250I / Z270I lässt sich auf folgenden Betriebssystemen installieren:

Der Adapter Z250I / Z270I lässt sich auf folgenden Betriebssystemen installieren: Installationshinweise Z250I / Z270I Adapter IR USB Installation hints Z250I / Z270I Adapter IR USB 06/07 (Laden Sie den Treiber vom WEB, entpacken Sie ihn in ein leeres Verzeichnis und geben Sie dieses

Mehr

Installation DV4mini ausgehend von einem frisch installierten System:

Installation DV4mini ausgehend von einem frisch installierten System: Installation DV4mini ausgehend von einem frisch installierten System: DJ0ABR/6.08.2015 Ubuntu 12.04 LTS: 1. Image Ubuntu 12.04 LTS auf dem PC installieren. Zum Testen habe ich die Desktop Version von dieser

Mehr

NEWSLETTER. FileDirector Version 2.5 Novelties. Filing system designer. Filing system in WinClient

NEWSLETTER. FileDirector Version 2.5 Novelties. Filing system designer. Filing system in WinClient Filing system designer FileDirector Version 2.5 Novelties FileDirector offers an easy way to design the filing system in WinClient. The filing system provides an Explorer-like structure in WinClient. The

Mehr

Embedded So)ware. Einrichten der Arbeitsumgebung

Embedded So)ware. Einrichten der Arbeitsumgebung Embedded So)ware Einrichten der Arbeitsumgebung Inhaltsangabe 1. Was ist installiert 2. Was ist zu tun? Einrichten des Raspi! Cross Compiler auf den Arbeitsplatzrechner installieren! Raspi einbinden! Plugin

Mehr

Einführung in Subversion

Einführung in Subversion Einführung in Subversion Benjamin Seppke AB KOGS Dept. Informatik Universität Hamburg Was ist Subversion? Ein Server-basiertes Versions-Verwaltungs- System Ermöglicht mehreren Benutzern die gemeinsame

Mehr

SSH Authentifizierung über Public Key

SSH Authentifizierung über Public Key SSH Authentifizierung über Public Key Diese Dokumentation beschreibt die Vorgehensweise, wie man den Zugang zu einem SSH Server mit der Authentifizierung über öffentliche Schlüssel realisiert. Wer einen

Mehr

Installation Linux agorum core Version 6.4.5

Installation Linux agorum core Version 6.4.5 Installation Linux agorum core Version 6.4.5 Copyright 2008-2010, agorum Software GmbH 01.10.2010, Dokumentenversion 6.4.5 Kapitel 1 Grundinstallation Linux 1.1 Allgemein Normalerweise sollte jedes Linux-basierte

Mehr

Installation und Aktualisierung der VMware-Tools

Installation und Aktualisierung der VMware-Tools Installation und Aktualisierung der VMware-Tools [Bei weiteren Fragen wenden Sie sich bitte per Mail an vmwareadmin@uni-trier.de] Inhalt Installation von VMware-Tools... 2 Ubuntu-Linux... 2 Installation

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

TeamSpeak3 Einrichten

TeamSpeak3 Einrichten TeamSpeak3 Einrichten Version 1.0.3 24. April 2012 StreamPlus UG Es ist untersagt dieses Dokument ohne eine schriftliche Genehmigung der StreamPlus UG vollständig oder auszugsweise zu reproduzieren, vervielfältigen

Mehr

Linux Cafe 2013 11 11. Referent: Bernd Strößenreuther

Linux Cafe 2013 11 11. Referent: Bernd Strößenreuther Versionsverwaltung mit Git Linux Cafe 2013 11 11 Referent: Bernd Strößenreuther mailto:linux cafe@stroessenreuther.net Lizenz Sie dürfen dieses Dokument verwenden unter den Bedingungen der Creative Commons

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

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering und Optimierungsanwendungen in der Thermodynamik Software-Engineering 5 Programmentwicklung und Debuggen mit IDE und CASE-Tools Übungen Prof. Dr. Rolf Dornberger OPTSWE_SWE: 5 Programmentwicklung

Mehr

GNU/Linux für Neulinge

GNU/Linux für Neulinge GNU/Linux für Neulinge UnFUG SS13 Florian Kreidler 18. April 2013 Florian Kreidler GNU/Linux für Neulinge 1 / 21 Agenda 1 Historie Warum Linux? Einsatzgebiete 2 3 Editoren Virtualisierung Chatmöglichkeiten

Mehr

Praktikum Ingenieurinformatik (PI)

Praktikum Ingenieurinformatik (PI) Praktikum Ingenieurinformatik (PI) Verteilte Versionskontrolle mit Git und Github Björn Meyer Fachgebiet Technische Informatik 1 Agenda Einleitung Motivation Versionskontrolle Ansätze Git Funktionen Arbeiten

Mehr

Readme-USB DIGSI V 4.82

Readme-USB DIGSI V 4.82 DIGSI V 4.82 Sehr geehrter Kunde, der USB-Treiber für SIPROTEC-Geräte erlaubt Ihnen, mit den SIPROTEC Geräten 7SJ80/7SK80 über USB zu kommunizieren. Zur Installation oder Aktualisierung des USB-Treibers

Mehr

How to install ubuntu by crypted file system

How to install ubuntu by crypted file system How to install ubuntu by crypted file system Enthaltene Funktionen: - Installation eines verschlüsselten Ubuntu Systems Voraussetzung: - Internetverbindung - Iso-Image Download unter: http://wiki.ubuntuusers.de/downloads/oneiric_ocelot

Mehr

Teamschool Installation/ Konvertierungsanleitung

Teamschool Installation/ Konvertierungsanleitung Teamschool Installation/ Konvertierungsanleitung 1. Ordner c:\inetsrv\wwwroot\teamschool anlegen 2. CD Inhalt nach c:\inetsrv\wwwroot\teamschool kopieren 3. SQL.ini in c:\inetsrv\wwwroot\teamschool\anzeigen

Mehr

Patch Management mit

Patch Management mit Patch Management mit Installation von Hotfixes & Patches Inhaltsverzeichnis dieses Dokuments Einleitung...3 Wie man einen Patch installiert...4 Patch Installation unter UliCMS 7.x.x bis 8.x.x...4 Patch

Mehr

Remote Control - LeCroy Oszilloskop WaveSurfer 3000 mit LabVIEW via VICP LAN-Schnittstelle

Remote Control - LeCroy Oszilloskop WaveSurfer 3000 mit LabVIEW via VICP LAN-Schnittstelle Remote Control - LeCroy Oszilloskop WaveSurfer 3000 mit LabVIEW via VICP LAN-Schnittstelle Damit LeCroy Oszilloskope der Serie WaveSurfer 3000 mit LabVIEW via LAN (VICP) gesteuert werden können werden

Mehr

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS CVS Maik Zemann CVS (Concurrent Versions System) The open standard for version control 1 Gliederung Gliederung Was ist CVS? Motivation? Konzept von CVS Die wichtigsten Befehle Merging Logging im Quelltext

Mehr

Im Folgenden wird die Konfiguration der DIME Tools erläutert. Dazu zählen die Dienste TFTP Server, Time Server, Syslog Daemon und BootP Server.

Im Folgenden wird die Konfiguration der DIME Tools erläutert. Dazu zählen die Dienste TFTP Server, Time Server, Syslog Daemon und BootP Server. 1. DIME Tools 1.1 Einleitung Im Folgenden wird die Konfiguration der DIME Tools erläutert. Dazu zählen die Dienste TFTP Server, Time Server, Syslog Daemon und BootP Server. 1.2 Voraussetzungen Folgende

Mehr

In 15 Schritten zum mobilen PC mit Paragon Drive Copy 11 und VMware Player

In 15 Schritten zum mobilen PC mit Paragon Drive Copy 11 und VMware Player PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Schritthan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

Mehr

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme Grundkurs C++ Buildsysteme Buildsysteme Beispielhaftes Übersetzungsszenario: Verzeichnis tutorial7/ main.cpp, lcdrange.cpp, lcdrange.h *.cpp Kompilieren *.o *.h Grundkurs C++ 2 Headerdateien //blackbox.h

Mehr

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse 1. Einführung 1.1 Eclipse Die Eclipse ist eine kostenlose integrierte Entwicklungsumgebung oder auch IDE genannt, (Abkürzung IDE, engl. Integrated development enviroment). Sie ist eine grafische Benutzeroberfläche

Mehr

Anleitung zum Prüfen von WebDAV

Anleitung zum Prüfen von WebDAV Anleitung zum Prüfen von WebDAV (BDRS Version 8.010.006 oder höher) Dieses Merkblatt beschreibt, wie Sie Ihr System auf die Verwendung von WebDAV überprüfen können. 1. Was ist WebDAV? Bei der Nutzung des

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

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn michael.kuhn@informatik.uni-hamburg.de

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn michael.kuhn@informatik.uni-hamburg.de Git Fast Version Control System Michael Kuhn michael.kuhn@informatik.uni-hamburg.de Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg 2011-09-28 1 / 16 1 Einführung Überblick

Mehr

X Anmelden am System. X System herunterfahren. X Grundlegendes zur Shell. X Das Hilfesystem. X Dateioperationen. X Bewegen im Verzeichnisbaum

X Anmelden am System. X System herunterfahren. X Grundlegendes zur Shell. X Das Hilfesystem. X Dateioperationen. X Bewegen im Verzeichnisbaum /LQX[*UXQGODJHQ, (LQI KUXQJLQGLH6KHOO 'DWHLHQXQG 9HU]HLFKQLVVH :DVLVW]XWXQ" X Anmelden am System X System herunterfahren X Grundlegendes zur Shell X Das Hilfesystem X Dateioperationen X Bewegen im Verzeichnisbaum

Mehr

Installation Messerli MySQL auf Linux

Installation Messerli MySQL auf Linux Installation Messerli MySQL auf Linux Einleitung Grundsätzlich wird bei der Installation der Messerli Software auf einem Linux-Server wie folgt vorgegangen: 1. Angepasster RMI-MySQL Server wird auf Linux

Mehr