WebNova: experimental operating system in WebAssembly

Unfortunately, hobbyist operating system development does not allow running your pet project on lots of physical systems, because all the environments are so different. It would be very time consuming to write drivers for even the most common hardware, and as a hobbyist OS developer, that is not an option.…

Actor-based programming language "X"

Though there have been no blog posts on the actual development on ttOS, I have been doing some off-and-on work on it. There have been too many changes for me to write them all down, but I can show you this screenshot of the "changelog" output: It looks very different…

COMBOOT Serial boot loader

Contrary to what you might believe from the scarcity of updates on my blog, I have been avidly working on my operating system. I added a bytecode interpreter/VM to it so it will host completely sandboxed executables. But, I will write a separate blog post on that subject later.…

vhdutil - VHD file attach/detach tool

I just published a small tool to my Github account. While developing ttOS, I have been struggling to find a virtual hard disk format that: Is compatible with most x86 virtual machinesCan be written to a device (USB stick, cloned to a real HDD, etc.)Is mountable in Windows, so…

ttOS R0.3

I decided that it's time for the R0.3 release. I don't feel like writing a very lengthy post today, but I want to highlight some things. MultitaskingLoggingBASIC interpreterMultitaskingI implemented multitasking this weekend. It's a cooperative, object-oriented model which uses hardware multitasking. An abstract class Task exists, which can be…

ttOS R0.2

The first blogpost since a month! And I have a lot to show (I think). First, a quick round-up of the latest modifications: Added views systemImplemented kernel service modelHeap lockingSafety checks & documentationAdded version numberingDetails after the break! ViewsA "view" in ttOS roughly resembles a window or console. Developers are…

Switching to real mode to use BIOS functions

Well, I finally did it. It took me exactly two days (or 16 hours) to write a piece of code that would allow me to temporarily drop back to real mode, call some BIOS interrupts, and then go back to protected mode again. The fact that I use MSVC++ and…

Syntactic sugar with C++ and more

So in my previous blogpost I briefly spoke about switching to C++ from pure C. I really like it so far. Since the majority of code I write at work is C#, I've become very accustomed to object oriented thinking. Currently, the driver model, device model, interrupt handling, terminal, and…