Operating Systems: You Already Know Application Architecture
The virtual file system, is what saves application memory, it is a tree, and already fully featured when we use XML.
To save or restore your program memory, you save or load an XML file.
When collaboration is needed, nodes need to have a write uuid and revision, revision must always be synced to latest on save as the human is still there.
If there is an off-line situation, it is a conflict, with the random uuid serving as an automatic tie breaker.
The conflict will call an AI to investigate, AI can call a human.
XML is a universal language, nothing more is needed.
That the college taught wrote bad code that needed entire minutes for startup, is a problem with the scam of standardized education, not XML.
In context of application data, think of XML as a web file system.
Always use full paths to change or mutate data, this way you can listen to path changes with wildcards.
Now, a computer operating system is a bunch of programming, that includes interfacing with hardware and exposing a User Interface.
But an operating system in general is a useful user interface, that makes operating of whatever it is running on or in easy.
Computer programs for editing images: are operating systems, those little panes are system windows.
And instead of showing a useless desktop, they show the image that the stuff in little windows can edit.
It is not an image operating system, it is an operating system for working with image files.
If you learn to view operating systems this way, you have just conquered application architecture.
Throw in a virtual mini file-system that announces: write, append, execute, along with a full file path.
And you are now able to use wild cards to listen to file changes, create a special file that depends on listening to other files.
You now have computed values, based on other values in the file system, and you emit a write when you recalculate with a change.
We are talking about operating systems, but we only mentioned the file-system, that’s because that is the operating system.
It is a powerful wisdom, and it goes like this: EVERYTHING IS A FILE.
If you want to emit an event into one of your applications, you append an xml note to its events file.
To close a window, you delete it from your process tree, to terminate the process, you delete the process.
To combine firstName and lastName to create a fullName, you use three files, two normal ones firstName and lastName.
And one computed one, that in XML syntax, specifies firstName and lastName as dependencies.
And a function that produces the value of fullName when eitehr changes, that then pretends fullName was written to by emitting change.
This is the operating system, there is nothing more here, maybe that there is some HTML in XML somewhere to make the basse UI.
And modules, under a URL with an XML manifest, that you can mount on top of your filesystem.
There is nothing else, because everything is a file.