Skip to content

Commit d828861

Browse files
committed
doc: extend About section with Example Use Cases
1 parent 7ba9f3b commit d828861

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

uefi/src/lib.rs

+17-4
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,24 @@
2020
//! _Note that for producing EFI images, you also need to use a corresponding
2121
//! `uefi` compiler target of Rust, such as `x86_64-unknown-uefi`._
2222
//!
23-
//! # Interaction with uefi services
23+
//! ## Use Cases
2424
//!
25-
//! With this crate you can write code for the pre- and post-exit boot services
26-
//! epochs. However, the `uefi` crate unfolds its true potential when
27-
//! interacting with UEFI boot services.
25+
//! This crate allows you to write code for both pre- and post-exit boot
26+
//! services phases. However, its true strength shines when creating EFI images
27+
//! that interact with UEFI boot services and ultimately exit them.
28+
//!
29+
//! When we mention EFI images, we're talking about EFI applications, EFI boot
30+
//! service drivers, and EFI runtime service drivers, which typically have the
31+
//! `.efi` file extension. For instance, an EFI application could be an
32+
//! OS-specific loader, similar to _GRUB_ or _Limine_.
33+
//!
34+
//! Additionally, you can use this crate with non-EFI images (such as a kernel
35+
//! in ELF format) to perform tasks like parsing the UEFI memory map embedded in
36+
//! the boot information provided by a bootloader, such as _GRUB_ or _Limine_.
37+
//! It also enables access to UEFI runtime services from a non-EFI image kernel.
38+
//!
39+
//! In summary, `uefi` is addressing the entire spectrum of your development
40+
//! needs
2841
//!
2942
//! ## Supported Architectures
3043
//!

0 commit comments

Comments
 (0)