|
1 |
| -# MAGENTA REPOSITORY |
| 1 | +# Magenta |
2 | 2 |
|
3 |
| -Welcome to the Magenta repository. |
| 3 | +Magenta is the core platform that powers the Fuchsia OS. Magenta is |
| 4 | +composed of a microkernel (source in kernel/...) as well as a small |
| 5 | +set of userspace services, drivers, and libraries (source in system/...) |
| 6 | +necessary for the system to boot, talk to hardware, load userspace |
| 7 | +processes and run them, etc. Fuchsia builds a much larger OS on top |
| 8 | +of this foundation. |
4 | 9 |
|
5 |
| -The documentation is divided into |
| 10 | +The Magenta Kernel provides syscalls to manage processes, threads, |
| 11 | +virtual memory, inter-process communication, waiting on object state |
| 12 | +changes, and locking (via futexes). |
6 | 13 |
|
7 |
| -+ [Magenta](docs/index.md) specific. |
8 |
| -+ [LK](docs/lk/index.md) specific. |
| 14 | +Currently there are some temporary syscalls that have been used for early |
| 15 | +bringup work, which will be going away in the future as the long term |
| 16 | +syscall API/ABI surface is finalized. The expectation is that there will |
| 17 | +be 10s, not 100s of syscalls. |
| 18 | + |
| 19 | +Magenta syscalls are generally non-blocking. The wait (one, many, set) |
| 20 | +family of syscalls, ioport reads, and thread sleep being the notable |
| 21 | +exceptions. |
| 22 | + |
| 23 | +This page is a non-comprehensive index of the magenta documentation. |
| 24 | + |
| 25 | ++ [Getting Started](docs/getting_started.md) |
| 26 | ++ [Contributing Patches](docs/contributing.md) |
| 27 | ++ [Relationship with LK](docs/mg_and_lk.md) |
| 28 | ++ [Kernel Objects](docs/kernel_objects.md) |
| 29 | ++ [Process Objects](docs/objects/process.md) |
| 30 | ++ [Thread Objects](docs/objects/thread.md) |
| 31 | ++ [Handles](docs/handles.md) |
| 32 | ++ [Futexes](docs/futex.md) |
| 33 | ++ [System Calls](docs/syscalls.md) |
0 commit comments