Windows-Treiber-Programmierer

Profil Foto
Verfügbarkeit einsehen
National
de  |  en
auf Anfrage
12459 Berlin
13.10.2018

Kurzvorstellung

Windows-Treiber-Programmierer

Ich biete

IT, Entwicklung
  • Windows 10
  • Embedded Entwicklung / hardwarenahe Entwicklung
  • Embedded Systems
  • Microsoft Windows (allg.)

Projekt‐ & Berufserfahrung

Windows-Treiber-Programmierer
Kundenname anonymisiert, Erfurt
4/2017 – 3/2018 (1 Jahr)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

4/2017 – 3/2018

Tätigkeitsbeschreibung

Linux-Treiber analysieren und zu Treibern für Windows 7, 8 und Windows 10 portieren

Zur Kommunikation mit einer neuen Generation von ASIC-Prototyp-Testsystemen waren zwei vorhandene sehr komplexe Linux-Treiber zu analysieren und nach Windows zu portieren. Die Kommunikation erfolgt zum einen über PCI-Express und zum anderen über USB3. Die neuen WDF-Treiber unterstützen die Prozessoren x86 und x64 sowie die Windows-Systeme 7, 8 und 10.

Eingesetzte Qualifikationen

Windows 10


Windows-Treiber-Programmierer
Kundenname anonymisiert, Augsburg
7/2016 – 3/2017 (9 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

7/2016 – 3/2017

Tätigkeitsbeschreibung

Windows-Treiber für embedded PC-Boards analysieren und neu implementieren

Eine vorhandener sehr komplexer Windows-Treiber für die Hardware-Zugriffe auf eine Reihe von Embedded-PC-Platinen wurde ausführlich analysiert. Die Neuimplementierung in Form mehrerer WDF-Kernel-Treiber wurde spezifiziert und umgesetzt. Die neuen Windows-Treiber unterstützen die Prozessoren x86, x64, ARM und ARM64, die Windows-Systeme 7, 8 und 10 sowie die Windows-10-Plattformen Desktop und Universal (IoT). Dabei ging es u.a. um Funktionen zur Hardware-Überwachung (Temperaturen, Spannungen), zur Hardware-Ansteuerung (Watchdog, GPIOs) sowie zur Energie-Verwaltung (ACPI, SM-Bus).

Eingesetzte Qualifikationen

Embedded Entwicklung / hardwarenahe Entwicklung, Embedded Systems


Windows-Treiber-Programmierer
Kundenname anonymisiert, Mannheim
5/2016 – 6/2016 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

5/2016 – 6/2016

Tätigkeitsbeschreibung

WDF-Treiber für ISA-Karte implementiert
Ein vorhandener x86-NT-Legacy-Treiber für eine ISA-Karte in einem medizinischen Analyse-Gerät wurde zu einem WDF-Treiber für die 64-Bit-Plattformen von Windows 7 portiert.

Eingesetzte Qualifikationen

Embedded Entwicklung / hardwarenahe Entwicklung


Treiber-Programmierer
*, Raum Hamburg
4/2016 – 4/2016 (1 Monat)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

4/2016 – 4/2016

Tätigkeitsbeschreibung

X86-WDF-Treiber für Arcnet-Karten nach x64 portiert
Ein vorhandener x86.WDF-Treiber für eine Fdamilie von Arcnet-Karten (als PCI-Karte und als PC104-Baugruppe) wurde für die 64-Bit-Plattformen von Windows 7, 8 und 10 portiert.

Eingesetzte Qualifikationen

Kernel Programmierung, Windows 8, Windows 7, C++


Treiber-Programmierer
*, Bremen
3/2016 – 3/2016 (1 Monat)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

3/2016 – 3/2016

Tätigkeitsbeschreibung

Fehlerkorrektur in einem WDF-Treiber für eine PCI-Karte
In einem WDF-Treiber für eine PCI-Multifunktionskarte für Windows 7 und Windows 10 (x86 + x64) wurden die Synchronisation zwischen der ISR, den DPCs und den Treiber-Routinen auf 'passive level' optimiert.

Eingesetzte Qualifikationen

Kernel Programmierung, Windows 7, Microsoft Windows (allg.), C++


Treiber-Programmierer
*, Karlsruhe
2/2016 – 2/2016 (1 Monat)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

2/2016 – 2/2016

Tätigkeitsbeschreibung

Fehlerkorrektur in einem WDM-Treiber für eine PCI-Karte
Für eine PCI-Karte wurde ein WDM-Treiber analysiert. Ein Fehler, der auf Multicore-Umgebungen dazu führte, daß Interrupts nicht behandelt wurden, wurde korrigiert.

Eingesetzte Qualifikationen

Kernel Programmierung, Microsoft Windows (allg.), C++


Treiber-Programmierer
*, Bremen
11/2015 – 1/2016 (3 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

11/2015 – 1/2016

Tätigkeitsbeschreibung

WDM-Treiber für PCI-Karten-Familie für Windows 7 x64
Für eine PCI-Karte wurde auf Basis eines NT-Legacy-Treibers ein WDM-Treiber für Windows 7 x64 entwickelt. Für die 32 Baugruppen der PCI-Karte wurden innerhalb des Treibers separate Child-Devices angelegt. Die Karte dient der Erfassung, Verarbeitung und Weitergabe von Radardaten.

Eingesetzte Qualifikationen

Kernel Programmierung, Windows 7, C++


Treiber-Programmierer
*, Berlin
9/2015 – 10/2015 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

9/2015 – 10/2015

Tätigkeitsbeschreibung

Generischer Treiber für IndustriePacks (IPs) in cPCI-Crates
Für unterschiedliche IPs (Analog-, Digital- Ein- und Ausgabe, Kommunikation, …), die auf cPCI-Träger-Crates verschiedener Hersteller montiert sind, wurde ein einheitlicher WDF-Treiber für Windows 7 x86 und x64 entwickelt. Grundlage war ein vorhandener NT-Legacy-Treiber sowie Linux-Treiber im Quellcode. Die IPs dienen der Ansteuerung von Hochleistungs-Laser-Anwendungen.

Eingesetzte Qualifikationen

Kernel Programmierung, Windows 7, C++


Treiber-Programmierer
*, Bremen
6/2015 – 8/2015 (3 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

6/2015 – 8/2015

Tätigkeitsbeschreibung

WDF-Treiber für PCI-Karte für Windows 7 x64
Für eine sehr komplexe Multifunktions-PCI-Karte mit eigenem Prozessor, die mehrere Kommunikations-Schnitt¬stellen sowie analoge und digitale Ein- und Ausgänge besitzt, wurde auf Basis eines WDM-Treibers ein WDF-Treiber für Windows 7 x64 entwickelt. Für die einzelnen Baugruppen der PCI-Karte wurden innerhalb des Treibers separate Child-Devices angelegt. Die Karte dient der Steuerung und dem Datenaustausch mit einem Unterwasserfahrzeug.

Eingesetzte Qualifikationen

Kernel Programmierung, Windows 7, C++


Anwendungs-Entwickler
*, Berlin
4/2015 – 5/2015 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

4/2015 – 5/2015

Tätigkeitsbeschreibung

Ansteuerung von zwei Testplätzen im Medizin-Bereich
Herzschrittmacher-Eletroden werden hinsichtlich mehrerer Eigenschaften getestet. Bei einem Berliner Hersteller wurden zwei Testplätze neu gestaltet. Dazu wurden zwei Windows-Appllikationen programmiert, die die verwendeten Hardware-Baugruppen wie Hochspannungs-Netzteile und IGBTs ansteuern bzw. überwachen sowie verschiedene Sensoren abfragen. Die Kommunikation erfolgt über Ethernet, GPIB, digitale I/Os sowie über serielle Schnitsstellen.

Eingesetzte Qualifikationen

Windows XP, Visual C++


Treiber-Programmierer
*, München
12/2014 – 3/2015 (4 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

12/2014 – 3/2015

Tätigkeitsbeschreibung

WDF-Treiber für eine ISA-Karte für Windows 7 x86 und x64
Auf Basis eines WDM-Treibers wurde ein WDF-Treiber für eine ISA-Karte für Windows 7 entwickelt. Die ISA-Karte dient der Ansteuerung von Lasern in 3D-Druck-Maschinen.

Eingesetzte Qualifikationen

Windows 7, Visual C++


Treiber-Programmierer
*, München
10/2014 – 11/2014 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

10/2014 – 11/2014

Tätigkeitsbeschreibung

Portieren, Signieren und Testen von NDIS-Treibern für Windows 7
Zwei NDIS-Protokoll-Treiber wurden für Windows 7 (x86 und x64) angepaßt, signiert und mit verschiedenen Netzwerk-Adaptern getestet.

Eingesetzte Qualifikationen

Windows 7


Treiber-Programmierer
xxx, Raum Stuttgart
8/2014 – 9/2014 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

8/2014 – 9/2014

Tätigkeitsbeschreibung

Fehlersuche in einem 64-Bit-USB-Treiber unter Windows 8
In einem USB-Client-Treiber unter Windows 8 x64 wurden Fehler korrigiert und die Geschwindigkeit optimiert. Der Treiber dient der Kommunikation mit S7-SPS-Geräten.

Eingesetzte Qualifikationen

Windows 8


Applikations-Programmierer
*, Berlin
7/2014 – 8/2014 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

7/2014 – 8/2014

Tätigkeitsbeschreibung

Ansteuerung von zwei Testplätzen im Medizin-Bereich
Herzschrittmacher-Eletroden werden hinsichtlich mehrerer Eigenschaften getestet. Bei einem Berliner Hersteller wurden zwei Testplätze neu gestaltet. Dazu wurden zwei Windows-Appllikationen programmiert, die die verwendeten Hardware-Baugruppen wie Hochspannungs-Netzteile und IGBTs ansteuern bzw. überwachen sowie verschiedene Sensoren abfragen. Die Kommunikation erfolgt über Ethernet, GPIB, digitale I/Os sowie über serielle Schnitsstellen.

Eingesetzte Qualifikationen

Windows 7, C++


Programmierer
*, Hannover
1/2014 – 6/2014 (6 Monate)
Maschinen-, Geräte- und Komponentenbau
Tätigkeitszeitraum

1/2014 – 6/2014

Tätigkeitsbeschreibung

Programmieren von Embedded-Treibern und -Applikationen

Für einen Anbieter von Ticketing-Lösungen übernahm ich unterschiedliche Aufgaben, z.B.:
- Programmieren von Test-Applikationen unter Windows CE (Progr.-sprache C)
- Fehlersuche und Erweiterung von Windows-Treibern für die Kommunikation mit Ticket-Druckern (in C)
- Portierung eines WDF-Treibers für eine PCI-Karte nach Windows 7 x64 (in C++)
- Erweiterung eines Windows7-USB-Treibers (in C++)
- Fehlerkorrektur und Optimierung eines eigenen Betriebssystem-Kerns für eine ARM-Cortex-M3-basierte µC-Baugruppe (in C)
- Anpassung einer Applikation zur Installation von Windows-Treibern (in C++)
- Erweitern einer Applikation zur Bedienung einer Servicestation für Münz-Restgeldspeicher (in C#).

Eingesetzte Qualifikationen

Kernel Programmierung, Windows CE, Microsoft Windows (allg.), Visual C++, C#, C++


Programmierer
., Raum Karlsruhe
12/2013 – 12/2013 (1 Monat)
Telekommunikation
Tätigkeitszeitraum

12/2013 – 12/2013

Tätigkeitsbeschreibung

64-Bit-Treiber für eine PCI-Karte für Windows 7

Auf Basis eines vorhandenen 32-Bit-WDM-Treibers wurde ein 64-Bit-Treiber für Windows 7 entwickelt. Die PCI-Karte dient der Übertragung von Meßdaten zur Analyse von Öberflächen.


Programmierer
., Berlin
10/2013 – 10/2013 (1 Monat)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

10/2013 – 10/2013

Tätigkeitsbeschreibung

Erweitern der Software für eine Meßvorrichtung

Eine Meßvorrichtung dient dem automatischen Dauertest von Widerständen von Herzschrittmacher-Elektroden. Die µC-Basierte Firmware sowie die grafische Windows-Bedienoberfläche wurden um neue Konfigurations-Einstellungen und Test-Szenarien erweitert.


Programmierer
., Augsburg
8/2013 – 9/2013 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

8/2013 – 9/2013

Tätigkeitsbeschreibung

Erweitern/Optimieren von Netzwerk-Applikationen- und Treibern

Über Gigabit-Ethernet werden Bilddaten unter Windows 7 an virtuelle Monitore gesendet. Dazu wurden sowohl auf Anwendungs- als auch Kernel-Ebene die beteiligten Komponenten optimiert. Es wurden verschiedene Übertragungs-Protokolle (TCP, UDP/TCP, Reliable Blast UDP) implementiert. Die Die Paket-Aufbereitung wurde parallelisiert. Verschiedene Komprimierungs-Varianten wurden getestet.


Programmierer
., München
2/2013 – 6/2013 (5 Monate)
Telekommunikation
Tätigkeitszeitraum

2/2013 – 6/2013

Tätigkeitsbeschreibung

Erweitern eines WDF-Treibers für eine PCI-Karte

Ein vorhandener 32-Bit-WDF-Treiber für Windows 7 für eine PCI-Baugruppe wurde angepaßt und erweitert. Der Treiber arbeitet als Funktionstreiber für mehrere Ein- und Ausgabe-Kanäle, über die per Scatter-Gather-DMA Daten transportiert werden. Außerdem ist der Treiber auch Bustreiber für einen Netzwerk-Kanal, der damit in den Windows-NDIS-Stack eingereiht wird. Die PCI-Baugruppe gehört zu einem Gerät zur Analyse von digitalen Videosignalen, das Transport-Ströme sowohl einlesen als auch ausgeben kann.


Programmierer
., Raum Heilbronn
1/2013 – 1/2013 (1 Monat)
Logistikdienstleister
Tätigkeitszeitraum

1/2013 – 1/2013

Tätigkeitsbeschreibung

Signieren eines 64-Bit-Treibers für ein USB-Gerät

Das Treiber-Paket eines 64-Bit-Treiber für ein USB-Gerät wurde mit einer digitalen Signatur versehen.


Programmierer
., Berlin
10/2012 – 1/2013 (4 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

10/2012 – 1/2013

Tätigkeitsbeschreibung

Ansteuerung einer Meßvorrichtung zum Bestimmen einer Impedanz

Es wurde ein Meßplatz eingerichtet, an dem die Impedanz einer Herzschrittmacher-Elektrode bestimmt werden soll. Für diesen Meßplatz wurde die Ansteuerung der Meßvorrichtungen einschließlich der grafischen Bedienoberfläche programmiert.


Programmierer
., Raum Regensburg
9/2012 – 10/2012 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

9/2012 – 10/2012

Tätigkeitsbeschreibung

64-Bit-Treiber für ein USB-Gerät (2012, 1 Monat, )
Für eine USB-Platine wurde ein vorhandener 32-Bit-WDM-Treiber zu einem 64-Bit-Treiber für Windows 7 portiert. Die USB-Platine dient der Ansteuerung von Kassen-Schubladen.


Programmierer
., Hamburg
6/2012 – 8/2012 (3 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

6/2012 – 8/2012

Tätigkeitsbeschreibung

32- und 64-Bit-WDF-Treiber für eine PCIe-Karte (2012, 3 Monate)

Für eine Familie von Highspeed-Meßkarten für den PCI-Express-Bus wurde ein WDF-Treiber für die 32- und 64-Bit-Windows-Plattformen entwickelt. Per Scatter-Gather-DMA werden große Mengen an Meßdaten ein- bzw. ausgegeben.


Programmierer
., Mönchengladbach
4/2012 – 5/2012 (2 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

4/2012 – 5/2012

Tätigkeitsbeschreibung

64-Bit-WDF-Treiber für eine PCI-Karte mit 8 COM-Ports

Auf Basis eines vorhandenen 32-Bit-Legacy-NT-Treibers wurde ein 64-Bit-WDF-Treiber für Windows 7 entwickelt. Die PCI-Karte mit 8 COM-Ports wurde als Multifunktions-Gerät konfiguriert, die Ressourcen auf die Child-Devices aufgeteilt. Der WDF-Treiber kann in unterschiedlichen Varianten jeweils einer der 8 COM-Schnittstellen als Funktions-Treiber zugeordnet werden.


Programmierer
???, Raum München
1/2012 – 3/2012 (3 Monate)
High-Tech- und Elektroindustrie
Tätigkeitszeitraum

1/2012 – 3/2012

Tätigkeitsbeschreibung

NDIS-Treiber für GigEVision-kompatible Kameras

Zwei vorhandene NDIS-Treiber - ein NDIS6-Filtertreiber für Windows7 (x86 + x64) und NDIS5-Intermediate-Treiber für Windows XP (x86 + x64) - wurden korrigiert, umstrukturiert und erweitert. Der Mechanismus zum Anfordern verlorengegangener Datenpakete wurde neu gestaltet. Ein DLL dient als einheitliche Anwender-Schnittstelle. Der Treiber dient der Weiterleitung von Videodaten in GBit-Netzwerken.


Programmierer
., Raum Stuttgart
6/2011 – 6/2011 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

6/2011 – 6/2011

Tätigkeitsbeschreibung

64-Bit-Treiber für eine PCI-Radarinterface-Karte

Für eine PCI-Karte wurde auf Basis des vorhandenen 32-Bit-Treibers ein WDF-Treiber für die 64-Bit-Windows-Plattformen programmiert. Die Karte dient der Aufzeichnung und Weiterleitung von Radardaten.


Qualifikationen:
.


Programmierer
., Raum Hamburg
5/2011 – 5/2011 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

5/2011 – 5/2011

Tätigkeitsbeschreibung

64-Bit-Treiber für eine PCI-Meßwerterfassung-Karte

Für eine PCI-Karte wurde auf Basis des vorhandenen 32-Bit-Treibers ein WDM-Treiber für die 64-Bit-Windows-Plattformen programmiert. Die Karte dient der schnellen Erfassung von Meßwerten.


Qualifikationen:
.


Programmierer
., Berlin
4/2011 – 4/2011 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

4/2011 – 4/2011

Tätigkeitsbeschreibung

Korrektur einer INF-Datei

Für ein Gerät, mit dem Debug-Ausgaben einer Netzwerk-Komponente an eine serielle Schnittstelle gesendet werden, wird der entsprechende Windows-Treiber per INF-Datei installiert. Für Windows 7 wurden mehrere Korrekturen vorgenommen, der Treiber wird nun als Gerätetreiber und nicht mehr als Filtertreiber angemeldet.


Qualifikationen:
.


Programmierer
., Braunschweig
3/2011 – 3/2011 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

3/2011 – 3/2011

Tätigkeitsbeschreibung

Fehlersuche in einem WDF-Treiber für Windows 7

In einem WDF-Treiber für eine PCI-Karte traten beim Zugriff auf Anwenderspeicher Probleme auf, da der Aufruf-Kontext unbestimmt war. Durch Erweiterung des Treibers um einen IoInCallerContext-Callback wurde dieser Fehler korrigiert.


Qualifikationen:
.


Programmierer
., Hannover
1/2011 – 2/2011 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

1/2011 – 2/2011

Tätigkeitsbeschreibung

USB-Client-Treiber für Windows Embedded CE 6.0

Ein CE-Gerät soll mit mehreren µController-basierten Baugruppen per USB kommunizieren.
Als Betriebssystem kommt Windows Embedded CE 6.0 zum Einsatz. Der USB-Client-Treiber nutzt die Routinen der USBD-Schnittstelle auf Basis des Host-Controller-Treibers OHCD2.DLL. Der Treiber läuft im Kernel-Mode, definiert eine eigene Geräte-Klasse und unterstützt das Stream-Treiber-API. Das API erlaubt die synchrone und asynchrone Kommunikation. Der Treiber unterstützt sowohl Plug&Play- als auch Power-Management. Eine User-Mode-DLL dient als Applikations-Schnittstelle.


Qualifikationen:
.


Programmierer
., Hannover
10/2010 – 11/2010 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

10/2010 – 11/2010

Tätigkeitsbeschreibung

WDF-Treiber für eine PCI-Arcnet-Karte

Für eine PCI-Arcnet-Karte wurde ein WDF-Treiber für Windows Vista, XP, Server 2003 und 2000 entwickelt. Auf der Karte kommen der Arcnet-Controller COM20022 von SMSC und der PCI-Controller PCI9052 von PLX zum Einsatz.

Qualifikationen:
.


Programmierer
., Stuttgart
8/2010 – 8/2010 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

8/2010 – 8/2010

Tätigkeitsbeschreibung

WinUSB-basierte Kommunikations-Schnittstelle für USB-Geräte

Auf Basis des WinUSB-Frameworks von Microsoft wurde eine C++-Schnittstelle entwickelt, über die Windows-Applikationen per USB Daten mit den USB-Geräten austauschen können. Plug&Play-Ereignisse wie 'Neues Gerät wurde angeschlossen' oder 'Gerät wurde entfernt' werden überwacht und verarbeitet. Die Kommunikations-Schnittstelle unterstützt sowohl die 32- als auch die 64-Bit-Windows-Plattformen ab Windows XP. Die USB-Geräte dienen dem Daten-Austausch zwischen PC und S7-Steuergeräten.


Qualifikationen:
.


Programmierer
., Berlin
7/2010 – 7/2010 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

7/2010 – 7/2010

Tätigkeitsbeschreibung

Beratung bei Fehlersuche in einem WDF-Treiber unter Windows XP

Bei einer Portierung eines WDM-Treibers für eine PCI-Karte ins WDF-Format traten Fehler beim Zugriff auf kontinuierlichen PC-Speicher per Busmaster-DMA auf. Die Fehlerursache wurde per Debuggen mit WinDbg und durch Analyse der Quellcode-Versionen gefunden und beseitigt. Weitere Anpassungen und Optimierungen des WDF-Treibers wurden vorbereitet.


Qualifikationen:
.


Programmierer
., Hannover
1/2010 – 6/2010 (6 Monate)
nicht angegeben
Tätigkeitszeitraum

1/2010 – 6/2010

Tätigkeitsbeschreibung

System-Software zur USB-Kommunikation zw. PC und Controller

Bei einer neuen Generation von Ticket-Automaten soll die Kommunikation zwischen dem zentralen PC und den Controllern der Komponenten (z.B. Münzverarbeitung, Drucker, Netzteil) über USB erfolgen.
Auf der Controller-Platine kommt als Prozessor ein ARM Cortex-M3 zum Einsatz. Für diesen Controller wurde ein Mini-Betriebssystem entwickelt, das preemptives Multitasking unterstützt. Bei der USB-Kommunikation über mehrere Bulk- und Interrupt-Endpunkte können eintreffende und zu sendende Nachrichten gepuffert werden. Für die zahlreichen Peripherie-Baugruppen können Interrupt-Handler installiert werden. Außerdem erlaubt der Systemkern den Wechsel in einen Update-Modus, in dem das System selbst sowie die Applikationen aktualisiert werden können. Weitere Systemdienste dienen der Abfrage der Systemzeit oder Beeinflussung des Task-Schedulers, um z.B. zeitkritische Codesequenzen ohne Unterbrechung abarbeiten zu können. Als Entwicklungs-Umgebung wurde Eclipse verwendet, Compiler, Linker etc. stammen aus der GNU-Toolchain.
Auf PC-Seite wurde ein USB-Client-Treiber entwickelt. Unter Verwendung des Kernel-Mode-Driver-Framworks (KMDF) aus dem WDK Version 7.1 wurde der Treiber als WDF-Treiber implementiert, der sowohl die 32- als auch die 64-Bit-Windows-Plattformen ab Windows XP unterstützt. Zur automatischen Abfrage der Interrupt-Endpoints werden Continuous-Reader verwendet. Als einheitliche Programmier-Schnittstelle für die Windows-Applikationen wurde eine DLL programmiert, die sich der Dienste des USB-Client-Treibers bedient. Die DLL enthält außerdem eine Überwachung von Plug&Play-Ereignissen. Auf diese Weise wird eine Liste der angeschlossenen USB-Geräte immer aktualisiert, wenn neue Geräte angeschlossen werden oder wenn USB-Geräte vom PC entfernt werden.
Mehrere C++-Beispiel-Applikationen sowohl auf Controller- als auch auf PC-Seite veranschaulichen die Nutzung der System-Software zur USB-Kommunikation.


Qualifikationen:
.


Tester
., Hannover
10/2009 – 11/2009 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

10/2009 – 11/2009

Tätigkeitsbeschreibung

Test v. CPU-Boards mit dem Intel-Atom-Prozessor

Bei einem solarbetriebenen Automaten soll ein PC mit einem CPU-Board mit dem Atom-Prozessor von Intel zum Einsatz kommen.
Von verschiedenen Anbietern wurden dazu CPU-Module mit einem Prozessor aus der Z5x0-Familie und dem dazugehörigen Chipsatz US15W überprüft. Als Betriebssystem kamen bei den Tests Windows XP und Windows 7 zum Einsatz.
Besonderes Augenmerk wurde auf die Standby-Fähigkeit der Atom-Module gelegt. Insbesondere im S3-Standby-Modus (Suspend-to-RAM) wurde die Leistungsaufnahme gemessen, außerdem wurden die Einschlaf- und Aufwach-Zeiten gestoppt. Unter Windows 7 konnten dabei die Werkzeuge des Windows Power Toolkits (WPT) verwendet werden. Für Windows XP wurde zur Zeitmessung ein Filtertreiber programmiert. Außerdem wurde eine Applikation entwickelt, die unter Verwendung eines Waitable-Timers den PC zyklisch in den Standby-Mode versetzt und dann wieder aufweckt.
Neben den Standby-Eigenschaften flossen weitere Kriterien wie vorhandene Schnittstellen, Formfaktor, Debug-Möglichkeiten, Support und der Preis in die Bewertung mit ein.


Qualifikationen:
.


Programmierer
., Raum Stuttgart
6/2009 – 7/2009 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

6/2009 – 7/2009

Tätigkeitsbeschreibung

WDF-Treiber für eine PCI-Karte f. Windows XP und Windows 7

Auf Basis eines Linux-Treibers wurde ein WDF-Treiber für eine PCI-Radarinterface-Karte für Windows XP und Windows 7 entwickelt. Per DMA schickt ein DSP mit hoher Geschwindigkeit Radar-Daten in einen Ringpuffer, aus dem der WDF-Treiber die Daten auf Anforderung an die Applikationen weitergibt. Das asynchrone Treiber-Interface sowie die Nutzung einer parallelen Request-Warteschlange gestatten die gleichzeitige Bearbeitung mehrerer Anforderungen. Das Radarinterface dient der Verarbeitung von Radardaten in modernen Navigations- und Überwachungs-Systemen.


Qualifikationen:
.


Programmierer
., Raum Hamburg
5/2009 – 5/2009 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

5/2009 – 5/2009

Tätigkeitsbeschreibung

Fehlerkorrektur in einem WDM-Treiber für Windows Vista

Bei einem WDM-Treiber für eine PCI-Karte trat in einem speziellen PC unter Vista ein Fehler auf. Dieser Fehler wurde per Debuggen mit WinDbg lokalisiert und korrigiert. Außerdem wurde die INF-Datei angepasst, um den Treiber auch unter unter Windows 7 installieren zu können.


Qualifikationen:
.


Berater/Trainer
., Raum Wiesbaden
4/2009 – 4/2009 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

4/2009 – 4/2009

Tätigkeitsbeschreibung

Schulung zum Thema "WDF-Treiber-Programmierung"

Bei einer 'Inhouse'-Schulung wurden die Grundlagen der Entwicklung von Windows-Kerneltreibern vermittelt. Außerdem wurden die Besonderheiten bei der Programmierung von WDF-Treibern erläutert. Gleichzeitig entstand im Rahmen der praktischen ßbungen das Gerüst eines WDF-Treibers für ein spezielles USB-Bedienterminal des Kunden. Im USB-Treiber wurde u.a. ein 'Continuous-Reader' unter Nutzung der WDF-USB-Objekte implementiert.


Qualifikationen:
.


Programmierer
., Raum Heidelberg
2/2009 – 2/2009 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

2/2009 – 2/2009

Tätigkeitsbeschreibung

Anpassung eines WDM-Treiber-Pakets für Windows Vista

Ein vorhandenes Treiber-Paket für eine PCI-Messwerterfassungs-Karte war anzupassen, um die Karte auch unter Windows Vista (32-Bit) nutzen zu können. Sowohl im WDM-Treiber als auch in einer Class-Installer-DLL wurden dazu mehrere Änderungen und Erweiterungen vorgenommen.


Qualifikationen:
.


Programmierer
., Berlin
1/2009 – 1/2009 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

1/2009 – 1/2009

Tätigkeitsbeschreibung

64-Bit-Treiber für ein PCIe-Evaluation-Board

Für ein Evaluation-Board für den PCIe-Bus wurde auf Basis des vorhandenen 32-Bit-Treibers ein Windows-Treiber für die 64-Bit-Windows-Plattformen programmiert.


Qualifikationen:
.


Programmierer
., Berlin
12/2008 – 12/2008 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

12/2008 – 12/2008

Tätigkeitsbeschreibung

64-Bit-Treiber für eine PCIe-Extender-Karte

Für eine Extender-Karte für den PCIe-Bus wurde auf Basis des vorhandenen 32-Bit-Treibers ein Windows-Treiber für die 64-Bit-Windows-Plattformen programmiert. Der Extender gestattet es, PCIe-Karten bei laufendem PC zu wechseln.


Qualifikationen:
.


Programmierer
., Hannover
10/2008 – 11/2008 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

10/2008 – 11/2008

Tätigkeitsbeschreibung

Programmieren eines WLAN-Clients unter Windows CE

In den Fahrzeugen eines Bahnunternehmens wird ein WLAN-Client verwendet, um Fahrzeug-Daten zur Zentrale zu übermitteln. Für diesen WLAN-Client wurde unter Verwendung eines Telnet-Protokolls eine C++-Schnittstelle für Windows CE und Windows XP entwickelt, über die der WLAN-Client konfiguriert und gesteuert werden kann. Die Schnittstelle umfasst 2 DLLs und ein grafisches Testprogramm, das die Vorgehensweise bei der Nutzung der WLAN-Client-Schnittstelle veranschaulicht.


Qualifikationen:
.


Programmierer
., Raum Karlsruhe
9/2008 – 9/2008 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

9/2008 – 9/2008

Tätigkeitsbeschreibung

Erweiterung eines WDM-Treibers für eine PCI-Messwerterfassungs-Karte

Ein vorhandener WDM-Treiber wurde erweitert, um auch mehrere PCI-Karten in einem System zu unterstützen. Außerdem wurden ein paar neue Funktionen hinzugefügt. Als PCI-Controller kommt ein Cypress-Chip zum Einsatz.


Qualifikationen:
.


Programmierer
., Hannover
5/2008 – 7/2008 (3 Monate)
nicht angegeben
Tätigkeitszeitraum

5/2008 – 7/2008

Tätigkeitsbeschreibung

Programmieren eines Kartenschemas unter Windows CE

Für das Ticketsystem eines Busunternehmens wurde ein Kartenschema für Windows CE mit Embedded Visual C++ 4 entwickelt. Unter Nutzung einer Bibliothek für Ticket-Funktionen auf Basis von RFID-Karten wurden Geschäftsvorgänge sowohl für das Busfahrer-Terminal als auch für die Geräte der Kontrolleure implementiert.


Qualifikationen:
.


Programmierer
., Raum Hamburg
3/2008 – 3/2008 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

3/2008 – 3/2008

Tätigkeitsbeschreibung

Erweiterung eines WDF-Treibers für eine PC/104+-Arcnet-Karte

Ein WDF-Treiber wurde um die Unterstützung einer PC104+-Karte erweitert. Der Treiber kann unter Windows Vista, XP und Windows 2000 verwendet werden. Die PC104+-Karte bietet 2 Arcnet-Schnittstellen an. Es kommen der PCI-Controller PCI9052 von PLX sowie zwei Arcnet-Controller COM20022 von SMSC zum Einsatz.


Qualifikationen:
.


Programmierer
., Berlin
2/2008 – 2/2008 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

2/2008 – 2/2008

Tätigkeitsbeschreibung

Erweitern eines WDF-Filtertreibers für eine 'vertikale' Maus

Ein vorhandener WDF-Filtertreiber für eine spezielle 'vertikale' Maus war zu erweitern. Zum einen wurde die Unterstützung von Windows Vista implementiert, zum anderen wird nun auch eine neue drahtlose Version der Maus durch den Treiber bedient.



Qualifikationen:
.


Programmierer
., Bremen
12/2007 – 12/2007 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

12/2007 – 12/2007

Tätigkeitsbeschreibung

Programmieren eines Joystick-'Scanners' für Windows XP

An einem speziellen Bedienterminal sind über ein USB-Hub zwei baugleiche Joysticks angeschlossen, die nicht durch Abfrage z.B. einer Seriennummer oder einer anderen eindeutigen Kennung unterschieden werden können. Um trotzdem eine sichere Zuordnung zu ermöglichen, wurde ein Programm entwickelt, das die angeschlossenen Joysticks 'scannt' und Ihnen die Nummer des verwendeten USB-Hub-Ports als neuen Parameter zuordnet.



Qualifikationen:
.


Programmierer
., Raum Paris
10/2007 – 11/2007 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

10/2007 – 11/2007

Tätigkeitsbeschreibung

WDF-Treiber für eine PCI-ISDN-Karte

Für eine PCI-ISDN-Karte wurde ein WDF-Treiber für Windows XP sowie zwei Applikationen entwickelt. Eine Applikation dient zum Reset der ISDN-Karten. Mit der anderen Applikation können die ein- und ausgehenden Nachrichten protokolliert werden, optional erfolgt auch die Dekodierung der Nachrichten sowohl der B-Kanäle als auch des D-Kanals.


Qualifikationen:
.


Programmierer
., Raum Hamburg
9/2007 – 9/2007 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

9/2007 – 9/2007

Tätigkeitsbeschreibung

WDF-Treiber für eine PCI-Arcnet-Karte

Für eine PCI-Arcnet-Karte wurde ein WDF-Treiber für Windows Vista, XP, Server 2003 und 2000 entwickelt. Auf der Karte kommen der Arcnet-Controller COM20022 von SMSC und der PCI-Controller PCI9052 von PLX zum Einsatz.


Qualifikationen:
.


Programmierer
., Berlin
6/2007 – 8/2007 (3 Monate)
nicht angegeben
Tätigkeitszeitraum

6/2007 – 8/2007

Tätigkeitsbeschreibung

Windows-Treiber und Monitorprogramm für eine PCIe-Evaluation-Karte

Für ein Evaluation-Board für den PCI-Express-Bus wurden Treiber für Windows Vista, XP, Server 2003 und 2000 entwickelt. Ein komtortables Monitorprogramm sowie einfache Beispielprogramme in C/C++ veranschaulichen den Umgang mit der PCIe-Evaluation-Karte.


Qualifikationen:
.


Programmierer
., Berlin
3/2007 – 4/2007 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

3/2007 – 4/2007

Tätigkeitsbeschreibung

Windows-Treiber und Bedienprogramm für eine PCIe-Extender-Karte

Eine Extender-Karte für den PCIe-Bus gestattet es, PCIe-Karten bei laufendem PC zu wechseln. Für diese Karte wurde ein WDM-Treiber für Windows 2000, XP, Server 2003 und Vista programmiert. Außerdem wurde eine Windows-Anwendung erstellt, mit der die automatische Abspeicherung und Wiederherstellung der Gerätedaten beim Wechslen der PCIe-Karten vorgenommen wird.


Qualifikationen:
.


Programmierer
., Berlin
1/2007 – 1/2007 (1 Monat)
nicht angegeben
Tätigkeitszeitraum

1/2007 – 1/2007

Tätigkeitsbeschreibung

Fehlersuche in einem WDM-Treiber unter Windows 2000

In einem Windows-2000-PC werden analoge Messdaten über eine spezielle PCI-Karte enpfangen, verarbeitet und angezeigt. Innerhalb des WDM-Treibers für die PCI-Karte waren mehrere Fehler zu korrigieren. Die Übertragung der Daten per Busmaster-DMA wurde optimiert.


Qualifikationen:
.


Programmierer
., Berlin
8/2006 – 11/2006 (4 Monate)
nicht angegeben
Tätigkeitszeitraum

8/2006 – 11/2006

Tätigkeitsbeschreibung

Verarbeitung und Übertragung von Bilddaten unter Windows XP

Für die Ansteuerung einer lasergestützten Maschine zur Erzeugung von Bilddokumenten waren auf einem Windows-XP-PC Bilddaten mit hoher Geschwindigkeit an eine spezielle PCI-Karte zu senden. Außerdem wurde eine grafische Bedienoberfläche erstellt, die der Konvertierung der Bilddaten sowie der Kontrolle aller beteiligten Hardware-Komponenten dient.


Qualifikationen:
.


Programmierer
., München
5/2006 – 6/2006 (2 Monate)
nicht angegeben
Tätigkeitszeitraum

5/2006 – 6/2006

Tätigkeitsbeschreibung

Fehlersuche und Optimierung von Windows-Treibern

Auf einem Windows Server 2003 System, das als Windows Cluster arbeitet, waren mehrere Windows-Treiber für verschiedene Hardware-Baugruppen aktiv. Dieses System war zu erweitern und zu optimieren, auftretende Probleme wurden analysiert, Fehler wurden korrigiert.


Qualifikationen:
.


Ausbildung

Elektrotechnik
(Diplom-Ing.)
Jahr: 1993
Ort: Dresden

Qualifikationen

Programmierung & Betriebssysteme
- Softwareprogrammierung
- Assembler
- C
- C++
- C#
- Delphi
- Visual Basic
- .Net
- Windows (allg.)
- Windows XP
- Windows Vista
- Windows 7
- Windows CE

Programmierung von Windows-Kerneltreibern

Über mich

Erfahrung:
- Programmierer seit 1993
- Freiberufler seit 2001
- mehr als 40 Projekte auf dem Gebiet der Programmierung von Windows-Treibern
- Windows-Treiber für PCI/PCIe-Karten, USB-Geräte, serielle Schnittstellen, ...
- Treiber-Formate: WDF, WDM, SYS, NDIS, Filter, ...
- Plattformen: Windows 7, Vista, XP (x86 + x64), Windows CE, Windows Embedded

Leistungsangebot:
- Kernel-Programmierung unter Windows
- Entwicklung neuer Windows-Treiber (Konzeption, Programmierung, Test, Signierung)
- Bearbeitung existierender Windows-Treiber (Portierung, Optimierung, Zertifizierung)
- Korrektur fehlerhafter Windows-Treiber (Analyse, Debuggen)
- Schulungen zur Windows-Treiber-Programmierung
- hardwarenahe Software-Entwicklung
- Echtzeit-, Multithread-Programmierung

Persönliche Daten

Sprache
  • Deutsch (Muttersprache)
  • Englisch (Gut)
Reisebereitschaft
National
Arbeitserlaubnis
  • Europäische Union
Profilaufrufe
1487
Alter
51
Berufserfahrung
25 Jahre und 3 Monate (seit 09/1993)
Projektleitung
10 Jahre

Kontaktdaten

Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.

Jetzt Mitglied werden »