Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
The Insider's Guide to Arm Cortex-M Development

You're reading from   The Insider's Guide to Arm Cortex-M Development Leverage embedded software development tools and examples to become an efficient Cortex-M developer

Arrow left icon
Product type Paperback
Published in Oct 2022
Publisher Packt
ISBN-13 9781803231112
Length 276 pages
Edition 1st Edition
Arrow right icon
Authors (3):
Arrow left icon
Jason Andrews Jason Andrews
Author Profile Icon Jason Andrews
Jason Andrews
Pareena Verma Pareena Verma
Author Profile Icon Pareena Verma
Pareena Verma
Zachary Lusiak Zachary Lusiak
Author Profile Icon Zachary Lusiak
Zachary Lusiak
Arrow right icon
View More author details
Toc

Table of Contents (15) Chapters Close

Preface 1. Part 1: Get Set Up
2. Chapter 1: Selecting the Right Hardware FREE CHAPTER 3. Chapter 2: Selecting the Right Software 4. Chapter 3: Selecting the Right Tools 5. Part 2: Sharpen Your Skills
6. Chapter 4: Booting to Main 7. Chapter 5: Optimizing Performance 8. Chapter 6: Leveraging Machine Learning 9. Chapter 7: Enforcing Security 10. Chapter 8: Streamlining with the Cloud 11. Chapter 9: Implementing Continuous Integration 12. Chapter 10: Looking Ahead 13. Index 14. Other Books You May Enjoy

Example 1 – Secure versus non-secure hello world

In general, when you start a new project for an Arm Cortex-M device with TrustZone (such as the Cortex-M33 and Cortex-M55), the project will comprise two sub-projects: a secure and non-secure project. Secure and non-secure code have their own boot code and are compiled and linked independently in the sub-projects. Both secure and non-secure code run on the same processor but are loaded in isolated and independent areas of memory. All the code that handles security and configuration, such as boot code, firmware updates, and crypto libraries, is placed in the secure project. The rest of the application code is placed in the non-secure project. The objective is to minimize the amount of code in the secure project and run exhaustive checks on it for security vulnerabilities.

Important note

The implementation of secure software with TrustZone inherently follows the 10 security goals – specifically, Goal 7 of isolating...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image