Architecture

DataStore is distributed as a library that can be used in-process, and as an executable that can be run as a separate process. The in-process library only allows one concurrent connection per DataStore.

Kernel

The Kernel is written in C and is platform independent.

It provides ACID properties.

Platform adapter

The Platform adapter provides abstractions of the operating system features needed by DataStore, e.g. file handing, memory management, thread management, synchronization etc.

API Transport

The API Transport sits between the API and the Kernel. It allows the Kernel to be in-process, in a separate executable, or on a completely different machine.

Bindings

The standard API is in ANSI standard C. To make the API easily usable from other languages and environments bindings are provided:

  • The .Net binding is an assembly for development of Windows Desktop .Net Applications.
  • The Windows Runtime binding is a Windows Runtime Component, and is distributed as an SDK for Windows and Windows Phone App development.
These will be added to in future releases.

Object Model

The Object Model component provides the classes required by Object Model generation