Operating system for OpenComputers
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
XeonSquared 1c647c76fe fix timeout accounting in the scheduler il y a 4 mois
kcfg refactor build system to allow pulling libraries from packages, assuming directories are set up correctly il y a 8 mois
lib cleanup RPC library, make it possible to detect the client hostname when running RPC requests il y a 4 mois
module fix timeout accounting in the scheduler il y a 4 mois
service skip mounting any already mounted filesystems il y a 5 mois
.editorconfig clipboard: Make the clipboard service work under the new service sys il y a 3 ans
.gitignore clipboard: Make the clipboard service work under the new service sys il y a 3 ans
INSTALL.md early work on OpenOS bootstrapping il y a 5 mois
LICENSE Initial commit il y a 5 ans
README.md update to match latest diskpart il y a 7 mois
build.lua add some simple minification filters to preproc, which can shrink the kernel significantly il y a 7 mois
build.sh stamp the kernel variant onto the version string il y a 8 mois
docs-metadata.yml added a title for PDF generation il y a 3 ans
finddesc.lua Fix document generation on Windows (using Git Bash) il y a 3 ans
gendoc.lua added doc() support for pre-compiled API documentation, wrote a generator for it, and included that in the build script il y a 3 ans
luapreproc.lua added type annotations and descriptions for functions where appropriate il y a 3 ans
obootstrap.lua early work on OpenOS bootstrapping il y a 5 mois
package.sh added minitel to the default init, updated the package script il y a 4 ans
preproc.lua add some simple minification filters to preproc, which can shrink the kernel significantly il y a 7 mois
template.tex updated finddesc to use the new doc library, allowing type annotations and building a directory of documentation il y a 3 ans

README.md

OC-PsychOS2

A lightweight, multi-user operating system for OpenComputers

Building

The kernel

The kernel is composed of a number of modules, found in the module/ directory, as specified by a file in the kcfg directory, base by default. Which modules are included can be customised by changing the include statements in the kernel configuration file; copying it and customizing that is recommended, so you can git pull later without having to stash or reset your changes.

Unix-like systems

The kernel can be built using the preproc library and provided scripts:

lua build.lua kcfg/base.cfg kernel.lua

PsychOS

The kernel can be built from inside PsychOS using the preproc library, assuming you have the kernel source available:

preproc("kcfg/base.cfg","kernel.lua")

The boot filesystem

A boot filesystem contains several things:

  • The kernel, as init.lua
  • The lib/ directory, containing libraries
  • The service/ directory, containing system services
  • The exec/ directory, containing single-shot executable files

This has been automated in the form of build.sh, pending a real makefile.

Documentation

Documentation is generated as the system is built with build.sh; a set of markdown files will be placed into doc/, as well as an all-in-one apidoc.md. If pandoc is installed, an apidoc.pdf will also be generated.