Technology: Intro update
This commit is contained in:
parent
ce47abf11c
commit
746165ce29
1 changed files with 5 additions and 14 deletions
19
Technology
19
Technology
|
@ -8,22 +8,13 @@ We develop digital infrastructure with a minimal footprint. Where other approac
|
||||||
try to patch general purpose operating systems by adding more layers of indirection,
|
try to patch general purpose operating systems by adding more layers of indirection,
|
||||||
we strive to build a secure system from the ground up.
|
we strive to build a secure system from the ground up.
|
||||||
|
|
||||||
Each piece of digital infrastructure or service is (a) written in a high-level
|
Each piece of digital infrastructure or service is written in a high-level
|
||||||
memory-safe programming language and (b) specialised to only contain the
|
memory-safe programming language and tailored to only contain the
|
||||||
required functionality at compilation time. This (a) reduces the attack vectors
|
required functionality at compilation time. This reduces the attack vectors
|
||||||
and (b) also reduces the attack surface.
|
and the attack surface.
|
||||||
|
|
||||||
The resulting service is executed as a virtual machine on a modern hypervisor.
|
The resulting service is executed as a virtual machine on a modern hypervisor.
|
||||||
Its size is usually two orders of magnitude smaller (ranging from kilobytes to
|
Its size is usually around 1-10 MB, much smaller than a UNIX / Linux system, and boots within milliseconds.
|
||||||
16 megabytes) than a UNIX / Linux system, and boots within milliseconds.
|
|
||||||
|
|
||||||
We program in [OCaml](https://ocaml.org), a multi-paradigm
|
|
||||||
programming language, which unifies functional, imperative, and object-oriented
|
|
||||||
programming. OCaml has an expressive static type system with type inference.
|
|
||||||
Developers can specify complex invariants in the type system, which are
|
|
||||||
checked at compile time, and violations are caught early.
|
|
||||||
|
|
||||||
We discuss more reasons why we use OCaml [further down](#Why-OCaml).
|
|
||||||
|
|
||||||
## MirageOS - bespoke operating systems
|
## MirageOS - bespoke operating systems
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue