Skip to main content

Crate ostool

Crate ostool 

Source
Expand description

§ostool

A comprehensive toolkit for operating system development.

ostool provides utilities for building, running, and debugging operating systems, with special support for embedded systems and bootloader interaction.

§Features

  • Build System: Cargo-based build configuration with customizable options
  • QEMU Integration: Easy QEMU launching with various architectures support
  • U-Boot Support: Serial communication and file transfer via YMODEM
  • TFTP Server: Built-in TFTP server for network booting
  • Menu Configuration: TUI-based configuration editor (like Linux kernel’s menuconfig)
  • Serial Terminal: Interactive serial terminal for device communication

§Modules

  • build - Build system configuration and Cargo integration
  • ctx - Application context and state management
  • menuconfig - TUI-based menu configuration
  • run - QEMU, TFTP, and U-Boot runners
  • sterm - Serial terminal implementation
  • utils - Common utilities and helper functions

§Example

// ostool is primarily used as a CLI tool
// See the binary targets for usage examples

Modules§

board
ostool-server board client and remote terminal integration.
build
Build system configuration and Cargo integration.
ctx
Application context and state management. Application context and runtime state.
logger
Custom file logger for ostool.
menuconfig
TUI-based menu configuration system.
run
Runtime execution modules for QEMU, TFTP, and U-Boot.
sterm
Serial terminal implementation.
utils
Common utilities and helper functions. Common utilities and helper functions.

Structs§

ManifestContext
Resolved Cargo manifest and workspace paths derived from cargo metadata.
Tool
Main library object orchestrating build and run operations.
ToolConfig
Static configuration used to initialize a Tool.

Functions§

resolve_manifest_context