Release of operating system ToaruOS 2.0

The release of the Unix-like operating system ToaruOS 2.0, written from scratch and supplied with its own kernel, bootloader, standard C library, package manager, user-space components and a graphical interface with a composite window manager, has been published. The project code is written in C language and distributed under the BSD license. A 14.4 MB live image has been prepared for download, which can be tested in QEMU, VMware or VirtualBox.

Release of operating system ToaruOS 2.0

The project started in 2010 at the University of Illinois and initially developed as a research work in the field of creating new composite graphical interfaces. Since 2012, the development has been transformed into the operating system ToaruOS, developed by the community interested in development. In its current form, the system is equipped with a composite window manager, supports dynamically linked executable files in ELF format, multitasking, a graphics stack, can run Python 3 and GCC.

At the heart of ToaruOS is a kernel that uses a hybrid modular architecture that combines a monolithic base and means for using loadable modules, in the form of which most of the available device drivers are packaged, such as disk drivers (PATA and ATAPI), EXT2 and ISO9660 filesystem, framebuffer, keyboard, mouse , network cards (AMD PCnet FAST, Realtek RTL8139 and Intel PRO/1000), sound chips (Intel AC'97), and VirtualBox guest add-ons. The kernel supports Unix threads, TTY, virtual file system, /proc pseudo file system, multithreading, IPC, ramdisk, ptrace, shared memory, multitasking, and other common features.

The file system used is ext2. The bootloader supports BIOS and EFI. The network stack allows for BSD-style socket APIs and supports network interfaces, including loopback. For ToaruOS, programs such as Vim, GCC, Binutils, FreeType, MuPDF, SDL, Cairo, Doom, Quake, Super Nintendo emulator, Bochs, etc. have been ported. Of the native applications, the Vi-like Bim code editor stands out, which has been used for the past few years to develop ToaruOS-specific applications such as a file manager, a terminal emulator, a graphical panel with widget support, a package manager, as well as libraries for supporting images (PNG, JPEG ) and TrueType fonts.

The project also develops its own dynamic programming language Kuroko, designed to replace Python in the development of utilities and user applications for the system. The language is similar in syntax to Python (it is positioned as a shortened dialect of Python with explicit definition of variables) and has a very compact implementation. Compilation and interpretation of bytecode is supported. The bytecode interpreter provides a garbage collector, supports multithreading without the use of a global lock. The compiler and interpreter can be compiled into a small shared library (~500KB) that can be integrated with other programs and extensible via the C API. In addition to ToaruOS, the language can be used on Linux, macOS, Windows and run in WebAssembly-enabled browsers.

In the new release of ToaruOS:

  • The Misaka kernel has added functionality to allow custom top, strace, dbg, ping, and cpuwidget utilities to be implemented.
  • The capabilities of the graphics library have been expanded, including the addition of affine transformations.
  • Improved work of the window framework.
  • Added text rasterizer with support for TrueType format.
  • Added library for text formatting with markup.
  • Improved BIOS bootloader with more support for hardware configurations. Rewritten EFI bootloader. Added support for editing the kernel command line in both bootloaders.
  • Updated panel design. Added support for loadable libraries, dynamic element layout, and new popups to widgets.
  • The viewer has been rewritten with new palettes added.
  • Added a new implementation of the calculator.
  • Support for timezones has been added to the standard library.
  • Added driver for Ensoniq ES1371 chipset emulated in VMware.
  • The next major 2.1 release is expected to support AHCI, xHCI, USB HID devices. In the 2.2 branch, it is planned to implement support for the AArch64 architecture.

Release of operating system ToaruOS 2.0
Release of operating system ToaruOS 2.0
Release of operating system ToaruOS 2.0


Source: opennet.ru

Add a comment