ФЭНДОМ


Общая структура каталоговПравить

/appl/             sources
  cmd/             commands in /dis
  lib/             modules in /dis/lib
  math/            commands in /dis/math
  wm/              commands in /dis/wm
  work/            some unfinished commands?
/chan/             pipes as channels
/demo/dsp/         distributed sports demonstration
/dev/              devices
/dis/              commands and modules
  lib/             server, modules
  math/            mathematics: fourier analysis, graphics
  mux/             set-top-box demonstration
  svc/             server, web? httpd webget
  wm/              window system demonstration
/fonts/            bitmaps for fonts
/httpcache/
/icons/
/include/          C includes
/keydb/            CA files
/lib/              data for some programs
/licensedb/        licenses
/locale/           time zones and?
/man/              manual in HTML
/module/           Limbo module imports
/movies/           data for mux
/n/                mount points for network connections
/net/              network connections
/nvfs/
/prog/             process data
/services/         data for some programs
  cs/              connection server
    db             database
  namespace        namespace for server
  namespace.init   namespace for wm
/tmp/              temporary files
/usr/              users
  inferno/         typical user
    keyring/       authentification certificates, privately owned
    namespace      namespace
    wmsetup        menu for window system

/Hp/ HP-UX system /Irix/ Irix (MIPS) system /Linux/ Linux system

 386/         architecture
    bin/      external commands: emu limbo mk
   include/   C includes
    lib/

/Nt/ Windows/NT and Windows 95 system /Solaris/

 386/         Solaris/386 system
 sparc/       Solaris/Sparc system


ЯдроПравить

  • os - Исходный код ядра родной версии Inferno.
  • emu - Исходный код ядра гостевой версии Inferno.
  • lib9 - Стандартная библиотека Plan9.
  • libdynld - Библиотека для динамической загрузки объектных файлов. Используется только {emu,os}/port/devdynld.c и libinterp/dlm-{Inferno,Plan9}.c для загрузки встроенных модулей.
  • libinterp - Интерпретатор байт-кода и JIT-компилятор.
  • libkern - Различные низкоуровневые функции. Используются только родной версией Inferno.
  • liblogfs - Файловая система для flash-накопителей. Используются только родной версией Inferno.
  • libmemdraw, libmemlayer - Часть реализации псевдоустройства /dev/draw.
  • libmp - // Не помню, вроде код для работы с числами двойной точности. j1m
  • libnandfs - Файловая система для flash-накопителей типа NAND.
  • libsec - Реализация различных алгоритмов шифрования.
Почти все библиотеки (каталоги с префиксом lib) и документацию к ним можно найти в дистрибутиве plan9.

УтилитыПравить

  • libbio - Библиотека буферизированного ввода-вывода. Используется утилитами.
  • asm - Исходный код утилиты bin/asm.
  • limbo - Компилятор Limbo, написанный на языке Си.
  • utils - Различные утилиты и компиляоры, используемые для сборки Inferno.
  • tools - Библиотека для работы с протоколом styx и сервер баз данных.

Встроенные модули

tk - библиотека графических виджетов Tk

libtk/
libinterp/tk.c

srv - транслятор сетвых имен и адресов (только гостевой режим)

emu/port/srv.c

sys - стандартный модуль sys (системные вызовы)

{os,emu}/port/inferno.c
libinterp/runt.c

draw - низкоуровневый интерфейс для работы с графикой (по сути просто обертка для /dev/draw)

libdraw/
libinterp/draw.c

keyring - управление ключами и шифрование данных

libkeyring/
libinterp/keyring.c
libinterp/ipint.c

math - математические операции

libmath/
libinterp/math.c

freetype - растеризатор TTF-шрифтов

libfreetype/
libinterp/freetype.c

prefab - создание графических интерфейсов для TV-приставок (не используется)

libprefab/
libinterp/prefab.c

loader (только native)

libinterp/loader.c

bench (только native)

/os/port/devbench.c