newsfilter.io
Interview

What is an Operating System? with Anil Madhavapeddy

  • The Mirage project is expected to evolve into the default system programming method as its signatures integrate into the standard community.
  • A formal specification for OCaml is emerging with a projected completion window of five to ten years.
  • OCaml 5.0 is anticipated to compile nearly all existing code from the past 25 years with a minimal performance penalty, though the release date remains contingent on community testing and bug reports.
  • OCaml 5.0 will introduce multi-core parallelism via the Domains interface while maintaining an invisible transition to ensure backwards compatibility and prevent ecosystem fragmentation.
  • The language is expected to adopt a cleaner memory model than C++ and Java to avoid data race issues that can spread across a program, with data races constrained in space and time.
  • Data races in OCaml will be limited to specific execution contexts, preventing them from propagating to the rest of the program or across multiple executions.
  • OCaml 5.1 is planned to enable direct expression of concurrency, allowing multiple threads of control to be interleaved naturally.
  • The runtime parts of the effect system will be proposed for OCaml 5.1.
  • Future versions, likely OCaml 5.2, will expose the effect system into the core language using effect handlers and type defect handlers.
  • The eio effect stack is expected to be pure direct style code with performance competitive with or exceeding Rust and Go, potentially faster than Go by a significant margin.
  • System abstractions will be rebuilt in direct style code using the effect system to create more "Mirage-y" implementations that internalize a decade of learnings regarding portability and drivers.
  • The eio stack will invisibly manage low-level OS subsystems such as io_uring, Grand Central Dispatch, and IOCP within the OCaml runtime.
  • Application-specific scheduling logic will be expressible in OCaml to optimize performance beyond kernel capabilities.
  • Fibers within the effect system will be migratable between cores, allowing them to be resumed on different cores via OCaml code.
  • Extending OCaml with Rust-style features is expected to be more feasible than rewriting entire codebases in Rust or other new languages.
  • Large bodies of code with established semantics are expected to be transformable into other languages and future semantic models.
  • Millions of sensors are planned for global deployment in climate change projects using Mirage OS on RISC-V hardware.
  • The German government's Robo team plans to deploy secure VPN tunnels and lightweight overlay networks using unikernels.
  • The reach of unikernels in critical internet infrastructure is predicted to expand in the coming years.
  • The Mirage journey will continue across various pads and use cases as the technology adapts to new contexts.