OS News Archive
An alternative to garbage collection
Remembering the Acorn RiscPC and other retro hardware
Ultron OS: a simple OS for a high school project
RIOT: the friendly operating system for the Internet of Things
zkeme80: a Forth-based OS for the TI-84+ calculator
MenuetOS 1.30.40 released
HelenOS 0.8 released
PC/GEOS source code released under Apache 2.0 license
Blueway Software Works (who purchased the intellectual property rights to PC/GEOS from the estate of Frank Fischer of Breadbox when he passed away) seems to have published the source code for PC/GEOS on their GitHub repository.
This repository is the official place to hold all the source code around the PC/GEOS graphical user interface and its sophisticated applications. It is the source to build SDK and release version of PC/GEOS. It is the place to collaborate on further developments.
While I can't ascertain the exact version that they have published, it looks like it contains all of the UI options/themes provided in Ensemble 2.0 onwards (i.e. Motif, OS/2 2.0 PM and Windows 95). It also looks like they have published the source code for all of the Breadbox titles (extra games and so on) that were sold separately. By the looks of it, they are also re-factoring the source to allow it to be compiled on Windows and Linux with more modern toolchains.
McKernel: a light-weight multi-kernel operating system
IHK/McKernel is a light-weight multi kernel operating system designed specifically for high performance computing. It runs Linux and McKernel, a lightweight kernel (LWK), side-by-side on compute nodes primarily aiming at the followings:
- Provide scalable and consistent execution of large-scale parallel applications and at the same time rapidly adapt to exotic hardware and new programming models
- Provide efficient memory and device management so that resource contention and data movement are minimized at the system level
- Eliminate OS noise by isolating OS services in Linux and provide jitter free execution on the LWK
- Support the full POSIX/Linux APIs by selectively offloading system calls to Linux
Xformer 10 released: Atari 8-bit emulator for Windows
Now the 10th official release of Xformer, released on October 10 2018 and of course called Xformer 10, has been largely rewritten and optimized for today's Windows 10 PCs and Windows 10 ARM64 devices, such as Microsoft Surface tablets, all-in-one touch-screen Sony VAIO desktops, and all-day Qualcomm Snapdragon-based ARM64 tablets. Xformer 10 has also been verified to run on Windows 7 machines but some of the cool new features that you will read about below are best used with modern touch-screen hardware.
After almost three years of development by Xformer creator Darek Mihocka and fellow Atari 8-bit developer Danny Miller, there are two big themes in this major upgrade of the classic ATARI 8-bit emulator Xformer.
Xformer runs Atari 400/800, Atari 800XL, and Atari 130XE software on Windows PCs. This new version comes, among other things, with autodetection functionality that automatically selects the right settings based on the Atari program you load. Nifty.
The Interim Operating System
Interim OS is a radical new operating system with a focus on minimalism. It steals conceptually from Lisp machines (language-based kernel) and Plan 9 (everything is a file system). It boots to a JITting Lisp-like REPL and offers the programmer/user the system's resources as filesystems.
You can run it on a Raspberry Pi 2, or as a hosted operating system on ARM Linux, x86 Linux, OS X, Windows, and even on AmigaOS 3.x.
The benefits and costs of writing a POSIX kernel in Go
This paper presents an evaluation of the use of a high-level language (HLL) with garbage collection to implement a monolithic POSIX-style kernel. The goal is to explore if it is reasonable to use an HLL instead of C for such kernels, by examining performance costs, implementation challenges, and programmability and safety benefits.
The paper contributes Biscuit, a kernel written in Go that implements enough of POSIX (virtual memory, mmap, TCP/IP sockets, a logging file system, poll, etc.) to execute significant applications. Biscuit makes liberal use of Go's HLL features (closures, channels, maps, interfaces, garbage collected heap allocation), which sub- jectively made programming easier. The most challenging puzzle was handling the possibility of running out of kernel heap memory; Biscuit benefited from the analyzability of Go source to address this challenge.
On a set of kernel-intensive benchmarks (including NGINX and Redis) the fraction of kernel CPU time Biscuit spends on HLL features (primarily garbage collection and thread stack expansion checks) ranges up to 13%. The longest single GC-related pause suffered by NGINX was 115 microseconds; the longest observed sum of GC delays to a complete NGINX client request was 600 microsec- onds. In experiments comparing nearly identical system call, page fault, and context switch code paths written in Go and C, the Go version was 5% to 15% slower.
Scientific papers about operating system experiments - who doesn't love them?
Visopsys 0.8.3 released
It's been a long time since we last covered Visopys - one of the few remaining hobby operating systems still in development - so how about an update? The last version we covered was 0.8 way back in September 2016, but the most recent release is 0.8.3 from August of this year.
This maintenance version features user experience enhancements and reliability improvements, and a more capable Archive Manager program. Bug fixes cover a number of GUI flaws and memory leaks, and some of the low-level network infrastructure code has been refined.
And just in case you forgot all about this operating system:
Visopsys is an alternative operating system for PC compatible computers. In development since 1997, this system is small, fast, and open source. It features a simple but functional graphical interface, pre-emptive multitasking, and virtual memory. Though it attempts to be compatible in a number of ways, Visopsys is not a clone of any other operating system.
It's available from the project's download page.
Arcan 0.5.5, Durden 0.5 released
More than three quarters of a year has gone by since last time, but the Arcan project has squeezed out a new release of the 'multimedia server' or 'desktop engine' Arcan and its related subproject, the Durden desktop environment.
For those unaware of the project as such, it might be worthwhile to skim through a recent summary that can be found in the article "Revisiting the Arcan Project" - but suffice to say that it is an ambitious attempt at replacing large swaths (terminal emulators, display server, audio server, and so on) of the normal user-facing parts of the BSD and Linux userspace, with a single compact and coherently scriptable component.
CirnOS: new Lua-based OS
CirnOS is an operating system for the Raspberry Pi built for the purpose of usability and simplicity. It provides a simple environment for running Lua scripts on Raspberry Pi. It has no kernel or time management - it is single threaded. You run your code on the device, and that is it.
CirnOS has only been tested on the Raspberry Pi Zero, but should work on the original Raspberry Pi and the Zero W.
Sculpt OS with Visual Composition
Sculpt is an open-source general-purpose OS based on the Genode framework. It combines a microkernel architecture, capability-based security, sandboxed device drivers, and hardware-virtualized guests in a novel operating system for commodity x86-64 hardware.
The third version of Sculpt OS is now available under codename Sculpt VC. It is based on Genode OS framework release 18.08. "Sculpt with Visual Composition" takes a step forward to turn Sculpt into a useable system for a wider audience. It features a graphical user interface for performing fundamental tasks like connecting to a wireless network, or installing and running software from packages. However, the full power of the system is still accessible only via a textual interface. A detailed description of the usage and structure of Sculpt VC can be found in its documentation.
Sculpt VC is available in form of an USB stick image thats boots on bare metal x86 hardware. The image has a size of 24 MiB only. Alternatively, a virtual appliance for VirtualBox is provided.
Porting Hyperkernel to the ARM architecture
This work describes the porting of Hyperkernel, an x86 kernel, to the ARMv8-A architecture. Hyperkernel was created to demonstrate various OS design decisions that are amenable to push-button verification. Hyperkernel simplifies reasoning about virtual memory by separating the kernel and user address spaces. In addition, Hyperkernel adopts an exokernel design to minimize code complexity, and thus its required proof burden. Both of Hyperkernel's design choices are accomplished through the use of x86 virtualization support. After developing an x86 prototype, advantageous design differences between x86 and ARM motivated us to port Hyperkernel to the ARMv8-A architecture. We explored these differences and benchmarked aspects of the new interface Hyperkernel provides on ARM to demonstrate that the ARM version of Hyperkernel should be explored further in the future. We also outline the ARMv8-A architecture and the various design challenges overcome to fit Hyperkernel within the ARM programming model.
Creator of TempleOS, Terry Davis, has passed away
Terrence Andrew Davis, sole creator and developer of TempleOS (née LoseThos), has passed away at age 48. Davis suffered from mental illness - schizophrenia - which had a severe impact on his life. He claimed he created his operating system after having spoken with and receiving instructions from god, and he was a controversial figure, also here on OSNews, for his incomprehensible rants and abrasive style towards OSNews readers and staff. We eventually had to ban him, but our then-editor Kroc Kamen worked with him in 2010 to publish an article about his operating system despite his ban.
Davis was clearly a gifted programmer - writing an entire operating system is no small feat - and it was sad to see him affected by his mental illness. I mourn his passing, and I wish his family and friends all the strength they need in these trying times. His family and friends are asking people to donate to "organizations working to ease the pain and suffering caused by mental illness", such as The Brain & Behaviour Research Foundation or the National Alliance on Mental Illness.
I hope he found peace - wherever he may be.
Tenox.net’s archive of computer books
Yesterday, we linked to a 1997 book about the Windows 95 file system, which is a great read. Don't let the fun end there, though - the site hosting said book, Tenox.net by Antoni Sawicki, is a true treasure trove of in-depth books that while outdated today, are still amazingly detailed reads. I honestly have no idea which to pick to quote here as an example, so out of my own personal interest, I couldn't really pass up "Configuring CDE: The Common Desktop Environment" by Charles Fernandez.
If you spend the major portion of your work day in front of a workstation chasing bits through the electronic networks of cyberspace, aka the information highway, so that your users can be more productive, this book is for you.
If you spend your days (or, thanks to some corporate edict, are about to spend your days) living in the Common Desktop Environment, so that your users can focus on their work and not the mechanics of getting to their work, this book shows you what you can do to make that environment their home.
There's countless other great reads in the list, so peruse them and find your own favourites.