-
Notifications
You must be signed in to change notification settings - Fork 8
OS Selection document #73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Remove ARM-specific MPU reference to make document architecture-agnostic - Remove NIST SP 800-193 firmware resiliency reference (not specifically required) - Remove TCG RTM specification reference - Correct author name from "Fife, C." to "Biffle, C. L." - Clean up orphaned citation references [7], [9], [10] in text - Maintain technical content while removing architecture-specific dependencies The document now focuses on OS evaluation criteria without tying to specific hardware architectures or standards that don't mandate the discussed features.
- Replace inaccurate "garbage collection capabilities" with correct description of deterministic memory reclamation through Rust's ownership system - Remove incorrect claim about fragmentation in grant-based allocation - Update technical comparison to accurately reflect Tock's grant mechanism and immediate cleanup on process termination
- Reframe Tock's dynamic features as valuable capabilities rather than problems - Remove dismissive language about complexity and resource management issues - Update conclusion to emphasize choice based on avoiding complexity vs. gaining flexibility - Acknowledge both systems as sophisticated, well-engineered approaches - Replace outdated "research platform" characterization with recognition of Tock's production deployments in security-critical systems (reflecting 2025 maturity) - Remove inappropriate multi-tenancy references for embedded systems - Present decision as context-specific trade-off rather than universal superiority - Maintain technical accuracy while respecting both architectural approaches
- Remove Hubris-specific implementation details from evaluation criteria section - Replace specific mentions of Hubris features with generic requirements - Focus criteria on what OpenPRoT is looking for rather than how systems implement it - Maintain clear separation between requirements (criteria) and solutions (technical analysis) - Keep evaluation criteria neutral and implementation-agnostic
- Replace inaccurate "unforgeable access tokens" with correct description - Change "Minimal HAL" to "Direct Register Access" for clarity - Remove capability-based permissions terminology that doesn't apply to Hubris - Accurately describe that tasks directly manipulate hardware registers - Clarify that permissions are statically configured at compile time
- Add debuggability and system observability as 6th evaluation framework criterion - Include detailed comparison of Hubris's kernel-aware debugging vs Tock's console interfaces - Document Humility debugger's Debug Binary Interface (DBI) architecture - Highlight security advantages of external debugging vs in-application consoles - Add comprehensive coverage of core dump support for post-mortem analysis - Emphasize production-grade debugging capabilities for security-critical systems
- Restructure opening paragraph for better flow and readability - Add paragraph explaining Rust OS requirement rationale
…provements - Add Memory Architecture and SRAM Efficiency analysis to comparison tables - Correct technical understanding of both Hubris and Tock as XIP-capable systems - Replace "Task Model" with "System Composition" for clearer terminology - Update memory efficiency descriptions to use "suitable memory regions" terminology - Improve accuracy of OS characterizations based on actual architectures This enhances the technical accuracy and completeness of the OS evaluation framework.
- Add DOI link for Levy et al. Tock OS academic paper - Fix OpenPRoT GitHub organization reference capitalization - Add link to official online Rust book documentation - Ensure all references are clickable and accessible All references now have proper links for reader access to source materials.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a comprehensive technical whitepaper documenting the OpenPRoT workgroup's evaluation and selection of Hubris as the operating system for the platform root of trust implementation. The document compares Hubris and Tock OS across six critical dimensions and provides detailed technical rationale for the selection decision.
Key changes:
- New design document explaining OS selection criteria and methodology
- Detailed technical comparison of Hubris vs Tock OS architectures
- Justification for selecting Hubris based on security-critical requirements
* moved mention of Hubris from Criteria to Analysis section * removed dead references [9,10]
Co-authored-by: Copilot <[email protected]>
No description provided.