Device Driver/ Kernel Level Development

• Custom NDIS Intermediate Driver.

Development of NDIS Intermediate Drivers to implement a firewall and NAT solution. The driver acted on a tokenized version of a “rule-set” that could be changed dynamically via IOCTL calls.

Target Operating System: Win NT 4.0, Win 2000, Windows 98, Windows Me.
Development Environment: Windows 2000 DDK, Windows 9x DDK

• Custom NDIS Protocol driver
.
Development of NDIS protocol drivers for a network packet sniffer application. The driver accepted a simple set of accept/reject rules based on source and destination IP addresses, and/or source and destination ports. Packets that matched were stored in a circular buffer for retrieval by a user mode application

Target Operating System: Win 2000, Windows XP, Windows 98, Windows Me.
Development Environment: Windows XP DDK, Windows 9x DDK

• Development of UART drivers for 32 bit RISC based embedded devices

Project Description:
Development of a UART driver for a 32-bit RISC based processor. The UART is a standard 16450 compliant UART chip.

Development Notes:
Developed using C and RISC assembly

• Development of RTC drivers for 32 bit RISC based embedded devices.

Project Description:
Development of RTC (real time clock) driver for 32-bit RISC based processor. The RTC is connected to the processor via I2C protocol.

Development Notes:
Developed using C and RISC assembly

• Development of PCMCIA drivers for 32 bit RISC based embedded devices.

Project Description:
Development of an ATA-4 driver for a PCMCIA-ATA flash card. The PCMCIA interface is supported through a custom interface with a 32-bit RISC based processor.

Development Notes:
Developed using C and RISC assembly

• High speed floppy driver controller card driver.

Project Description:
Device Driver for the card, and the DLL to interface the card with custom software which was used to write a program to duplicate floppy discs at high speed. The driver was designed such that the file system could be layered on top of it seamlessly, just as a standard FDC.

Target operating system: Windows NT 4.0
Development environment: WinNT DDK, C

• File System Forensics and File Recovery.

Project Description:
Recovery of deleted files using a file system scan and a low level sector-by-sector scan for NTFS, FAT32, FAT16 and FAT12 filesystems.

Target Operating Environment: Windows NT 4.0, Windows 2000, Windows XP, Windows 9x, Windows Me
Development Environment: Win32 SDK, Visual Studio.

• Custom boot loader and VsD filter driver for Windows 9x/Me.

Project Description:
Development of a “stealth” application so that it would be resistant to Windows upgrades, format and fdisk commands involving writing a custom bootloader that hooked the INT 13h interface, and the INT 21h file system functions, and filteration of the same appropriately.

Target Operating System: Windows 9x, Windows Me.
Development environment: Windows 9x DDK, MASM.

• Windows CE 5.0 drivers for serial port cards.

Project Description:
Development of drivers for high speed PCI serial port cards for a CEPC reference platform. The driver exposes COMx interfaces to Win32 so applications can open and use the ports seamlessly.

Target Operating System: Windows CE 5.0
Development Environment: Windows CE 5.0 Platform Builder.

• Serial port drives for multi-port serial cards for the x86 and the x64 platforms.

Target Operating System: Windows 2000, Windows XP, Windows 2003 server
Platforms: AMD64, IA64, and IA32.
Development Environment: Windows 2003 DDK

• Parallel port drivers for multiport serial & parallel cards for x86 and x64 platforms.

Target Operating System: Windows 2000, Windows XP, Windows 2003 server
Platforms: AMD64, IA64, and IA32.
Development Environment: Windows 2003 DDK