More work towards a functional #FoundationOS #Itemsys -based syscall interface.
After a lot of work redoing the data structures behind items and actors (Unix: files and processes), I got the (currently userspace) kernel starting again, and could run my debug shell under it.

(See: alt text.)

#OSDev #FoundationProject
Well, #FoundationOS isn't Lisp-based, and actors in my system merely give action to "items" which are like state in a DB. But still. 👀 #FoundationProject
Working on item interface methods for inserting, deleting, and clearing data in item byte arrays. [Unix terminology approximation: working on syscalls for file truncation and more]

The first idea was:
Delins(offset uint64, delete_count, insertcount uint64, byte byte)
From my notes:
It does the same thing as deleting delete_count bytes at offset, then adding insert_count byte_ bytes at offset.
* Affects the data AT and to the right of offset.
Note: you can insert bytes at arbitrary offsets. Think about how filesystems would work with that. File fragmentation is already a thing! And for RAM-resident data, virtual memory could be used to minimize the amount of data that needs to be shift-copied over.

#Itemsys #FoundationProject #FoundationOS #OSDev
I am going to start posting more about my projects.

#FoundationProject -- a project to rethink, rework, and rebuild the computer technology behind the scenes.

#SubSky -- A minimalist CPU architecture and computing environment. https://gitlab.com/golemwire/subsky

#Itemsys -- an object-capability model which defines how data and actions work.

#FoundationOS -- The OS of the Foundation project; Itemsys as an operating system. #OSDev

#BeingsOfIsness -- an action-adventure story game with fighting-game mechanics, in development for SubSky. #gameDev
Ethan Black / SubSky · GitLab

A simple, minimalist, and easy-to-use RISC ISA and computing environment intending to strike a reasonable balance between elegant simplicity and practical power.

GitLab