Kernal and Driver Development

System Device Drivers Programming, Integration and Development for Windows & Linux While application developers don't have access of good software tools, the task of designing and implementing device drivers becomes time-consuming and prone to errors. Developing device drivers for a highly integrated microcontroller can be daunting, partly due to the sheer complexity of device and also due to other difficulties.

Sourceone owns many years of experience in software development, advanced production design and research. We have good co-operation with great companies to develop customize system device drivers. Our company has a mature, enthusiastic and efficient team to manage several activities like system recovery, data backup, network storage, etc.

Writing a robust device driver requires a great deal of expertise and precise understanding of how drivers are supposed to interact with the operating system or kernel. Our developers have extensive experience developing drivers for Microsoft Windows, Mac OS X and Linux. We develop drivers for sphere of networking to security to advanced storage access. Some of these solutions are deployed in major corporations.

We develop device drivers for Unix, Linux, Windows 2000, Windows NT, Windows XP and Windows Vista. Sourceone team of developers also builds next generation drivers using complex architecture of Win9X, Win 2000, Windows Vista and Win NT/XP/ME operating systems. Sourceone has knowledge and experience of all above architectures. Moreover, in many projects, we have created drivers using all latest system device drivers programming.

Our domain expertise in the following areas

  • Audio Driver base on Intel Chipset
  • Driver for a custom PCI serial I/O card for equipment
  • Network Device Drivers on Windows Vista/XP/NT/2K/Me/CE.
  • Storage Device Drivers on Windows/Windows CE.
  • PCI/USB Wireless LAN device drivers on Windows
  • USB Device Drivers on Windows Vista/XP/NT/2K/ Windows CE.
  • 64 Bit Drivers & 16 Bit - 32 Bit Driver Migration

Using Kernel level programming, we develop high tech device drivers for embedded solutions. The technology allows us to make low level hardware drivers for small devices based on Win32, Win64, Win CE and embedded platform. Some of these drivers have been used for interfacing peripherals like Mouse, Network Connectivity, Camera, Pointing Device, Keyboard, USB (keyboard and mouse) and PCMCIA cards.

Soureone Skills

Windows System Architecture and Windows Internals

Members of the Sourceone development team have a deep understanding of the internal architecture of the Windows operating system, specifically the kernel. We have written kernel-mode software since the days of Windows 95 and Windows NT. We are familiar with many of the components included in current Windows releases and know all concepts and standards related to driver development very well.

Windows Kernel-Mode Device Drivers

At Sourceone, we have a strong background in hardware. We know devices and combine this knowledge with our deep familiarity with the internals of the Windows operating system to create reliable and efficient device drivers. Sourceone has successfully completed numerous Windows device driver projects, including for USB and FireWire devices, or sophisticated, high-speed PCI/PCI Express DMA devices. We have great experience in creating complex kernel-mode drivers such as bus drivers, filter drivers, network drivers and software-only drivers. We maintain an internal framework which allows us to create reliable and WDM-compliant drivers very quickly.

Win32 Multithreaded Application and Service Programming

Our developers are very familiar with Windows multithreading and I/O concepts. We are able to design robust and efficient Windows applications or services that handle I/O tasks using dedicated threads. A defensive programming style and compliance with documentation ensure that reliable and maintainable code is produced. Our huge experience with Win32-level multi-threaded software development results from countless projects where we successfully created services, applications, utilities, DLLs and other components.

Multimedia and Professional Audio

We are familiar with all current Windows multimedia technologies such as DirectX/DirectShow, BDA and kernel streaming (KS) drivers. Past projects have demanded that we also create audio device drivers for professional use. We have the necessary skills to create reliable WDM audio/MIDI and ASIO drivers with low-latency requirements. Many USB professional audio devices currently available in the market are equipped with Windows drivers created by Sourceone.

Bus Technologies

Sourceone has worked with USB and IEEE 1394 technologies since they became available on the market. We know the technologies very well and have helped many customers to integrate a USB or 1394 interface into their product. Our developers are familiar with both the PC side and the embedded device side of a bus connection. Of course, we are also accustomed to work with other standard buses such as PCI, CardBus, PCI Express and with network communication technologies such as Ethernet, W-LAN, TCP/IP, etc.

Other Operating Systems

Sourceone have also gained experience with other operating systems, in particular Windows CE and Windows Mobile, Linux and Mac OS X. On those systems, we have successfully created PCI, USB and audio drivers, for instance. In past projects we have developed concepts and strategies to implement device driver functionality in an abstract, operating system independent way. So Windows and other operating systems can be supported with one driver architecture and one code base.