Tachyon Kernel Design review
Posted: Sat May 30, 2009 9:12 am
Hi all
i spent some time recently on thinking about a reasonable kernel design (also reading some of the design related posts here), and came up with the following (Image attached...).
Just as a quick additional explanation:
1) Photon is more or less a "stage 3 bootloader". after grub loads it, it sets up the long more environment, and calls tachyon (after loading the right things from the TSI (Tachyon System Image). The TSI is more or less equal to a virtual hard disk with differencing disks, which makes it possible to (for example) store user changes to the system in a seperate differencing disk and (on demand, if the kernel doesn't boot anymore) simply load without those changes, effectively resulting in an unmodified base system. the TSI should contain the kernel itself and all (or many of) the basic drivers.
"Priviledged" means really "Ring 0", "Semipriviledged" is "Ring 1" and "Unpriviledged" is "Ring 3".
All of this is far from complete/finished, so i know there are many things (especially devices of course) missing. Basically i want to create a "basic" design, and not a complete diagram of all supported devices, so the ones that *are* in the graph are exemplary only. Also there may not be all the relationships correct ATM (for example i just saw, that the DataServer will most probably depend on the Device Management to get informed if a new disk becomes available, etc., etc.).
Any big ideas/comments/critics/scolding or simply questions on this? Any words appreciated!
Thanks for taking the Time to review, i know it grew a little big in the last hours
i spent some time recently on thinking about a reasonable kernel design (also reading some of the design related posts here), and came up with the following (Image attached...).
Just as a quick additional explanation:
1) Photon is more or less a "stage 3 bootloader". after grub loads it, it sets up the long more environment, and calls tachyon (after loading the right things from the TSI (Tachyon System Image). The TSI is more or less equal to a virtual hard disk with differencing disks, which makes it possible to (for example) store user changes to the system in a seperate differencing disk and (on demand, if the kernel doesn't boot anymore) simply load without those changes, effectively resulting in an unmodified base system. the TSI should contain the kernel itself and all (or many of) the basic drivers.
"Priviledged" means really "Ring 0", "Semipriviledged" is "Ring 1" and "Unpriviledged" is "Ring 3".
All of this is far from complete/finished, so i know there are many things (especially devices of course) missing. Basically i want to create a "basic" design, and not a complete diagram of all supported devices, so the ones that *are* in the graph are exemplary only. Also there may not be all the relationships correct ATM (for example i just saw, that the DataServer will most probably depend on the Device Management to get informed if a new disk becomes available, etc., etc.).
Any big ideas/comments/critics/scolding or simply questions on this? Any words appreciated!
Thanks for taking the Time to review, i know it grew a little big in the last hours