1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

UEFI Makes It Easy To Boot Rust Applications

Operating Systems

Published on 20 November 2013 12:16 AM EST
Written by Michael Larabel in Operating Systems
33 Comments

While (U)EFI is frowned upon by many Linux users due to the security disaster known as Secure Boot or other UEFI compatibility problems with running Linux on systems, there are a few benefits.

One of the benefits to UEFI is that it makes it easier to create a bootable application / operating system -- much easier than the BIOS days. Mozilla's Rust programming language can now even be used for booting to such workloads written entirely in the new programming language. Rust is the safe, concurrent language that came out of research at Mozilla and only reached an alpha state in 2012, but is now up to version 0.8 and can host bootable programs.

Eric Holk wrote on his blog about the ease of use in making a bootable system with UEFI. He went on to make a "Hello World" example running off UEFI in this language partially inspired by C.

Eric began his blog post by explaining, "The thing that surprises me most about UEFI is that it now appears possible to boot your machine without ever writing a single line of assembly language. Booting used to require this tedious process of starting out in 16-bit real mode, then transitioning into 32-bit protected mode and then doing it all over again to get into 64-bit mode. UEFI firmwares, on the other hand, will happily load an executable file that you give it and run your code in 64-bit mode from the start. Your startup function receives a pointer to some functions that give you basic console support, as well as an API to access richer features."

Check out his application to learn more about booting with UEFI or the example Rust program that's hosted on GitHub as Boot2Rust.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. AMD R600g/RadeonSI Performance On Linux 3.16 With Mesa 10.3-devel
  2. Intel Pentium G3258 On Linux
  3. SilverStone Precision PS10
  4. ASRock Z97 Extreme6
Latest Linux Articles
  1. KVM Benchmarks On Ubuntu 14.10
  2. X.Org Server 1.16 Officially Released With Terrific Features
  3. Ubuntu With Linux 3.16 Smashes OS X 10.9.4 On The MacBook Air
  4. Preview: Benchmarking CentOS 7.0 & Scientific Linux 7.0
Latest Linux News
  1. Guix 0.7 Can Now Install The GNU Operating System
  2. X.Org Foundation Still Works Towards Becoming An SPI Project
  3. Open-Source AMD Hawaii Support Should Now Be Working!
  4. KDE Developers Continue Working Toward Wayland Support
  5. Ubuntu 14.04.1 LTS Released
  6. Linux Developers Jump Quickly On ACPI 5.1, Helps Out ARM
  7. Pkg 1.3.0 Released To Improve Package Management On FreeBSD
  8. GOG.com Officially Starts Rolling Out Linux Games
  9. Fedora 21 Has Been Delayed By Three Weeks
  10. Mono Begins To Focus On Performance, Assembles A Team
Latest Forum Discussions
  1. Updated and Optimized Ubuntu Free Graphics Drivers
  2. AMD "Hawaii" Open-Source GPU Acceleration Still Not Working Right
  3. Radeon related kernel bug??
  4. how the US intellegentia operates:
  5. AMD Publishes Open-Source Linux HSA Kernel Driver
  6. Next-Gen OpenGL To Be Announced Next Month
  7. Open-Source Radeon Performance Boosted By Linux 3.16
  8. Remote gui not accessible in Phoronix Test Suite 5.2