Keyronex es un sistema operativo de pasatiempo. No hace pretensiones ser nada novedoso o emocionante, y no hace nada que sea interesante para nadie.
El objetivo a largo plazo es construir un sistema operativo bastante competente según los estándares de principios de los 90, con tanta escalabilidad y tantos modificadores como es razonablemente posible para una sola persona. El sistema combina influencias técnicas de la tradición UNIX (particularmente Mach/NextStep, NetBSD y Solaris) con influencias de la tradición VMS (particularmente OpenVMS en sí, Mintia y Windows NT). Se ha prestado especial atención al sistema de memoria virtual.
KeyRonex es un sistema portátil. Las plataformas compatibles se resumen a continuación; La información más detallada está disponible en el documento de las plataformas.
| Plataforma | Arquitectura | Estado |
|---|---|---|
| ACPI PC de 64 bits | AMD64 | Bien respaldado |
| ACPI AARCH64 | Aarch64 | Mal compatible 1 |
| ACPI RISC-V 64 | riscv64 | Parcialmente compatible 2 |
| Amiga | m68k | Planificado |
| Qemu virt M68K | m68k | Bien respaldado |
Se han escrito algunas páginas manuales para el núcleo. Se puede encontrar una introducción a la sección Manual del núcleo en la introducción.
[Esta es una rama de reescritura que actualmente carece de características; La rama anterior y más destacada es 23-jul , que presenta puertos de aplicaciones como GNU CoreUtils, Bash Shell, Binutils y GCC, así como Xorg y algunas aplicaciones X11 básicas como TWM y XEYES, y el navegador web de enlace de texto. ]
En el modo de núcleo, se puede dibujar una distinción aproximada entre el núcleo, los servicios ejecutivos y el marco del conductor. Esta es una lista no inclusiva de las características de KeyRonex:
Núcleo
Memoria virtual
Servicios ejecutivos
Controladores y sistemas de archivos
Núcleo misceláneo:
Servidor de subsistema POSIX:
Se utilizan varios componentes de terceros. Estos son algunos de ellos:
queue.h y tree.h , Lista/cola y macros de Tree de tipo genérico para C.cia.h , custom.h .kprintf y familia. El código original de KeyRonex tiene licencia bajo la Licencia Pública de Mozilla V2.0 (MPLV2). Otros componentes están bajo sus propias licencias, todos los cuales son compatibles con MPL; Estos son principalmente bajo el BSD o licencias similares. Vea las carpetas de vendor y subprojects donde se pueden encontrar las licencias de los componentes de terceros.
Para crear KeyRonex y todo el espacio de usuario, necesitará las siguientes dependencias:
autopoint
gettext
git
gperf
help2man
libgmp-dev
libmpc-dev
libmpfr-dev
libtool
m4
meson (>= 0.57.0)
pkg-config
python3
python3-mako
python3-pip
texinfo
yacc
xbstrap
xorriso
Estos paquetes se obtienen con apt install en Ubuntu, excepto xbstrap , que se obtiene con pip install xbstrap .
El puerto AARCH64 solo ha tenido pruebas limitadas. ↩
El puerto RISC -V 64 solo se ha probado en QEMU con -M virt y aún no admite SMP. ↩