You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/reference/runtime/Bootstrap.md
+25-26Lines changed: 25 additions & 26 deletions
Original file line number
Diff line number
Diff line change
@@ -7,32 +7,31 @@ Mbed OS provides two entry points for developers to hook into:
7
7
-`main(void)` - Default entry point. All the standard application code goes here.
8
8
-`mbed_main(void)` - Executed directly before `main`. The user can define this.
9
9
10
-
When execution reaches the entry points, a user can expect a fully initialized system that is ready to execute application code. The Mbed OS boot sequence consists of four phases: target setup, toolchain setup, starting the RTOS and starting the Mbed application. These phases can be seen below:
11
-
12
-
1. Setup target
13
-
- Configure clocks
14
-
- Configure watchdog (if applicable)
15
-
- Turn on RAM (if applicable)
16
-
- Jump to setup toolchain
17
-
2. Setup toolchain
18
-
- Initialize RAM
19
-
- Initialize standard library
20
-
- Call mbed_init
21
-
- Vector table copied to RAM
22
-
- Vendor SDK initialized
23
-
- jump to start rtos
24
-
3. Start RTOS
25
-
- Create main thread
26
-
- Start scheduler
27
-
- main thread calls start mbed
28
-
4. Start mbed
29
-
- Call mbed_main
30
-
- Call main
31
-
32
-
Sequence diagram of the Mbed 5 boot sequence:
33
-
34
-

35
-
10
+
When execution reaches the entry points, a user can expect a fully initialized system that is ready to execute application code. The Mbed OS boot sequence consists of four phases: target setup, toolchain setup, starting the RTOS and starting the Mbed application. You can see these phases below:
11
+
12
+
1. Set up target.
13
+
1. Configure clocks.
14
+
1. Configure watchdog (if applicable).
15
+
1. Turn on RAM (if applicable).
16
+
1. Jump to set up toolchain.
17
+
1. Set up toolchain.
18
+
1. Initialize RAM.
19
+
1. Initialize standard library.
20
+
1. Call mbed_init.
21
+
1. Vector table copied to RAM.
22
+
1. Vendor SDK initialized.
23
+
1. Jump to start RTOS.
24
+
1. Start RTOS.
25
+
1. Create main thread.
26
+
1. Start scheduler.
27
+
1. Main thread calls start Mbed.
28
+
1. Start Mbed.
29
+
1. Call `mbed_main`.
30
+
1. Call `main`.
31
+
32
+
Sequence diagram of the boot sequence:
33
+
34
+
<spanclass="images"><span>A diagram of the Arm Mbed OS 5 boot sequence</span></span>
0 commit comments