SlideShare a Scribd company logo
Connect. Collaborate. Accelerate.
Towards Holistic Systems
Bryan Cantrill
CTO, Oxide Computer Company
Connect. Collaborate. Accelerate.
Holistic systems
• In the beginning, computing systems were tautologically
holistic, consisting of co-designed hardware and software
• System software was delivered with the computer, and often
had to be newly developed for a new machine
• Requiring new software for new hardware created schedule
delays, viz. OS/360 and The Mythical Man Month
• With the advent of Unix, system software became portable –
it could be ported rather than developed de novo for each
new computer…
Connect. Collaborate. Accelerate.
The PC era
• With the rise of the PC, however, the hardware became
irreconcilably divorced from the system software
• Hardware enabling-software was driven into the BIOS
• The BIOS interface became what system software bound to
– it became the definition of “compatibility”
• Worse, the software on both sides of the BIOS/OS divide
were nearly exclusively proprietary, serving to harden the
boundary
Connect. Collaborate. Accelerate.
It gets worse: SMM
• The BIOS was not content to be inert: in order to be able
implement system software functionality delivered by the
hardware, system management mode was invented
• SMM allows effectively arbitrary code execution at arbitrary
time without even allowing system software awareness
• This is the opposite of a holistic system: it is one that has
been deliberately and perniciously divided
Connect. Collaborate. Accelerate.
EFI/UEFI
• All of this might have been fine had x86 remained relegated
to personal computing…
• …but Intel and AMD out-executed the RISC vendors in the
2000s, forcing PC constructs into the server space
• Starting with (ill-fated) Itanium, Intel introduced EFI in an
attempt to modernize…
Connect. Collaborate. Accelerate.
UEFI: What might have been
Connect. Collaborate. Accelerate.
UEFI: What happened instead
• While its goals were laudable, UEFI was overconstrained
• In particular, the need for legacy and Windows compatibility
required UEFI to support all past abstractions
• UEFI has become the worst of all worlds: complicated,
proprietary software that remains at once isolated from –
yet also still entirely entangled with! – system software
• UEFI is unquestionably not the way you would do it if you
could do it from scratch – especially in a post-cloud and
post-open source world!
Connect. Collaborate. Accelerate.
Oxide’s approach
• At Oxide, we are taking a from-scratch, rack-scale approach
to server-side computing
• We have AMD Milan-based compute sleds of our own design
• We do not have a traditional BMC, but rather a fit-to-purpose
service processor running our own (Rust-based, open
source) operating system
• Our approach is integrated, yet open
• Could we develop a truly holistic system on x86?
Connect. Collaborate. Accelerate.
Aside: AMD Details
• On AMD, the Platform Security Processor (PSP) is a
non-architectural core that executes proprietary software to
perform system initialization – including DRAM training
• System management controller (SP in our case) puts the
PSP payload into SPI flash and brings the CPU out of reset
• The PSP will perform its initialization and eventually vector
into host software executing on the bootstrap core (BSC)
• Historically, post-PSP initialization done by AMD’s AGESA
firmware – which makes a holistic system impossible
Connect. Collaborate. Accelerate.
Challenge #1: Initialization
• To implement holistic boot, system software must perform
the activities historically done by AGESA
• Modern CPUs are very complicated! Post-PSP initialization
includes configuring I/O interconnects, core complexes, etc.
• For AMD Milan, this specifically includes DXIO engine
configuration, NBIO PCIe strapping, hotplug configuration
• The software that has implemented this level of initialization
has historically been done by the CPU vendor; these
interfaces are not always documented thoroughly – if at all!
Connect. Collaborate. Accelerate.
Challenge #2: Boot Phasing
• Payload that boots from PSP is size-constrained to ~13MB
• Stage-based approaches (e.g., oreboot + LinuxBoot) use
Linux drivers to load (and execute) a production kernel
• This necessitates a pseudo-reset of the system – as well as
the creation or emulation of an interface (e.g., ACPI) to pass
system state to later stages
• Instead must adopt a phase-based approach whereby part
of the system is loaded from SPI NOR and is able to load the
remainder from SSDs – but the system is never discarded
Connect. Collaborate. Accelerate.
• Helios is our illumos derivative that includes the Oxide
bhyve-based hypervisor
• We have holistic Helios booting on our compute sleds!
• Importantly, this includes all necessary functionality for
platform initialization (I/O, SMP, etc.)
• Currently working on phasing – but this is much lower risk
than platform enablement
• Helios – along with all Oxide-authored software – will be
open source when we ship our first racks later this year!
Holistic booting!
Connect. Collaborate. Accelerate.
Towards Holistic Systems
• Holistic systems have clear advantages in terms of reliability,
security, observability, manageability, sustainability, etc.
• Based on our experience to date, holistic systems are
challenging to implement but emphatically attainable
• Documentation from microprocessor vendors is essential;
they have much to gain by encouraging more enablement
software on their platforms!
• Oxide may represent the first open, holistic server-side
system in the post-PC x86 era – but unlikely to be the last!

More Related Content

PDF
The Coming Firmware Revolution
bcantrill
 
PDF
I have come to bury the BIOS, not to open it: The need for holistic systems
bcantrill
 
PDF
Wireshark だけに頼らない! パケット解析ツールの紹介
morihisa
 
PDF
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
 
PDF
OPC UAをオープンソースやフリーのソフトで遊んでみた
ミソジ
 
PPTX
クラウドネイティブ時代の大規模ウォーターフォール開発(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
 
PDF
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
CODE BLUE
 
PDF
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
 
The Coming Firmware Revolution
bcantrill
 
I have come to bury the BIOS, not to open it: The need for holistic systems
bcantrill
 
Wireshark だけに頼らない! パケット解析ツールの紹介
morihisa
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
Kuniyasu Suzaki
 
OPC UAをオープンソースやフリーのソフトで遊んでみた
ミソジ
 
クラウドネイティブ時代の大規模ウォーターフォール開発(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
 
[cb22] Hayabusa Threat Hunting and Fast Forensics in Windows environments fo...
CODE BLUE
 
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
 

What's hot (20)

PDF
30分でわかる! コンピュータネットワーク
Trainocate Japan, Ltd.
 
PDF
DockerとPodmanの比較
Akihiro Suda
 
PDF
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
 
PDF
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
 
PDF
PostgreSQL 15 開発最新情報
Masahiko Sawada
 
PDF
[Container Runtime Meetup] runc & User Namespaces
Akihiro Suda
 
PDF
ノリとその場の勢いでPocを作った話
zaki4649
 
PDF
DockerとKubernetesをかけめぐる
Kohei Tokunaga
 
PDF
データベース屋がHyperledger Fabricを検証してみた
LFDT Tokyo Meetup
 
PPTX
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
 
PDF
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
VirtualTech Japan Inc.
 
PDF
Dynamics 365 Customer Engagement 理解のススメ -サブスクリプションビジネスモデルから読み解くカスタマーサポート機能活用の...
Kazuya Sugimoto
 
PDF
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
NTT DATA Technology & Innovation
 
PPTX
BigData Architecture for Azure
Ryoma Nagata
 
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
NTT DATA OSS Professional Services
 
PDF
マイクロサービス 4つの分割アプローチ
増田 亨
 
PPTX
脱RESTful API設計の提案
樽八 仲川
 
PPTX
Azure Cosmos DB のキホンと使いドコロ
Kazuyuki Miyake
 
PPTX
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
Shinji Takao
 
PDF
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
Jumpei Miyata
 
30分でわかる! コンピュータネットワーク
Trainocate Japan, Ltd.
 
DockerとPodmanの比較
Akihiro Suda
 
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
 
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
NTT DATA Technology & Innovation
 
PostgreSQL 15 開発最新情報
Masahiko Sawada
 
[Container Runtime Meetup] runc & User Namespaces
Akihiro Suda
 
ノリとその場の勢いでPocを作った話
zaki4649
 
DockerとKubernetesをかけめぐる
Kohei Tokunaga
 
データベース屋がHyperledger Fabricを検証してみた
LFDT Tokyo Meetup
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
 
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
VirtualTech Japan Inc.
 
Dynamics 365 Customer Engagement 理解のススメ -サブスクリプションビジネスモデルから読み解くカスタマーサポート機能活用の...
Kazuya Sugimoto
 
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
NTT DATA Technology & Innovation
 
BigData Architecture for Azure
Ryoma Nagata
 
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
NTT DATA OSS Professional Services
 
マイクロサービス 4つの分割アプローチ
増田 亨
 
脱RESTful API設計の提案
樽八 仲川
 
Azure Cosmos DB のキホンと使いドコロ
Kazuyuki Miyake
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
Shinji Takao
 
開発者の生産性向上を妨げる障壁と サイボウズの生産性向上チームの取り組み
Jumpei Miyata
 
Ad

Similar to Towards Holistic Systems (20)

PDF
Beyond BIOS Developing with the Unified Extensible Firmware Interface Third E...
azyrahednea
 
PDF
Embedded Linux primer
Drew Fustini
 
PDF
OSMC 2019 | Monitoring Alerts and Metrics on Large Power Systems Clusters by ...
NETWAYS
 
PDF
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
The Linux Foundation
 
PDF
OpenPOWER Acceleration of HPCC Systems
HPCC Systems
 
PDF
Beyond Bios Implementing the Unified Extensible Firmware Interface with Intel...
molamoajju
 
PDF
IRJET - Development of Embedded Linux System from Bare Board
IRJET Journal
 
DOCX
Review paper on bios vs uefi
Faizan Mushtaq
 
PPT
Developing a Windows CE OAL.ppt
KundanSingh887495
 
PPTX
An Introduction to RISC-V bootflow
Atish Patra
 
PDF
Yocto Project Linux as a platform for embedded system design
Alex Gonzalez
 
PDF
Develop Your Own Operating Systems using Cheap ARM Boards
National Cheng Kung University
 
PDF
Quick Boot A Guide for Embedded Firmware Developers 2nd Edition TEXT searchab...
merklgomaav1
 
PDF
Intro to linux
Islam Nabil
 
PDF
The syslinux project - Overview of a modern bootloader
pool710
 
PPTX
Developing Real-Time Systems on Application Processors
Toradex
 
PPTX
Opening last bits of the infrastructure
Erwan Velu
 
PDF
20141111_SOS3_Gallo
Andrea Gallo
 
PDF
Quick Boot A Guide for Embedded Firmware Developers 2nd Edition Pete Dice
bleilkobosjw
 
PPS
Sioux Hot-or-Not: The future of Linux (Alan Cox)
siouxhotornot
 
Beyond BIOS Developing with the Unified Extensible Firmware Interface Third E...
azyrahednea
 
Embedded Linux primer
Drew Fustini
 
OSMC 2019 | Monitoring Alerts and Metrics on Large Power Systems Clusters by ...
NETWAYS
 
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
The Linux Foundation
 
OpenPOWER Acceleration of HPCC Systems
HPCC Systems
 
Beyond Bios Implementing the Unified Extensible Firmware Interface with Intel...
molamoajju
 
IRJET - Development of Embedded Linux System from Bare Board
IRJET Journal
 
Review paper on bios vs uefi
Faizan Mushtaq
 
Developing a Windows CE OAL.ppt
KundanSingh887495
 
An Introduction to RISC-V bootflow
Atish Patra
 
Yocto Project Linux as a platform for embedded system design
Alex Gonzalez
 
Develop Your Own Operating Systems using Cheap ARM Boards
National Cheng Kung University
 
Quick Boot A Guide for Embedded Firmware Developers 2nd Edition TEXT searchab...
merklgomaav1
 
Intro to linux
Islam Nabil
 
The syslinux project - Overview of a modern bootloader
pool710
 
Developing Real-Time Systems on Application Processors
Toradex
 
Opening last bits of the infrastructure
Erwan Velu
 
20141111_SOS3_Gallo
Andrea Gallo
 
Quick Boot A Guide for Embedded Firmware Developers 2nd Edition Pete Dice
bleilkobosjw
 
Sioux Hot-or-Not: The future of Linux (Alan Cox)
siouxhotornot
 
Ad

More from bcantrill (20)

PDF
Predicting the Present
bcantrill
 
PDF
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
 
PDF
Coming of Age: Developing young technologists without robbing them of their y...
bcantrill
 
PDF
Hardware/software Co-design: The Coming Golden Age
bcantrill
 
PDF
Tockilator: Deducing Tock execution flows from Ibex Verilator traces
bcantrill
 
PDF
No Moore Left to Give: Enterprise Computing After Moore's Law
bcantrill
 
PDF
Andreessen's Corollary: Ethical Dilemmas in Software Engineering
bcantrill
 
PDF
Visualizing Systems with Statemaps
bcantrill
 
PDF
Platform values, Rust, and the implications for system software
bcantrill
 
PDF
Is it time to rewrite the operating system in Rust?
bcantrill
 
PDF
dtrace.conf(16): DTrace state of the union
bcantrill
 
PDF
The Hurricane's Butterfly: Debugging pathologically performing systems
bcantrill
 
PDF
Papers We Love: ARC after dark
bcantrill
 
PDF
Principles of Technology Leadership
bcantrill
 
PDF
Zebras all the way down: The engineering challenges of the data path
bcantrill
 
PDF
Platform as reflection of values: Joyent, node.js, and beyond
bcantrill
 
PDF
Debugging under fire: Keeping your head when systems have lost their mind
bcantrill
 
PDF
Down Memory Lane: Two Decades with the Slab Allocator
bcantrill
 
PDF
The State of Cloud 2016: The whirlwind of creative destruction
bcantrill
 
PDF
Oral tradition in software engineering: Passing the craft across generations
bcantrill
 
Predicting the Present
bcantrill
 
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
 
Coming of Age: Developing young technologists without robbing them of their y...
bcantrill
 
Hardware/software Co-design: The Coming Golden Age
bcantrill
 
Tockilator: Deducing Tock execution flows from Ibex Verilator traces
bcantrill
 
No Moore Left to Give: Enterprise Computing After Moore's Law
bcantrill
 
Andreessen's Corollary: Ethical Dilemmas in Software Engineering
bcantrill
 
Visualizing Systems with Statemaps
bcantrill
 
Platform values, Rust, and the implications for system software
bcantrill
 
Is it time to rewrite the operating system in Rust?
bcantrill
 
dtrace.conf(16): DTrace state of the union
bcantrill
 
The Hurricane's Butterfly: Debugging pathologically performing systems
bcantrill
 
Papers We Love: ARC after dark
bcantrill
 
Principles of Technology Leadership
bcantrill
 
Zebras all the way down: The engineering challenges of the data path
bcantrill
 
Platform as reflection of values: Joyent, node.js, and beyond
bcantrill
 
Debugging under fire: Keeping your head when systems have lost their mind
bcantrill
 
Down Memory Lane: Two Decades with the Slab Allocator
bcantrill
 
The State of Cloud 2016: The whirlwind of creative destruction
bcantrill
 
Oral tradition in software engineering: Passing the craft across generations
bcantrill
 

Recently uploaded (20)

PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
PPTX
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Doc9.....................................
SofiaCollazos
 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
Security features in Dell, HP, and Lenovo PC systems: A research-based compar...
Principled Technologies
 
OA presentation.pptx OA presentation.pptx
pateldhruv002338
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Doc9.....................................
SofiaCollazos
 
Simple and concise overview about Quantum computing..pptx
mughal641
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 

Towards Holistic Systems

  • 1. Connect. Collaborate. Accelerate. Towards Holistic Systems Bryan Cantrill CTO, Oxide Computer Company
  • 2. Connect. Collaborate. Accelerate. Holistic systems • In the beginning, computing systems were tautologically holistic, consisting of co-designed hardware and software • System software was delivered with the computer, and often had to be newly developed for a new machine • Requiring new software for new hardware created schedule delays, viz. OS/360 and The Mythical Man Month • With the advent of Unix, system software became portable – it could be ported rather than developed de novo for each new computer…
  • 3. Connect. Collaborate. Accelerate. The PC era • With the rise of the PC, however, the hardware became irreconcilably divorced from the system software • Hardware enabling-software was driven into the BIOS • The BIOS interface became what system software bound to – it became the definition of “compatibility” • Worse, the software on both sides of the BIOS/OS divide were nearly exclusively proprietary, serving to harden the boundary
  • 4. Connect. Collaborate. Accelerate. It gets worse: SMM • The BIOS was not content to be inert: in order to be able implement system software functionality delivered by the hardware, system management mode was invented • SMM allows effectively arbitrary code execution at arbitrary time without even allowing system software awareness • This is the opposite of a holistic system: it is one that has been deliberately and perniciously divided
  • 5. Connect. Collaborate. Accelerate. EFI/UEFI • All of this might have been fine had x86 remained relegated to personal computing… • …but Intel and AMD out-executed the RISC vendors in the 2000s, forcing PC constructs into the server space • Starting with (ill-fated) Itanium, Intel introduced EFI in an attempt to modernize…
  • 7. Connect. Collaborate. Accelerate. UEFI: What happened instead • While its goals were laudable, UEFI was overconstrained • In particular, the need for legacy and Windows compatibility required UEFI to support all past abstractions • UEFI has become the worst of all worlds: complicated, proprietary software that remains at once isolated from – yet also still entirely entangled with! – system software • UEFI is unquestionably not the way you would do it if you could do it from scratch – especially in a post-cloud and post-open source world!
  • 8. Connect. Collaborate. Accelerate. Oxide’s approach • At Oxide, we are taking a from-scratch, rack-scale approach to server-side computing • We have AMD Milan-based compute sleds of our own design • We do not have a traditional BMC, but rather a fit-to-purpose service processor running our own (Rust-based, open source) operating system • Our approach is integrated, yet open • Could we develop a truly holistic system on x86?
  • 9. Connect. Collaborate. Accelerate. Aside: AMD Details • On AMD, the Platform Security Processor (PSP) is a non-architectural core that executes proprietary software to perform system initialization – including DRAM training • System management controller (SP in our case) puts the PSP payload into SPI flash and brings the CPU out of reset • The PSP will perform its initialization and eventually vector into host software executing on the bootstrap core (BSC) • Historically, post-PSP initialization done by AMD’s AGESA firmware – which makes a holistic system impossible
  • 10. Connect. Collaborate. Accelerate. Challenge #1: Initialization • To implement holistic boot, system software must perform the activities historically done by AGESA • Modern CPUs are very complicated! Post-PSP initialization includes configuring I/O interconnects, core complexes, etc. • For AMD Milan, this specifically includes DXIO engine configuration, NBIO PCIe strapping, hotplug configuration • The software that has implemented this level of initialization has historically been done by the CPU vendor; these interfaces are not always documented thoroughly – if at all!
  • 11. Connect. Collaborate. Accelerate. Challenge #2: Boot Phasing • Payload that boots from PSP is size-constrained to ~13MB • Stage-based approaches (e.g., oreboot + LinuxBoot) use Linux drivers to load (and execute) a production kernel • This necessitates a pseudo-reset of the system – as well as the creation or emulation of an interface (e.g., ACPI) to pass system state to later stages • Instead must adopt a phase-based approach whereby part of the system is loaded from SPI NOR and is able to load the remainder from SSDs – but the system is never discarded
  • 12. Connect. Collaborate. Accelerate. • Helios is our illumos derivative that includes the Oxide bhyve-based hypervisor • We have holistic Helios booting on our compute sleds! • Importantly, this includes all necessary functionality for platform initialization (I/O, SMP, etc.) • Currently working on phasing – but this is much lower risk than platform enablement • Helios – along with all Oxide-authored software – will be open source when we ship our first racks later this year! Holistic booting!
  • 13. Connect. Collaborate. Accelerate. Towards Holistic Systems • Holistic systems have clear advantages in terms of reliability, security, observability, manageability, sustainability, etc. • Based on our experience to date, holistic systems are challenging to implement but emphatically attainable • Documentation from microprocessor vendors is essential; they have much to gain by encouraging more enablement software on their platforms! • Oxide may represent the first open, holistic server-side system in the post-PC x86 era – but unlikely to be the last!