This transcript captures the proceedings of a Plan 9 conference day, beginning with extensive logistical announcements regarding the venue, schedule, social events, and catering. It includes an update from the Plan 9 Foundation, detailing its history, recent achievements (like 501c3 status and source code acquisition from Nokia), and future goals, including securing funding and hardware. The technical sessions cover a diverse range of topics: Ron Minnik discusses a novel approach to running Virtual Machines as lightweight threads within Plan 9, leveraging a "double page" memory management technique. Anthony presents "Nile," a new window system for Plan 9 derived from Rio, emphasizing increased transparency by eliminating most menus and adopting new scroll behaviors. An unnamed speaker introduces "TWD," a Go-based web server for Plan 9 that multiplexes domains using a hierarchical namespace mapped to Go's io/fs.FS interface, inspired by Plan 9's file system principles. Aris Kadra details "Uglandix," a user-mode Glandix that aims to run Plan 9 binaries on Linux using syscall_user_dispatch, sharing his progress and challenges with Linux's v9fs. Paul presents the revival of "Nyx," an OS architecture dedicating specific CPU cores (Application Cores) for unperturbed process execution, with other cores handling OS tasks. Edward explores running WebAssembly (and WASI) on Inferno using his "Akeron" runtime, aiming to bridge modern portable binaries with Inferno's environment. Paul returns to discuss the complexities of Public Key Infrastructure (PKI) and X.509 certificate validation on Plan 9, proposing a new service, auth/pki, to handle this robustly. Brian Stewart presents his ENIAC simulator running on a Raspberry Pi under Plan 9, focusing on interfacing a physical replica of the ENIAC's portable control box and driving an LED display array using various scheduling techniques, including real-time and kernel-level drivers. Finally, Jeff Collier provides a personal historical account of Plan 9's evolution, from its Unix roots through various editions, key projects like Inferno and Venti, hardware ports, and his contributions to the system, concluding with reflections on its legacy and future.
Plan 9 Conference Talks and Discussions
0:00:03 Event Kick-off & Logistics: The conference began with a welcome and detailed logistical arrangements, including venue rules, food and drink restrictions, social event details, lightning talk sign-ups, and changes to Sunday's venue.
0:05:30 Plan 9 Foundation Update: Ron Minnik provided an update on the Plan 9 Foundation, highlighting its 5-year history, key achievements (conference revival, 501c3 status, source code reacquisition from Nokia), and future objectives (funding, hardware, lab hosting).
0:08:44 VMs as Threads (Ron Minnik): Ron Minnik discussed integrating Virtual Machines into Plan 9 as lightweight threads using a "double page" memory management technique in Ninefront. This approach leverages Plan 9's VMX device and a new /dev/z to map guest I/O to host syscalls, enabling fast, isolated environments and low-level code testing.
01:21:32 Nile - A New Window System for Plan 9 (Anthony): Anthony introduced "Nile," a new window system for Plan 9, derived from Rio, aiming for increased transparency and simplified user interaction by eliminating most menus and adopting modeless scrolling. It also includes per-window font files.
04:34:53 TWD - A Hierarchical Web Server (Unnamed Speaker): An unnamed speaker presented "TWD," a Go-based web server for Plan 9 that multiplexes domains using a hierarchical namespace mapped to Go's io/fs.FS interface, inspired by Plan 9's file system principles. It supports modern web protocols and automatic certificate renewal.
04:56:19 Uglandix - User-mode Glandix (Aris Kadra): Aris Kadra detailed "Uglandix," an effort to run Plan 9 binaries on Linux in user mode by intercepting Plan 9 syscalls via Linux's syscall_user_dispatch. While capable of running basic utilities, challenges remain with Linux's v9fs client and bootstrapping portability.
05:26:36 Nyx Revived (Paul): Paul discussed the revival of "Nyx," an operating system architecture that dedicates specific CPU cores (Application Cores) for unperturbed user process execution, with other cores (Time Sharing Cores) handling OS tasks and interrupts. A proof-of-concept is running on Ninefront.
05:57:26 WebAssembly on Inferno (Edward): Edward presented "Akeron," a WebAssembly (Wasm) runtime for Inferno, aiming to bring modern portable binaries (with WASI for system calls) to the OS. The runtime can execute simple Wasm modules, with future work focusing on full WASI compliance and graphical capabilities.
06:24:03 PKI on Plan 9 (Paul): Paul addressed the limitations of Plan 9's current Public Key Infrastructure (PKI) handling for modern web security and proposed auth/pki, a new file system-interfaced service for robust X.509 certificate chain and name validation. Significant challenges remain in implementing robust name verification and modifying libsec's TLS API.
07:17:40 ENIAC Simulator on Plan 9/Raspberry Pi (Brian Stewart): Brian Stewart showcased his ENIAC simulator running on a Raspberry Pi under Plan 9, featuring a physical replica control box interfaced via GPIO and a 16x64 LED display. He demonstrated various display driving techniques, concluding that a minimal kernel driver provided the most stable performance.
07:59:54 Evolution of Plan 9 (Jeff Collier): Jeff Collier provided a personal historical account of Plan 9's evolution, from its Unix origins through various editions, including key projects like Inferno and Venti, hardware ports, and his contributions to the 64-bit kernel and file servers. He concluded with reflections on its legacy and future, including a call to "defeat git."