Ron Minnich
On this episode of On the Metal, we interview Ron Minnich. Ron has had a fascinating career working on the interface between software and hardware. Join us to hear a mesmerizing conversation about Unix, Plan9, LinuxBIOS, Chromebooks, RISC-V, of course some Gentoo jokes, flip flop programming toys, and more!
Some of the highlights of the show include:
- Netboot - Sun Microsystems: https://www.netbsd.org/docs/network/netboot/intro.sun.html https://wiki.gentoo.org/wiki/Sparc/Netboot/de
- PCI - self defining hardware: https://www.pcisecuritystandards.org/pdfs/pci_ssc_quick_guide.pdf
- Dip switches and jumpers: https://www.oreilly.com/library/view/pc-hardware-in/059600513X/ch02s03s05.html
- VA Linux cluster: https://itsfoss.com/story-of-va-linux/ https://en.wikipedia.org/wiki/Geeknet
- Intel L440 motherboard: https://www.ebay.com/c/1079625591
- Autoexec.bat: https://www.computerhope.com/jargon/a/autoexec.htm https://en.wikipedia.org/wiki/AUTOEXEC.BAT
- LinuxBIOS: https://www.linuxjournal.com/article/4888 https://doc.coreboot.org/ https://en.wikipedia.org/wiki/Coreboot
- DRAM training code (DDR): https://blog.asset-intertech.com/test_data_out/2014/11/memory-training-testing-and-margining.html https://github.com/librecore-org/librecore/wiki/Understanding-DDR-Memory-Training
- Eric Biederman: https://www.linuxjournal.com/article/4888 https://en.wikipedia.org/wiki/Linux_namespaces
- Open Source Firmware Conference: https://osfc.io
- Buildroot: https://buildroot.org/
- Source code for cat: https://twobithistory.org/2018/11/12/cat.html https://github.com/coreutils/coreutils/blob/master/src/cat.c
- whereis command: https://linux.die.net/man/1/whereis
- Gentoo: https://www.gentoo.org/
- ChromeOS project & source code: https://www.chromium.org/chromium-os https://opensource.google/projects/chromium-os https://chromium.googlesource.com/
- Gentoo USE flags: https://wiki.gentoo.org/wiki/USE_flag
- Gentoo compiling GCC meme: https://twitter.com/mrtazz/status/674319383951446016
- Rust LLVM: https://rust-lang.github.io/rustc-guide/codegen/updating-llvm.html https://github.com/rust-lang/rust/tree/master/src/rustllvm
- Ken Thompson’s C compiler in plan9: http://doc.cat-v.org/bell_labs/new_c_compilers/
- Reflections on Trusting Trust paper: https://www.cs.cmu.edu/~rdriley/487/papers/Thompson_1984_ReflectionsonTrustingTrust.pdf
- 1145 computer
- Relay computers: http://relaysbc.sourceforge.net/history.html
- HP 2100: https://en.wikipedia.org/wiki/HP_2100 https://www.hpmuseum.net/exhibit.php?class=3&cat=31
- SR33 paper tape punch in reader: https://en.wikipedia.org/wiki/Teletype_Model_33
- Dr. Nim: https://en.wikipedia.org/wiki/Dr._Nim
- Think-a-Dot: https://www.jaapsch.net/puzzles/thinkadot.htm
- E.S.R Inc: https://en.wikipedia.org/wiki/E.S.R.,_Inc.
- Digi-Comp: https://en.wikipedia.org/wiki/Digi-Comp_II
- Turning Tumble (modern day Dr. Nim): https://www.turingtumble.com/
- ILLIAC: https://en.wikipedia.org/wiki/ILLIAC
- Geniac: https://en.wikipedia.org/wiki/Geniac
- Edmund Berkeley: https://en.wikipedia.org/wiki/Edmund_Berkeley
- Artist in France made a digital clock where the flip flops are LEDs
- Quantum Supremacy: https://ai.googleblog.com/2019/10/quantum-supremacy-using-programmable.html
- Stored-program computer: https://en.wikipedia.org/wiki/Stored-program_computer
- ACPI: https://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface
- Plan9: https://9p.io/plan9/ http://doc.cat-v.org/plan_9/ https://en.wikipedia.org/wiki/Plan_9_from_Bell_Labs
- Microservices revolution: https://www.infoq.com/articles/microservices-revolution/
- Unix synthetic filesystem: https://en.wikipedia.org/wiki/Synthetic_file_system http://9p.cat-v.org/ http://man.cat-v.org/unix_8th/4/proc
- /dev/tcp
- Rob Pike talk on how to go wrong with naming: https://www.youtube.com/watch?v=5kj5ApnhPAE
- Los Alamos Q cluster: https://www.networkworld.com/article/2338572/los-alamos-builds-largest-infiniband-cluster.html
- VPROC: https://books.google.com/books?id=sr71_M6r3cAC&pg=PA567&lpg=PA567&dq=Vproc&source=bl&ots=Od936MFpvu&sig=ACfU3U3XSlMkeII4fMtpN3QOCRaOkSZJzw&hl=en&sa=X&ved=2ahUKEwjI3d_ZpLnmAhWVoJ4KHQTRD0cQ6AEwCXoECAoQAQ#v=onepage&q=Vproc&f=false
- InfiniBand: https://en.wikipedia.org/wiki/InfiniBand
- Broadcom SDK > 14 million lines of code: https://www.broadcom.com/products/pcie-switches-bridges/software-dev-kit
- Ignition firmware intel ½ megabite: https://edk2.groups.io/g/devel/message/50920 https://hardenedlinux.github.io/firmware/2016/11/17/neutralize_ME_firmware_on_sandybridge_and_ivybridge.html
- American Megatrends (AMI): https://ami.com/en/
- Intel Open Source Technology Summit: https://01.org/blogs/imad/2019/intel-open-source-technology-summit-osts-highlights
- System76: https://github.com/system76/firmware-open https://system76.com/
- Purism: https://puri.sm/
- Chromebook virtualization: https://chromium.googlesource.com/chromiumos/docs/+/8c8ac04aed5d45bb6a14605c422dbbd01eeadf15/containers_and_vms.md
- webboot: https://github.com/u-root/webboot
- Joanna Rutkowska Qubes: https://www.qubes-os.org/
- Open Compute Project Incubation Committee: https://www.opencompute.org/about/ocp-incubation-committee
- ITRenew: https://www.itrenew.com/
- Boot Guard: https://github.com/corna/me_cleaner/wiki/Intel-Boot-Guard
- Circular economy: https://www.ellenmacarthurfoundation.org/circular-economy/concept
- UEFI and RISC-V: https://riscv.org/wp-content/uploads/2016/01/Tues1415-RISC-V-and-UEFI.pdf
- Jess’ ACM Queue Article on Open Firmware: https://queue.acm.org/detail.cfm?id=3349301
- Up-board: https://up-board.org/
- RISC-V opensbi: https://github.com/riscv/opensbi
- RISC-V lessons learned from other architecture sets: https://people.eecs.berkeley.edu/~krste/papers/EECS-2016-1.pdf
- oreboot: https://github.com/oreboot/oreboot
- HiFive Unleashed: https://www.sifive.com/boards/hifive-unleashed
- OpenTitan: https://opentitan.org/
- Bug in rust atomics rv32 imc: https://github.com/rust-lang/rust/issues/66240
- RISC-V M-mode: https://content.riscv.org/wp-content/uploads/2017/12/Tue0942-riscv-hypervisor-waterman.pdf
- SciFive processors: https://www.sifive.com/
- ACPI consortium code: https://www.coreboot.org/ACPI