Matheus 6c65a90a5f mm: properly fork shared file mappings
mm_fork_context() currently maps shared chdev mappings 1:1 when forking
a range. The issue with this approach is that chdev mappings are not
guaranteed to be backed by physical memory, and thus cannot safely be
refcounted. This can lead to issues on devices with more complex buffer
lifetimes.

To allow for internal book-keeping, do not map shared chdev memory on
fork and instead allow it to go through the entire fault-in process
again.
2026-10-06 11:51:01 -03:00
2026-09-09 18:06:17 -03:00
2026-05-02 14:29:40 -03:00
2026-10-06 11:50:57 -03:00
2025-12-07 12:05:36 -03:00
2026-10-06 11:50:57 -03:00
2026-06-29 02:10:09 -03:00
2026-09-24 22:19:44 -03:00
2026-06-16 01:01:39 -03:00
2026-08-13 23:15:03 -03:00
2026-05-28 23:59:11 -03:00
2026-05-02 14:29:40 -03:00
2026-03-20 21:45:29 -03:00
2024-09-03 23:22:12 -03:00
2024-09-03 23:22:12 -03:00
2024-04-08 13:51:21 -03:00
2023-04-08 01:11:30 -03:00
2026-09-11 00:01:05 -03:00
2025-12-05 18:21:08 -03:00

Astral

Astral is a 64 bit operating system with its own kernel written in C for the x86-64 architecture.

Features

  • SMP capable preemptible kernel
  • Networking (TCP, UDP, DHCP, 802.11)
  • POSIX compatibility
  • Ports: X.org, wine, fvwm3, gcc, bash, quake, vim and more
  • Filesystems: tmpfs, devfs, ext2, fat{12,16,32}
  • Block devices: NVMe, virtio-block, AHCI
  • Wifi: Open networks + WPA2 (CCMP+TKIP)
  • Wifi NICs: rtl8188eu
  • Ethernet NICs: virtio-net, rtl8169
  • USB: xHCI, HID, Hubs
  • ACPI: thanks to uACPI, there is ACPI support with proper poweroff, etc.
  • Multiple user support
  • Package management using xbps
  • Audio: Intel HD Audio driver with mixing done by sndiod.

Current Goals

  • Installation program
  • Fully self hosting

Running

If you built it from source, run make run-kvm or make run-disk-kvm

There are prebuilt images and instructions at https://astral-os.org/about.html.

Building

The build process dependencies are specified here. If you wish to use the make img option, you will need mtools. All other needed packages will be installed/built on a container.

It is highly recommended you download pre-built packages from the official repository by running make download. This greatly reduces the compilation time as it will only need to build the host tools.

To build the project, run make. This will create a file named astral.iso

After this, if you wish to create an ext2 disk image, run make disk

S
Description
No description provided
Readme MIT 34 MiB
Languages
C 97.2%
Python 1.1%
Assembly 0.7%
Makefile 0.5%
Shell 0.4%