DSS provides expert software design, system implementation, and
professional services,
specializing in Linux, FreeBSD, MacOS, and other Unix platforms
Software Design & Implementation
- Authentication, authorization,
and single sign-on
We can implement, customize, and install authentication and
access control services and technologies for the web
(Apache) and a variety of operating systems
(GNU-Linux, *BSD, MacOS).
- Computer networking and communication
protocols
We work with most Internet standard protocols (such as TCP/IP, SMTP, FTP),
other standards-based protocols (SSL/TLS),
and can develop custom protocols.
- Fast prototyping, platform-independent and
cross-platform software
Fast prototyping lets you quickly explore alternative implementations,
respond to new requirements, experiment, or evaluate new ideas.
After a requirements analysis, an iterative development methodology
is followed to provide an initial prototype as soon as possible,
then improve and extend it as necessary.
Code is typically developed using a scripting language, like Perl or PHP,
or for maximum efficiency, C/C++.
We prefer writing portable, POSIX-based software whenever possible.
Open source licensed software components are leveraged as appropriate.
- Creating and customizing "small", embedded,
and special-purpose programming languages
DSS has many years of experience developing parsers, compilers,
cross-compilers, translators, and interpreters for all kinds of purposes.
Proven tools like lex/flex and yacc/bison can be used,
as can custom implementations (such as a recursive descent parser written in C).
This includes
encoders and decoders for data representation languages, such as XML and JSON.
- Directory systems, including X.500,
LDAP, Active Directory
Distributed systems built around directory technology are used
for many purposes, including authentication and authorization.
- Computer systems and network communications
performance analysis
- High-performance and special-purpose distributed
systems and databases
Sometimes a relational database is not the right solution.
Lightweight (NoSQL, key/value) and small footprint databases and systems
can provide scalability, reliability, availability, atomic transactions,
replication, and more.
We can help you to develop systems that use these kinds of databases.
Areas of Expertise
Client/Server Architectures:
- design and implementation of client/server, peer-to-peer,
and proxy servers
- web-based applications and systems, REST-ful architectures
- Apache web server installation, configuration, and customization
- CGI, server-side processing, LAMP, JavaScript/AJAX, PHP/Perl,
XML technologies (HTML, CSS, RSS, JSON, RELAX NG),
automatic web page generation, and related technologies
- SQLite, Berkeley DB (NoSQL)
E-Security:
- practical design and implementation experience with the
Secure Sockets Layer (SSL)
- Public Key Infrastructure (PKI)
- data security technologies, including encryption and secure hashing
Systems Programming:
- extensive experience with systems programming
(including kernels, commands, and tools) on many Unix-type platforms
- service for
GNU and other free
software that falls within our areas of expertise
Professional services
DSS offers a wide variety of professional services in the areas
identified above and provides complete
technical support for
DACS.
Additional information about DACS
is available at dacs.dss.ca.
Per-hour and fixed-cost professional service agreements
and contracts are available.
Contact us for cost estimates.
The
relatively cheap Canadian Dollar
makes us particularly affordable for out-of-country clients.
Projects
DSS designed and implemented
DACS
(the Distributed Access Control System), an open source,
light-weight single sign-on system that provides extended authentication and
access control capabilities for Apache and web-based services.
DACS web services and commands can be used
by application software, scripts, server software, and CGI programs for
authentication and authorization checking functionality.
DACS is a key component of Canada's
National Forest Information System (NFIS)
and has been deployed by other governmental agencies,
businesses, and projects
(About DACS).
An updated version of the open source licensed
xprompt
utility for the X Window System was released on 25-Sep-2019.
For information about tdbm,
an embedded high-performance database,
please visit its microsite at
tdbm.dss.ca.
[I'm not sure at what point tdbm morphed into an acronym for
"The DataBase Machine".
Officially, it is "Transactional DBM",
or "DBM with (Atomic) Transactions".]
DSS was involved in the design and implementation of
the NoSQL
Dxstore Database
System, an open source database for Linux, FreeBSD, and other systems.
Open source software and technical papers
A variety of older
open source licensed software
is available.
Many of these packages still see regular use
on a wide variety of platforms.
A few packages can be found in commercial products,
including millions of Apple Macs, iPhones, iPads, and iPods,
as well as being used by other software.
Some older technical papers
on distributed databases, directory services, and other topics
are also available.
About DSS
Other projects we have recently been working on include:
- Investment account consolidation, reporting, and analysis tools.
- More secure authentication methods.
- Development of a fast parser and validator for
RELAX NG Compact Syntax,
XML document validation from its RELAX NG Compact Syntax specification,
and automatic generation of C/C++ encoders and decoders from a
Compact Syntax specification
- General-purpose XML parsing tools with a C/C++ API on top of
Expat,
XPath 1.0
- A light-weight, portable, efficient,
and easy to use non-preemptive threads package
(similar to Pthreads)
- A universal "server server" that among other things allows almost any
TCP-based server,
even those running on a private network or firewalled network,
to be accessible from the Internet
Incorporated in 1997 and privately-held,
DSS can bring an uncommon amount of knowledge and
experience to almost any distributed systems project, as is clear from the
company's unusually varied list of specialties and exceedingly deep background
in many areas.
If you have any questions or would like additional information,
please contact us!