Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

Nath_SoM

Members
  • Content Count

    3
  • Joined

  • Last visited

Reputation Activity

  1. Upvote
    Nath_SoM reacted to MeltingBrain in KestrelOS - Safe and powerful Windows-alike OS   
    KestrelOS
    GUI-based, Windows-alike, highly customizable, and safe Operating System
    for common pourposes
     
    What's the major GUI-based OS currently available?
    The amazing system created by Igor, called MineOS (I'm sure everyone by now knows about it).
    Igor's system is based on OpenOS, that looks like MacOS and is by itself the most amazing system
    released yet, with all sorts of programs and even 3D libraries which is mind blowing.
     
    So why create yet another GUI-based system?
    There are several reasons why I decided to take on this journey.
    First of all, the majority of OS's out there, including MineOS is based upon OpenOS, which makes it a bit streamline and boring,
    but also unsafe.
    KestrelOS is made entirely from scratch with it's own libraries, services and style.
    I wanted to create something new, that would give less freedom than OpenOS (which is KestrelOS's main disadvantage),
    over a much more secure way to process applications. I also wanted to make KestrelOS as simple as possible,
    so anyone that is familiar to Windows will recognize most of it's content.

    How exactly KestrelOS works?
    KestrelOS implements safety policy, where only so called "managers" have absolute control over
    the system's event management.
    The "heart" of the system is a manager called "taskman" (Task Manager).
    Every other manager is registered to taskman and is a read-only table with functions that cannot be altered once
    the system has booted up. This restrains a lot of freedom for the user, but also prevents malicious software
    of changing core functions of the system in order to spy or corrupt data.
    There is few core managers that will "steer" every process in the system, taskman being the most important one
    as it is the only library in the entire system that has access to a now unavailable command: computer.pullSignal
    This forces every application to register itself into taskman in order to be able to hook itself under the heartbeat.

    What is this weird "heartbeat" you're talking about?
    Taskman has a loop, in which it listens for any signal. I called it the heartbeat, because it waits only 0.25 of a second
    to update any tasks hooked under specific processes even if nothing happens. This allows multitasking, or for example
    updating the clock on the bottom-right of the screen

    What are the so-called "managers" doing?
    Those so-called managers are here to serve programs with several system services.
    For example, there's a manager called "driverman", which loads system drivers, which are usually a single
    library that communicates with a specified type of component. There's a driver for graphics, which is
    communicating with the GPU, but uses Igor's amazing double-buffering technique (although I made my own version
    of it from scratch, but it is very primitive right now) to draw into the screen. Drivers are basically bridges
    between gpu's, datacards etc. that make sure such a given component is available and return optimized
    methods to use those components better. Of course, every driver has it's own version, name, description, and can be
    retrieved manually from driverman using the driver id or name, in case you'd like to implement your own driver and use it.

    What other features it has?
    Well, most of the system features are actually the managers which act as the main "pillars" of the system.
    Here's few of main managers that I remember as of now (as I'm not on my home PC right now, I'm writing from my work PC):
    driverman - manages drivers
    fileman - manages mounts for different filesystems and resolves path using mounts
    taskman - heartbeat of the system, manages processes and tasks assigned to those processes
    regman - manages system's registry
    guiman - uses kgraphics driver from driverman to draw complex GUI elements on the screen
    ... (there's a few more that I can't remember now or that are under development) ...
     
    Any concerns/disadvantages?
    Well, like stated before, it actually restrains quite some core functions to prevent
    malicious application of accessing those in order to prevent system spying or corruption.
    This removes quite a lot of freedom, but once you log in and unlock everything, you should be able
    to edit that manually in the system files if you so desire.
     
    Any pictures?
    Well I'm on my work PC not at home so I can't do any pictures,
    what I can say is that most of the baseline managers are implement and that I'm working on the GUI now,
    so don't say hurray yet as I'm working on it. Sorry
     
    Release date?
    Undefined.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.