Application software relies on an operating system, device drivers, protocol stacks, language compilers and support tools to execute. These layers of specialised code are termed system level software.

 

Most companies are capable of designing applications and end user solutions.

 

Our expertise covers the system level software - the low level design supporting and underlying the application(s). 

 

We have experience and specific expertise with the Linux operating system, with device drivers, protocols, kernel tuning and scalable high performance multithreaded/distributed server based software (at the enterprise level). We are able to port operating systems, develop device driver modules, multithread applications for performance and redundancy, develop or maintain compilers and protocol stacks, and generally become involved where the majority of software engineers would be uncomfortable. Coupled with our hardware design experience we are able to design peripherals and develop device drivers for a peripheral, should that be required.
 

Our policy is to work exclusively with open designs such as POSIX/Unix/GNU/Linux/Android based systems - we do not work with other proprietary platforms or operating systems. This is mainly to support our core value of reducing the costs of development and assoicated ownership. For the same reason, any user facing applications we develop use open source libraries, with the exception of specialist intellectual property provided by 3rd parties (for example, proprietary codec algorithms or the Oracle Database client).