Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Firmware Development

62,99 €

Sofort verfügbar, Lieferzeit: Sofort lieferbar

Format auswählen
Produkt Anzahl: Gib den gewünschten Wert ein oder benutze die Schaltflächen um die Anzahl zu erhöhen oder zu reduzieren.

Firmware Development, Apress
A Guide to Specialized Systemic Knowledge
Von Subrata Banik, Vincent Zimmer, im heise Shop in digitaler Fassung erhältlich

Produktinformationen "Firmware Development"

Build your own system firmware. This book helps you understand system firmware architecture and minimalistic design, and provides a specialized knowledge of firmware development. The book includes guidance on understanding the system firmware build procedure, integrating pieces of firmware and allowing configuration, updating system firmware, creating a development infrastructure for allowing multi-party collaboration in firmware development, and gaining advanced system firmware debugging knowledge.

After reading the book you will be able to assume better control while developing your own firmware and know how to interact with native hardware while debugging. You will understand key principles for future firmware development using newer technology, and be ready for the introduction of modern safe programming languages for firmware development. Detailed system firmware development case studies using a futuristic approach cover:

* Future scalable system firmware development models
* Types of firmware development (system firmware, device firmware, manageability firmware)
* Tools and their usage while creating system firmware
* How to build infrastructure for seamless firmware development using a multi-party development model
* Debugging methodologies used during various phases of firmware product development
* Setting up key expectations for future firmware, including thinner firmware footprints and faster execution time, easier configuration, and increased transparent security

WHAT YOU WILL LEARN

* Understand the system firmware working model of the future
* Gain knowledge to say goodbye to proprietary firmware for different types of firmware development
* Know the different types of tools required for creating firmware source code before flashing the final image into the boot device of the embedded system
* Develop skills to understand the failure in firmware or in the system and prepare the debugging environment to root cause the defects
* Discern the platform minimal security requirement
* Optimize the system firmware boot time based on the target hardware requirement
* Comprehend 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.

SUBRATA BANIK is a Firmware Engineer with more than a decade being spent in the computer industry and acquired experiences in system firmware design, development and debugging across various firmware architectures like UEFI, coreboot, Slim bootloader etc. for x86 and ARM platforms. Subrata has profound experience on platform enablement that leads into working for all the leading PC-makers’ products. Subrata is an active member of open-source firmware (OSF) development across different projects like coreboot, oreboot, flashrom, EDKII etc., where he is one of the leading contributors in the open firmware (coreboot) development. Subrata has received multiple US Patents and is very passionate about learning new technology and sharing knowledge among enthusiast engineers. Subrata has presented his technical talks at industry events such as Open Source Firmware conference, Institute for Security and Technology, Intel Developer Forum etc.

When not writing or working, he can be found enjoying watching sports (especially football) or spending time with his daughter. A fun fact about Subrata is, he is a strong believer of Time travel existence.

VINCENT ZIMMER has been working on embedded firmware for the last 30 years. Vincent has contributed to or created firmware spanning various firmware initiatives, including the Extensible Firmware Interface, where Vincent presently leads the Security subteam in the UEFI Forum. Vincent has also co-authored various papers and books, along with being a named co-inventor on over 450 US patents.

PREFACE: This section to capture the author's personal experience about the need for advanced knowledge for system firmware development and why authors think this book might be helpful for the target audience.

ACKNOWLEDGEMENT: This section acknowledges the contribution of various domain experts.

CHAPTER 1: INTRODUCTION ABOUT THE BOOK: SYSTEM FIRMWARE: AN ESSENTIAL GUIDE TO OPEN SOURCE AND EMBEDDED SOLUTIONS book is an essential book to understand the basic system firmware knowledge and SPECIALIZED SYSTEMIC KNOWLEDGE FOR FIRMWARE DEVELOPMENT is about to going deep into other associated pieces which make the system firmware development complete like understanding the build tools for creating the final firmware image, allow configuration which working between multiple independent firmware block, ensure seamless update of the system firmware. This book will help its reader to understand how critical system firmware security is to define a secure platform. It’s also a handbook for learning basic source code management required for system firmware development.

This section would cover:

* Motivation for this book
* Who is the Reader?
* Top reasons to migrate to open source firmware solution from close source
* What are the contents?
CHAPTER 2: SPOTLIGHT ON FUTURE FIRMWARE: Chapter 4 and 7 has already provided details on specific boot firmware and payloads. This section to share additional work relationship with those various firmware combinations as below:

* System Firmware Development model using open source firmware

Hybrid system firmware development model on x86 systems.

* boot firmware (coreboot) + FSP + payload (linuxboot)
* EDKII Minplatform

* Open Source System firmware development on RISC-V using Oreboot (Coreboot without ‘C’)

* Device Firmware Development model using open source firmware
* Explaining the evolution in Discrete Graphics Device firmware from legacy Option ROM till modern EDKII-based driver to nullify the legacy concepts.

* Manageability Firmware Development using future adaptive firmware migration:
* BMC Firmware -> Open BMC Firmware
* Embedded Controller -> Zephyr RTOS open source
CHAPTER 3: TOOLS: Since the historical past, tools were something that remain constant indicators for human race progress. It can easily refer to tool-based progression, starting from stone age to iron age and even tools being used in the modern era, all intended to ease human effort. Similarly, there is a significant need to have the right tools while developing the boot firmware product. This section focuses on the details on various types of tools that a user should be equipped with while creating their own boot firmware.

* BUILD TOOL: As explained earlier in Chapter 4 and 8 about the various ingredients inside the boot firmware and the stitching tool is required to combine all of these to create the final ROM.
* CONFIGURATION TOOL: The need of configuration tools become inevitable when a user decides to adopt the Hybrid work model as explained in Chapter 6. Users would need more configuration options while working with closed sourced binary. The need for configuration tools is more when users don’t have provision to modify the source code for an example: hardware validation, firmware validation, system integration etc.
* FLASHING/UPDATE TOOL: There might be several instances where product integrators or users would like to update the pre-flash boot firmware without the hardware-based utilities.
CHAPTER 4: INFRASTRUCTURE FOR BUILDING OWN SYSTEM FIRMWARE. This chapter would focus on understanding the open source project infrastructure like GitHub and its code upstreaming process, review process etc. Also, migrating the project from closed source system firmware to open source firmware also needs an adaptation towards “Code of Conduct”, “Coding Standard” etc.

CHAPTER 5: DEBUGGING: In a product development cycle debugging is the most widely used area where users would like to explore the different means to identify how to fix a problem. This section provides different debugging methodology used in boot firmware like legacy methods, advanced software-based debug, hardware-based debug, source code level debug etc.

CHAPTER 6: SECURITY IN ITS CORE: Firmware being closed to hardware and abstracting the operating system from underlying hardware provides more reason to ensure the communication channel is secure. This section is to focus on designing the boot firmware, keeping security in mind. As industry is moving towards more cloud driven services hence need to ensure the secure firmware communication within firmware space and even from OS to firmware using trusted APIs.

CHAPTER 7: LOOKING INTO THE FUTURE OF SYSTEM FIRMWARE: This section discusses some key forward looking items that system firmware in the future would inherit to design a simple, high performing, open source friendly and secure solution.

PART I: DESIGNING LITE FIRMWARE: The real need of the firmware is to perform essential hardware initialization to boot the platform to the operating system. But the firmware boundary has grown so much in the last 10 years that sometimes it's very obviously referred to as beyond BIOS. The goal of this section is to design a LITE boot firmware to shrink the firmware boundary by adopting 4 principals as Performance, Simplicity, Security and Open Source.

PART II: DESIGNING FEATURE KERNEL: Payload being the integral part of system firmware is responsible of doing very minimum and redundant task that could easily be replaced with a boot kernel, this process would also helps to bring the kernel into TCB (Trusted Computing Boundary) to allow performing advance operations into boot firmware space with reduced firmware boundary.

PART III: DESIGN MULTITHREAD BOOT FIRMWARE: There are multiple ways to design a fast boot firmware solution, the easiest solution would be choosing a high cost BOM (Bill of Material) which pre-initialized hardware controller by its device firmware. But the real exploration would be how to design a fast boot firmware without increasing the platform BOM cost. The best applicable method in that case would be utilizing the existing CPU capabilities, on modern hardware, all SoC vendors are providing way more required numbers of cores or logical processors hence future boot firmware should adopt this hardware or CPU capabilities to reduce platform boot time.

PART IV: INNOVATION IN HARDWARE DESIGN: System firmware being complicated due to the limited innovation in hardware design and to support legacy hardware. An efficient hardware design can help to reduce the system firmware boundary and make the design more scalable without increasing the platform BoM cost.

Apart from this APPENDIX(S) sections for discussing the definition of future firmware programming using safe programming language.

Artikel-Details

Anbieter:
Apress
Autor:
Subrata Banik, Vincent Zimmer
Artikelnummer:
9781484279748
Veröffentlicht:
28.09.22

Barrierefreiheit

This PDF does not fully comply with PDF/UA standards, but does feature limited screen reader support, described non-text content (images, graphs), bookmarks for easy navigation and searchable, selecta

  • keine Vorlesefunktionen des Lesesystems deaktiviert (bis auf) (10)
  • navigierbares Inhaltsverzeichnis (11)
  • logische Lesereihenfolge eingehalten (13)
  • kurze Alternativtexte (z.B für Abbildungen) vorhanden (14)
  • Inhalt auch ohne Farbwahrnehmung verständlich dargestellt (25)
  • hoher Kontrast zwischen Text und Hintergrund (26)
  • Navigation über vor-/zurück-Elemente (29)
  • alle zum Verständnis notwendigen Inhalte über Screenreader zugänglich (52)
  • Kontakt zum Herausgeber für weitere Informationen zur Barrierefreiheit (99)