3 ms·
You'd think I was an expert, given that I gave that segment of the talk, but I haven't yet dived that deep into Genera's internals. As I understand it though,
by thequux 6y ago
You'd think I was an expert, given that I gave that segment of the talk, but I haven't yet dived that deep into Genera's internals.
As I understand it though, you don't have the concept of page faults at the image level; IIRC, Genera doesn't have any form of virtual memory, or if it does, it's all in microcode. Task switches are, iirc, handled in the image, but in the same way that it's done in Smalltalk: there's a function in the "kernel" to decide what task to switch to next, but the actual context switch is handled in microcode.
Also, there's no such thing as privilege separation; everything's running in a single address space and namespacing is handled using Common Lisp's package system.
- hestefisk 6y agoIt was intentionally designed as a single user mode-machine wasn’t it?
- db48x 6y agoAbsolutely. There was no isolation between programs. In fact, you could write new programs by reusing parts of existing programs.
- rjsw 6y agoThe closest modern equivalent is probably a paravirtualized unikernel.