OS News Archive

Redox OS 0.8.0 released

We have a lot to show since the 0.7.0 release! This release, care has been taken to ensure real hardware is working, i686 support has been added, features like audio and preliminary multi-display support have been enabled, and the boot and install infrastructure has been simplified and made more robust. I highly recommend skimming through the changes listed below before jumping into the images, if you want more details. It is also recommended to read through the Redox OS book if you want more information on how to build and use Redox OS. Redox OS is written in Rust, and created and maintained by System76 Principal Engineer Jeremy Soller. There’s a ton of changes in this release – far too many to list here – and while native installation is possible, there’s always going to be struggles with hardware support for any alternative operating system.

DOS/4GW and Protected Mode

We’ll start our conversation by saying that DOS/4GW is a DOS extender. That means DOS/4GW is a program responsible for adding some useful stuff on top of the vanilla DOS kernel you have installed on your system. And look, I know this does not really answer anything yet, but we’ll get there. Let’s begin our journey trying to understand why DOS needs extending in the first place. I definitely remember seeing DOS/4GW a lot when playing MS-DOS games back in the ’90s, but I had entirely forgotten about it. This article is from 2021, and explains what it is, and why it was needed.

ZealOS: a modernised fork of TempleOS

The Zeal Operating System is a modernized, professional fork of the 64-bit Temple Operating System. Guiding principles of development include transparency, full user control, and adherence to public-domain/open-source implementations. ZealOS strives to be simple, documented, and require as little of a knowledge gap as possible. One person should be able to comprehend the entire system in at least a semi-detailed way within a few days of study. Simplify, don’t complicate; make accessible, don’t obfuscate. Yes, somebody picked up Terry Davis‘ baton and ran with it. This makes me happy – it seemed wrong for TempleOS to remain but an inanimate memorial.

RustyHermit: a Rust-based, lightweight unikernel

RustyHermit is a unikernel targeting a scalable and predictable runtime for high-performance and cloud computing. Unikernel means, you bundle your application directly with the kernel library, so that it can run without any installed operating system. This reduces overhead, therefore, interesting applications include virtual machines and high-performance computing. The kernel is able to run Rust applications, as well as C/C++/Go/Fortran applications. Exactly as it says on the tin.

Whipping up a new Shell – Lash#Cat9

Arcan, the unique development framework for user interfaces that’s exploring a ton of new and different ideas, has released a new project – Lash#Cat9, a new command line shell. A guiding principle is the role of the textual shell as a frontend instead of a clunky programming environment. The shell presents a user-facing, interactive interface to make other complex tools more approachable or to glue them together into a more advanced weapon. Cat9 is entirely written in Lua, so scripting in it is a given, but also relatively uninteresting as a feature — there are better languages around for systems programming, and better UI paradigms for automating work flows. Another is that of delegation – textual shells naturally evolved without assuming a graphical one being present. That is rarely the case today, yet the language for sharing between the two is unrefined, crude and fragile. The graphical shell is infinitely more capable of decorating and managing windows, animating transitions, routing inputs and tuning pixels for specific displays. It should naturally be in charge of such actions. Another is to make experience self documenting – that the emergent patterns on how your use of command line processing gets extracted and remembered in a form where re-use becomes natural. Primitive forms of this are completions from command history and aliases, but there is much more to be done here. I’m not a heavy shell user, so I’m not going to make any subjective statements here. It at least seems remarkably interesting, and I’m sure there’s quite a few among us who would love to play with this.

Sculpt OS 22.10 released

Sculpt OS 22.10 is a maintenance release of our Genode-based general-purpose OS. It imposes a new rigid regime to the management of low-level devices, improves USB hotplug support, and comes with numerous performance optimizations. I should really find the time to sit down with Sculpt.

The 4th year of SerenityOS

Well hello friends! Today we celebrate the 4th birthday of SerenityOS, counting from the first commit to the repository, on October 10th, 2018. What follows is a selection of random highlights from the past year, mixed with personal reflections from some of the SerenityOS developers. Just sit down, relax, take a deep breath, forget your day’s troubles, and enjoy a rundown of some of the awesome work being done in the SerenityOS community. There’s few communities that seem so welcoming, friendly, and active like the SerenityOS one, and even reading through this year’s milestones just feels good.

Samsung licenses Tizen OS to other TV makers

Samsung Electronics today announced a partnership with leading international ODM (Original Development Manufacturing) companies such as Atmaca, HKC and Tempo — a collaboration that will enable non-Samsung smart TV models to use Tizen OS for the first time. New TVs from Bauhn, Linsar, Sunny, Vispera and other brands will be available in Australia, Italy, New Zealand, Spain, Türkiye and the United Kingdom this year, allowing more consumers to enjoy a premium smart TV experience enabled by Tizen, an open source OS for Samsung Smart TV. Tizen was, at one point, going to kill Android.

Genode OS Framework release 22.08

The overarching theme of Genode 22.08 is the emerging phone variant of Sculpt OS, touching topics as diverse as USB ECM, Mali-400 GPU, SD-card access, telephony, mobile-data connectivity, the Morph web browser, and a custom user interface. Among the further highlights are new tracing tools, improved network performance USB smart-card support, and VirtIO drivers for RISC-V. Genode never fails to impress.

What have we lost?

We have ended up in a world where UNIX and Windows have taken over, and most people have never experienced anything else. Over the years, though, many other system designs have come and gone, and some of those systems have had neat ideas that were nevertheless not enough to achieve commercial success. We will take you on a tour of a variety of those systems, talking about what makes them special. In particular, we’ll discuss IBM i, with emphasis on the Single Level Store, TIMI, and block terminals Interlisp, the Lisp Machine with the interface of Smalltalk OpenGenera, with a unique approach to UI design TRON, Japan’s ambitious OS standard. This is an hour-long watch, but I’m getting some coffee and snacks ready this weekend. This seems like total OSNews bait.

RSoC: improving drivers and kernel – part 7

In my last blog post, I introduced the userspace_fexec/userspace_clone features. As the names suggest, they move the inherently complex implementations of fork(3) and execve(2), from the kernel into relibc, giving userspace much more freedom while simplifying the kernel. There has been considerable progress since last post; the features userspace_fexec/userspace_clone, userspace_initfs, and userspace_initfs, have now all been merged! I understood some of those words.

Revirt: virtualization on Redox OS

So, as part of RSoC 2022, I have been working on introducing Virtualization on Redox OS. This feature/technology is called Revirt and has wide-ranging consequences for Redox OS as a secure, well-designed, virtualizable and effective operating system. This is a big new addition to Redox OS.

Genode OS Framework 22.05 released

Functionality-wise, the added support for WireGuard-based virtual private networks is certainly the flagship feature of the release. Section WireGuard briefly introduces the new component while leaving in-depth information to a dedicated article. Among the other topics of the release, our continued work on device drivers stands out. We managed to bring Genode’s lineup of PC drivers ported from the Linux kernel up to the kernel version 5.14.21 using Genode’s unique DDE-Linux porting approach. As described by Section New generation of DDE-Linux-based PC drivers, this work comprises complex drivers like the wireless LAN stack including Intel’s Wifi driver and the latest Intel display driver. At the framework’s side, the modernization of Genode’s platform driver for PC hardware is in full swing. Even though not yet used by default, the new driver has reached feature parity with the original PC-specific platform driver while sharing much of its code base with the growing number of ARM platform drivers such as the FPGA-aware platform-driver for Xilinx Zynq (Section Xilinx Zynq). Excellent progress, and as always, exquisite release notes.

OpenVMS E9.2 on x86 now available

We are excited to announce the availability of VSI OpenVMS E9.2 for x86-64, field test version of the upcoming V9.2 release. This is the next step in the journey to migrate OpenVMS to the x86-64 platform. The E9.2 release allows you to use the operating system with some of the most commonly-used hypervisors and includes a host of newly migrated applications. VSI has been porting OpenVMS to x86-64 for a while now, and it seems they’re getting quite close to general availability. E9.2 is focused on x86 hypervisors, and the porting effort as a whole should provide a future upgrade path for VMS users for a long time to come.

Sculpt OS release 22.04 available

Sculpt OS version 22.04 introduces the concept of service-level sandboxing and features completely new drivers for wireless, graphics, and USB. On the user-visible surface, the new version of Sculpt OS looks and feels familiar to users of the previous version. Under the hood, however, at the nitty-gritty hardware-support level, it features completely revamped device drivers for Intel wireless, Intel graphics, and USB. Get Sculpt OS’ latest release from the download page, and be sure to read the documentation for more detailed information.

Redox OS 0.7.0 released

A lot has changed since release 0.6.0! First thing, it is impossible to collect all the changes that happened since December 24, 2020 into one set of release notes, so this will focus on the highlights. It was very important to me that this be a release targeting the foundations of Redox OS. This includes, the bootloader, the filesystem, the package manager, the kernel, the drivers, and much more. The focus was on enabling Redox OS to boot on the widest set of hardware possible. Redox is a Rust-based operating system with a microkernel and a UNIX-like paradigm and an optional GUI. Its lead developer works for System76 as principal engineer.

u+237c ⍼ right angle with downwards zigzag arrow

Known as right angle with downwards zigzag arrow, angle with down zig-zag arrow, \rangledownzigzagarrow, and ⍼, no one knows what ⍼ is meant to represent or where it originated from. Section 22.7 Technical Symbols from the Unicode Standard on the Miscellaneous Technical block doesn’t say anything about it. Who doesn’t love a good what-the-hell-is-this-glyph story?

Genode OS Framework 22.02 released

The 22.02 release is dominated by three topics, the tightening and restructuring of the code base, device-driver infrastructure, and the transition of Sculpt OS towards a versatile toolkit for building specialized operating-system appliances. Genode’s release notes are always a sight to behold. Detailed, interesting, and always worth a read.

Neptune OS: a WinNT personality of the seL4 microkernel

Neptune OS is a Windows NT personality of the seL4 microkernel. It implements what Microsoft calls the “NT Executive”, the upper layer of the Windows kernel NTOSKRNL.EXE, as a user process under the seL4 microkernel. The NT Executive implements the so-called NT Native API, the native system call interface of Windows upon which the more familiar Win32 API is built. These are exposed to the user mode via stub functions in NTDLL.DLL (a somewhat redundant name if you ask me) with names such as NtCreateProcess. The NT Executive is also responsible for the Windows kernel driver interface (known as the Windows driver model), which includes functions like IoConnectInterrupt and IoCallDriver. On Windows these are loaded into kernel mode and linked with the NTOSKRNL.EXE image. On Neptune OS, we run all the Windows kernel driver in user mode and they communicate with the NT Executive process via standard seL4 IPC primitives. The eventual goal of the Neptune OS project is to implement enough NT semantics such that a ReactOS user land can be ported under Neptune OS, as well as most ReactOS kernel drivers. In theory we should be able to achieve binary compatibility with native Windows executables provided that our implementation of the NT Native API is sufficiently faithful. We should also be able to achieve a high degree of source code compatibility with Windows kernel drivers. The main obstacle of achieving binary compatibility of kernel drivers is that many Windows kernel drivers do not follow the standard Windows driver communication protocol (ie. passing IRPs when you need to call another driver) and instead just pass pointers around and call into other drivers directly. In Neptune OS unless it’s a driver-minidriver pair we always run “kernel” drivers in their separate processes so it is not possible to do that. Very cool idea for a project, and awesome to see that they plan on integrating the work done by the ReactOS team.