The start of a VFS
I just pushed some code into master that can parse a tar archive. I decided to use tar as the format for Symmetry’s ramdisks because it means that I can have the ramdisk generated by just putting one line in a makefile (instead of having to make a custom utility to make it), and because it makes it far easier to edit the ramdisk again without needing a custom tool.
Right now, the names and contents of the files on the ramdisk are just printed out at startup, but eventually the files on the ramdisk will be added to the VFS (which I am yet to write). After I’ve got the VFS going, (and written some better heap management), I’m probably going to have a crack at putting elf executables on the ramdisk and have Symmetry parse and execute them! I’ll also do multitasking and user mode then, so I can run more than one executable at once, and run them at lower privileges than the kernel.