toaruos/README.md

73 lines
4.0 KiB
Markdown
Raw Normal View History

2015-07-26 02:37:54 +03:00
![Screenshot](http://i.imgur.com/oeGNxX7.png)
![More Screenshots](http://i.imgur.com/mogzwiO.png)
2013-04-15 10:17:52 +04:00
# ToaruOS (とあるOS) #
2013-11-29 10:57:09 +04:00
とあるOS (ToaruOS) is a hobby kernel and supporting userspace, built mostly from scratch, in development since December of 2010.
2011-01-16 04:03:53 +03:00
This repository contains the kernel, modules, and core userspace. Some third-party libraries and utilities are required to build a working system.
2012-08-29 09:38:31 +04:00
## History
ToaruOS started as a side project at the University of Illinois at Urbana-Champaign. For several months in late 2011 and early 2012, the University's [SIGOps](http://www.acm.uiuc.edu/sigops/) chapter managed development efforts focused on building the original compositing GUI. Since then, the project has mostly been a one-man effort with a handful of third party contributions.
2012-08-29 09:38:31 +04:00
## Kernel ##
2012-02-16 12:02:09 +04:00
The Toaru kernel provides a basic Unix-like environment. The kernel uses a hybrid modular architecture, with loadable modules providing most device driver support. The core kernel includes support for Unix pipes and TTYs, a virtual file system, multitasking, ELF binary support, and various core platform features on x86 systems.
2015-06-26 07:20:48 +03:00
Modules provide support for disk drives, ext2 filesystems, serial, keyboards and mice, a `/proc` filesystem similar to the one found in Linux, as well as an expanding collection of other device drivers.
2014-04-11 07:20:26 +04:00
## Userspace ##
2015-05-15 06:34:46 +03:00
ToaruOS's userspace is focused on a rich graphical environment, backed by an in-house compositing window manager. ToaruOS's terminal emulator supports xterm-compatible 256-color modes, as well as Konsole 24-bit color modes and anti-aliased text with basic Unicode support. Several graphical demos are provided, alongside a number of command-line applications. A port of SDL targetting the native graphical environment is also available.
2013-04-05 08:18:25 +04:00
### Third-Party Software ###
2013-01-28 06:23:10 +04:00
The userspace depends on a number of third-party libraries which are outside of the development scope of the project. Additionally, several third-party applications and libraries have been integrated into ToaruOS's core userspace, or otherwise ported to ToaruOS.
Package | | Description
------- | ---- | -----------
cpudet| *(included)* | `cpuid` parser
DejaVu Sans | *(included)* | Popular, free TrueType font series
VL Gothic | *(included)* | Free Japanese TrueType font
`sha2.c` | *(included)* | SHA512 hash library
`utf8decode.h` | *(included)* | UTF8 decoding tools
glxgears | *(included)* | Popular OpenGL demo
curses-hello | *(included)* | Curses demos
`pci_list.h` | *(included)* | PCI vendor and device names
2048 | *(included)* | Terminal implementation of a popular strategy game
gcc | \* | Compiler suite.
newlib| \* | C library
libpng| \* | PNG graphics library
zlib | \* | `gzip` compression library
FreeType | \* | TrueType font parser
Cairo | \* | CPU-accelerated pixel-pushing and vector graphics
ncurses | \* | Terminal UI library and `terminfo` provider
Mesa | \* | Software OpenGL implementation
Vim | \* | Popular text editor
Lua | [link](http://www.lua.org/) | Interpreted programming language
MuPDF | [link](https://github.com/klange/toaru-pdfviewer) | PDF viewer (requires complex library cross-compilation)
SDL | [link](https://github.com/klange/SDL) | Cross-platform graphics library
Snes9X | [link](https://github.com/klange/snes9x-sdl) | SNES emulator
PrBoom | [link](https://github.com/klange/prboom) | DooM engine
Bochs | [link](http://bochs.sourceforge.net/) | Software x86 PC emulator
Python | (TBD) | Interpreted programming language
\* These tools and libraries are retrieved by the build process and included by default. Some of them are dependencies for the core userspace.
License for the included third-party tools and libraries can be found [here](LICENSE.md).
## Community ##
### Wiki ###
For additional screenshots, see [Screenshots](https://github.com/klange/toaruos/wiki/Screenshots).
For instructions on building, see [Testing and Building](https://github.com/klange/toaruos/wiki/Testing-and-Building).
2013-06-07 08:59:20 +04:00
### IRC ###
For help building the kernel and userspace, join us in `#toaruos` on Freenode (`irc.freenode.net`).
2011-01-20 09:27:11 +03:00