System Firmware: An Essential Guide to Open Source and Embedded Solutions
- 6h 18m
- Subrata Banik, Vincent Zimmer
- Apress
- 2022
Find the right bootloader solution or combination of firmware required to boot a platform considering its security, product features, and optimized boot solutions. This book covers system boot firmware, focusing on real-world firmware migration from closed source to open source adaptation.
The book provides an architectural overview of popular boot firmware. This includes both closed sourced and/or open source in nature, such as Unified Extensible Firmware Interface (UEFI), coreboot, and Slim Bootloader and their applicable market segments based on product development and deployment requirements.
Traditional system firmware is often complex and closed sourced whereas modern firmware is still a kind of hybrid between closed and open source. But what might a future firmware model look like? The most simplistic boot firmware solution uses open source firmware development. This book helps you decide how to choose the right boot firmware for your products and develop your own boot firmware using open source. Coverage includes:
- Why open source firmware is used over closed source
- The pros and cons of closed and open source firmware
- A hybrid work model: for faster bring-up activity using closed source, binary integrated with open source firmware
What You Will Learn
- Understand the architecture of standard and popular boot firmware
- Pick the correct bootloader for your required target hardware
- Design a hybrid workflow model for the latest chipset platform
- Understand popular payload architectures and offerings for embedded systems
- Select the right payload for your bootloader solution to boot to the operating system
- Optimize the system firmware boot time based on your target hardware requirement
- Know the product development cycle using open source firmware development
Who This Book Is For
Embedded firmware and software engineers migrating the product development from closed source firmware to open source firmware for product adaptation needs as well as engineers working for open source firmware development. A secondary audience includes engineers working on various bootloaders such as open source firmware, UEFI, and Slim Bootloader development, as well as undergraduate and graduate students working on developing firmware skill sets.
About the Author
Subrata Banik is a Firmware Engineer with Intel Corporation and has been involved in firmware development across UEFI, coreboot for IA, and ARM platforms over the course of his career. He has experience working for all leading PC makers. Subrata is active in open source firmware development across different projects such as coreboot, EDKII, etc., and he has more than 600 patches in the open firmware community, and he is one of the top 10 open source firmware contributors. Subrata has 15 patents and is very passionate about learning new technology and sharing knowledge among enthusiast engineers. He has presented at industry events such as the Open Source Firmware Conference, Institute for Security and Technology, Intel Developer Forum, and others.
Vincent Zimmer is a Senior Principal Engineer in the Architecture, Graphics, and Software Group of the Intel corporation. He has been engaged in firmware development for over 25 years and leads the UEFI Security sub-team. Vincent has presented at industry events such as the Open Source Firmware Conference, Linux Fest Northwest, Intel Developer Forum, UEFI Plugfest, Open Compute Project Summit, BlackHat Las Vegas, BSides Seattle, Toorcon, and Cansecwest. In addition to collaborating on many white papers, Vincent has co-authored several books on firmware, papers, and over 400 issued US patents.
In this Book
-
Preface
-
Foreword by Jonathan Zhang
-
Introduction
-
Introduction
-
Knowing Your Hardware
-
Understanding the BIOS and Minimalistic Design
-
System Firmware Architecture
-
Hybrid Firmware Architecture
-
Payload
-
Case Studies
-
Appendix A: Postcodes
-
Appendix B: Data Types
-
Glossary
-
Reference