ToaruOS, an OS written from scratch with its own kernel and that is similar to Unix

Recently the release of the version of the operating system similar to Unix «ToaruOS 2.0 ″, written from scratch and provided with its own kernel, boot loader, standard C library, package manager, user space components, and a graphical interface with a composite window manager.

The project started in 2010 at the University of Illinois and was initially developed as a research work in the field of creating new composite graphical interfaces.

Since 2012, development has been transformed to ToaruOS operating system, developed by the community interested in development.

About ToaruOS

In its current form, the system is equipped with a composite window manager, supports dynamically linked executable files in ELF format, multitasking, graphics stack, can run Python 3 and GCC.

Toaru OS is based on a kernel using a hybrid modular architecture which combines a monolithic base and tools for the use of loadable modules, in the way that most of the available device drivers are designed, such as disk controllers (PATA and ATAPI), EXT2 and ISO9660 FS, framebuffer, keyboard, mice, network cards (AMD PCnet FAST, Realtek RTL8139 and Intel PRO / 1000), sound chips (Intel AC'97) and VirtualBox plugins for guest systems.

The kernel supports Unix, TTY, virtual file system threading, pseudo-filesystem / proc, multithreaded, IPC, ramdisk, ptrace, shared memory, multitasking and other typical features.

Ext2 is used as the file system. The bootloader is BIOS and EFI compliant. The network stack enables BSD-style socket APIs and supports network interfaces, including loopback.

For ToaruOS, programs like Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, etc. have been ported.

Among the native applications, the Vi-like Bim code editor stands out, which has been used in recent years for the development of specific ToaruOS applications such as a file manager, a terminal emulator, a graphical panel with widget support, a batch manager, as well as libraries for image support (PNG, JPEG) and TrueType fonts.

The project also is developing its own dynamic programming language Kuroko, designed to replace Python in the development of utilities and custom applications for the system.

The language it is similar in syntax to Python (positioned as a shortened Python dialect with explicit variable definitions) and has a very compact implementation. Compilation and interpretation of byte codes is supported. Bytecode interpreter provides garbage collector, supports multithreading without using global lock.

The compiler and interpreter can be assembled in the form of a small shared library (~ 500 KB), which can be integrated with other programs and extended via the C API. In addition to ToaruOS, the language can be used on Linux, macOS, Windows, and can run in browsers that support WebAssembly.

What's new in ToaruOS 2.0?

In this new version of the system it is mentioned that Misaka core adds functionality to allow custom utilities top, strace, dbg, ping, and cpuwidget.

It is also mentioned that the capabilities of the graphics library have been expanded , including the addition of related transformations and that the window frame has been improved.

Also noteworthy is that the text rasterizer with TrueType support was added, a library for formatting text with markup was added, the BIOS bootloader was improved with improved support for hardware configurations, and the EFI bootloader was rewritten.

Of the other changes that stand out:

  • Added support for kernel command line editing in both bootloaders.
  • The panel design has been modernized.
  • Added support for loadable libraries, dynamic layouts, and new widget pop-ups.
  • The viewer has been rewritten with new palettes added.
    Added a new calculator implementation.
    Support for time zones was added to the standard library.
  • Added driver for Ensoniq ES1371 chipset emulated in VMware.
  • The next major version 2.1 is expected to support AHCI, xHCI and USB HID devices.
  • In branch 2.2, it is planned to implement support for the AArch64 architecture.

Finally, if you are interested in knowing more about it, you can check the details In the following link.

The content of the article adheres to our principles of editorial ethics. To report an error click here!.

2 comments, leave yours

Leave a Comment

Your email address will not be published.



  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Marco Antonio said

    hello interesting .. where do you download?

  2.   ferdyan said

    Okay, but ext2 is already outdated, but approve anyway.