9ferno

NameLast commit messageLast commit date
9frontadded a global DBG macro5 years ago
acmeRevert "separated ROOT and SRC directories"5 years ago
AIXremove vendored binaries ;; update emptydirs with more OS/arch/* directories7 years ago
applmore diagnostics4 years ago
disfixed initialization bugs with the updated proc.c5 years ago
docmerge updates from december 2018 from official repo ;; add vga font7 years ago
DragonFlyreverted the change converting u32int to u325 years ago
emufixed bug in getcallerpc4 years ago
fontsadd more missing files, some bad regex must have happened at some point7 years ago
forthfixed bugs in smudge, reveal and immediate4 years ago
FreeBSDchanges for a working wm/wm5 years ago
iconsadd more missing files, some bad regex must have happened at some point7 years ago
includeadded missing files from 9front4 years ago
Infernomore stuff from 9front to the forth console4 years ago
Irixreverted the change converting u32int to u325 years ago
libimport 9front pid management5 years ago
lib9moved ctype.c to libip5 years ago
libaml9front acpi5 years ago
libbioRevert "separated ROOT and SRC directories"5 years ago
libdrawRevert "separated ROOT and SRC directories"5 years ago
libdynldRevert "separated ROOT and SRC directories"5 years ago
libfisworking acid generation5 years ago
libflateRevert "separated ROOT and SRC directories"5 years ago
libfreetypeupdated old definitions4 years ago
libinterpfixed stack leak in forth bindings4 years ago
libipmoved ctype.c to libip5 years ago
libkernremove binaries4 years ago
libkeyringworking acid generation5 years ago
liblogfsRevert "separated ROOT and SRC directories"5 years ago
libmathRevert "separated ROOT and SRC directories"5 years ago
libmemdrawmore changes to the DBG macro4 years ago
libmemlayerRevert "separated ROOT and SRC directories"5 years ago
libmpworking acid generation5 years ago
libnandfsRevert "separated ROOT and SRC directories"5 years ago
libprefabRevert "separated ROOT and SRC directories"5 years ago
libsecworking emu build on OpenBSD 7.04 years ago
libtkRevert "separated ROOT and SRC directories"5 years ago
limboRevert "separated ROOT and SRC directories"5 years ago
Linuxmissing files of the Linux amd64 patch5 years ago
localesetting default timezone to GMT5 years ago
MacOSXRevert "fixes to support the change separating SRC and ROOT directories"5 years ago
manchanged offset from int to big5 years ago
mkfilesworking emu build on OpenBSD 7.04 years ago
modulechanged offset from int to big5 years ago
NetBSDreverted the change converting u32int to u325 years ago
Ntreverted the change converting u32int to u325 years ago
OpenBSDworking emu build on OpenBSD 7.04 years ago
osfixed bug in dealing with a delimiter without any content before it4 years ago
Plan9remove vendored binaries ;; update emptydirs with more OS/arch/* directories7 years ago
scriptsadd utils and such8 years ago
servicesdont vendor Linux binaries7 years ago
Solarisreverted the change converting u32int to u325 years ago
testsadded missing files from 9front4 years ago
toolsRevert "fixes to support the change separating SRC and ROOT directories"5 years ago
usrforth init is a go4 years ago
utilsRevert "separated ROOT and SRC directories"5 years ago
.dockerignoreUpdate docker file (thanks aeggy)6 years ago
.gitignorefixed bug in dictionary setup4 years ago
.hgignoreadd arrays(2) manual ;; lists(2): reference arrays(2) ;; arrays.m: change order of functions ;; .hgignore: ignore .orig files5 years ago
.hgtagsinitial commit, breaking up initialisation8 years ago
bitbucket-pipelines.ymlinclude Nt8 years ago
CHANGESinclude Nt8 years ago
DockerfileRevert "fixes to support the change separating SRC and ROOT directories"5 years ago
init.ffixed bug in dealing with a delimiter without any content before it4 years ago
INSTALLinvoked mk nuke before mk mkdirs (thanks Column_1)5 years ago
makemk-AIX.shadd makemk-AIX7 years ago
makemk.shfix missing elements and tweak scripts; add makestubs to ease install process8 years ago
mkconfigRevert "separated ROOT and SRC directories"5 years ago
mkfileadded tcp booting5 years ago
nat.readmenat notes5 years ago
NOTICEinclude Nt8 years ago
POSTINSTALLdont vendor Linux binaries7 years ago
README.mdupdated readme5 years ago
README.md

Inferno® is a distributed operating system, originally developed at Bell Labs, but now developed and maintained by Vita Nuova® as Free Software. Applications written in Inferno's concurrent programming language, Limbo, are compiled to its portable virtual machine code (Dis), to run anywhere on a network in the portable environment that Inferno provides. Unusually, that environment looks and acts like a complete operating system.

The use of a high-level language and virtual machine is sensible but mundane. The interesting thing is the system's representation of services and resources. They are represented in a file-like name hiearchy. Programs access them using only the file operations open, read/write, and close. The 'files' may of course represent stored data, but may also be devices, network and protocol interfaces, dynamic data sources, and services. The approach unifies and provides basic naming, structuring, and access control mechanisms for all system resources. A single file-service protocol (the same as Plan 9's 9P) makes all those resources available for import or export throughout the network in a uniform way, independent of location. An application simply attaches the resources it needs to its own per-process name hierarchy ('name space').

The system can be used to build portable client and server applications. It makes it straightforward to build lean applications that share all manner of resources over a network, without the cruft of much of the 'Grid' software one sees.

Inferno can run 'native' on various ARM, PowerPC, SPARC and x86 platforms but also 'hosted', under an existing operating system (including AIX, FreeBSD, Irix, Linux, MacOS X, Plan 9, and Solaris), again on various processor types.

This project includes source for the basic applications, Inferno itself (hosted and native), all supporting software, including the native compiler suite, essential executables and supporting files.

How this fork differs: 9boot instead of 9load, amd64 hosted (OpenBSD, Linux, 9front) and native (shell prompt) support, kfs64, NAPT (Network address and port translation), 9front drivers and ip stack.