4 ms·
It just means that your compiler is theoretically safe if you build a assembler manually and verify it. This can be done by printing the assembly of the assembl
by sansnomme 7y ago
It just means that your compiler is theoretically safe if you build a assembler manually and verify it. This can be done by printing the assembly of the assembler (an assembler is just a glorified find and replace if you leave out optimizations) and then translate it into machine zeros and ones by hand (See Intel Reference Manual for more details on the translation table). To speed this up, distribute the typing input, use e.g. Mechanical Turk, minimum wage clerks etc. and compare the result from multiple sources to ensure accuracy. Once your confident that your machine code translation is an accurate representation of your assembler, run the assembler on Stage0 and the bootstrap process should take care of itself.
- Gaelan 7y agoHow do you get those zeroes and ones into a machine-readable format, without a trusted text editor or OS?
- nitrogen 7y agoHistorically, switches on the front of the machine.
- kragen 7y agoIf you're willing to trust your hardware, you can theoretically program an SPI Flash chip one bit at a time using two debounced switches. I haven't tried running SPI at sub-kilohertz speeds, much less sub-hertz speeds, and it wouldn't be surprising if that failed to work on some hardware. But you can probably find hardware where it will work. A punched paper tape reader or barcode reader would be a more practical way of programming the Flash than manual toggle switches. If you have a machine that can boot from floppy, you can use an untrusted system to write the floppy, and then verify the contents of the floppy with a magnetic force microscope or magnetic developer fluid, before booting it. It isn't obvious why you would trust the hardware, though, if you didn't fabricate it.
- deleted 7y ago[deleted]