|
1 | | -# 0-OS  [](https://goreportcard.com/report/github.com/threefoldtech/zos) |
| 1 | +# Zero-OS Base  [](https://goreportcard.com/report/github.com/threefoldtech/zos) |
2 | 2 |
|
3 | | -0-OS is an autonomous operating system design to expose raw compute, storage and network capacity. |
| 3 | +Zero-OS Base contains shared foundational packages and core libraries common to all Zero-OS variants. It abstracts hardware interfaces, networking primitives, and storage operations used across the Zero-OS family. |
4 | 4 |
|
5 | | -This repository host the V2 of 0-OS which is a complete rewrite from scratch. If you want to know about the history and decision that motivated the creation of the V2, you can read [this article](docs/internals/history/readme.md) |
| 5 | +## What this is |
6 | 6 |
|
7 | | -0-OS is mainly used to run node on the Threefold Grid. |
8 | | -Head to https://threefold.io and https://wiki.threefold.io to learn more about Threefold and the grid. |
| 7 | +This repository provides the shared building blocks that underpin Zero-OS, Zero-OS v4, and Zero-OS Light. Rather than duplicating low-level logic across each OS variant, zosbase centralizes hardware abstraction, common protocols, and reusable libraries. This ensures consistency, reduces maintenance burden, and makes it easier to evolve the operating system family as a whole. |
| 8 | + |
| 9 | +## What this repository contains |
| 10 | + |
| 11 | +- **Hardware abstraction layer** — CPU, memory, and device interfaces |
| 12 | +- **Networking primitives** — common network setup, wireguard, and routing utilities |
| 13 | +- **Storage operations** — volume, cache, and filesystem abstractions |
| 14 | +- **Shared protocols and data types** — reservation formats, capacity structures, and wire formats |
| 15 | +- **Documentation and specifications** — design docs, FAQs, and internal architecture documentation |
| 16 | +- **Common test utilities and development helpers** |
| 17 | + |
| 18 | +## Role in the stack |
| 19 | + |
| 20 | +Zosbase sits at the bottom of the Zero-OS software stack. It is imported and used by: |
| 21 | + |
| 22 | +- **zos** — the main Zero-OS V2 node operating system |
| 23 | +- **zos4** — the next-generation Zero-OS V4 |
| 24 | +- **zoslight** — the lightweight variant for edge and constrained devices |
| 25 | + |
| 26 | +Any improvement or fix in zosbase propagates to all dependent OS variants, making it the central point of reuse for the Zero-OS ecosystem. |
| 27 | + |
| 28 | +## ZOS / Zero-OS |
| 29 | + |
| 30 | +ZOS, also known as Zero-OS, is the operating system layer used to run and manage nodes. It provides the low-level runtime environment for workloads, networking, storage, and automation. This repository supplies the shared libraries and abstractions that make all Zero-OS variants possible. |
| 31 | + |
| 32 | +## Relation to ThreeFold |
| 33 | + |
| 34 | +This technology is used within the ThreeFold ecosystem and was first deployed on the ThreeFold Grid. The component itself is designed as reusable infrastructure technology and should be understood by its technical function first, independent of any specific deployment. |
| 35 | + |
| 36 | +## Ownership |
| 37 | + |
| 38 | +This repository is owned and maintained by TF-Tech NV, a Belgian company responsible for the development and maintenance of this technology. |
9 | 39 |
|
10 | 40 | ## Documentation |
11 | 41 |
|
12 | | -Start exploring the code base by first checking the [documentation](/docs) and [specification documents](/specs). |
| 42 | +Start exploring the codebase by first checking the [documentation](/docs) and [specification documents](/specs). |
13 | 43 |
|
14 | | -An [FAQ](./docs/faq/readme.md) is also available for all the common questions. |
| 44 | +An [FAQ](./docs/faq/readme.md) is also available for common questions. |
15 | 45 |
|
16 | 46 | ## Setting up your development environment |
17 | 47 |
|
18 | | -If you want to contribute read the [contribution guideline](CONTRIBUTING.md) and the documentation to setup your [development environment](qemu/README.md) |
| 48 | +If you want to contribute, read the [contribution guideline](CONTRIBUTING.md) and the documentation to set up your [development environment](qemu/README.md). |
19 | 49 |
|
20 | 50 | ## Grid Networks |
21 | 51 |
|
22 | | -0-OS is deployed on 3 different "flavor" of network: |
| 52 | +Zero-OS is deployed on several network environments: |
23 | 53 |
|
24 | | -- **production network**: Released of stable version. Used to run the real grid with real money. Cannot be reset ever. Only stable and battle tested feature reach this level. You can find the [dashboard here](https://dashboard.grid.tf/) |
25 | | -- **test network**: Mostly stable features that need to be tested at scale, allow preview and test of new features. Always the latest and greatest. This network can be reset sometimes, but should be relatively stable. You can find the [dashboard here](https://dashboard.test.grid.tf/) |
26 | | -- **QA network**: Mostly unstable features that need to be tested internally, allow preview and test of new features. Can be behind development. This network can be reset sometimes, but should be relatively stable. You can find the [dashboard here](https://dashboard.qa.grid.tf/) |
27 | | -- **dev network**: ephemeral network only setup to develop and test new features. Can be created and reset at anytime. You can find the [dashboard here](https://dashboard.dev.grid.tf/) |
| 54 | +- **production network**: Released stable versions. Used to run the real grid. Cannot be reset. Only stable and battle-tested features reach this level. [Dashboard](https://dashboard.grid.tf/) |
| 55 | +- **test network**: Mostly stable features that need to be tested at scale. Can be reset occasionally. [Dashboard](https://dashboard.test.grid.tf/) |
| 56 | +- **QA network**: Internal testing of new features. Can be behind development. [Dashboard](https://dashboard.qa.grid.tf/) |
| 57 | +- **dev network**: Ephemeral network for developing and testing new features. Can be created and reset at any time. [Dashboard](https://dashboard.dev.grid.tf/) |
28 | 58 |
|
29 | | -Learn more about the different network by reading the [upgrade documentation](/docs/internals/identity/upgrade.md#philosophy) |
| 59 | +Learn more about the different networks by reading the [upgrade documentation](/docs/internals/identity/upgrade.md#philosophy). |
30 | 60 |
|
31 | 61 | ### Provisioning of workloads |
32 | 62 |
|
33 | | -ZOS does not expose an interface, instead of wait for reservation to happen on a trusted |
34 | | -source, and once this reservation is available, the node will actually apply it to reality. You can start reading about [provisioning](./docs/provision) in this document. |
35 | | - |
36 | | -## Owners |
37 | | - |
38 | | -[@maxux](https://github.com/maxux) [@muhamadazmy](https://github.com/muhamadazmy) [@delandtj](https://github.com/delandtj) [@leesmet](https://github.com/leesmet) |
| 63 | +Zero-OS does not expose an interface. Instead, it waits for reservations to happen on a trusted source, and once a reservation is available, the node applies it to reality. You can start reading about [provisioning](./docs/provision) in this document. |
39 | 64 |
|
40 | 65 | ## Community |
41 | 66 |
|
42 | | -If you have some questions or just want to hang out, you can find us on: |
| 67 | +If you have questions or want to connect, you can find the community on: |
43 | 68 |
|
44 | | -- telegram: https://t.me/zero_os_tech |
| 69 | +- Telegram: <https://t.me/zero_os_tech> |
45 | 70 | - Matrix: #zero-os:matrix.org |
46 | 71 |
|
47 | 72 | ## License |
48 | 73 |
|
49 | 74 | This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details. |
50 | | -Copyright (c) TFTech NV. |
| 75 | +Copyright (c) TF-Tech NV. |
0 commit comments