 Another way of dealing with Friartos is a resource management. It gives you a possibility to do tasks or parts of the application that need exclusive CPU access. And it as well allows synchronization of external means. So first, when we want to guarantee that microcontroller doesn't switch to another task, we can turn on a critical section. So there exists a macro, task-enter-critical and task-exit-critical. These macros technically disable the interrupt and between disabling the interrupt and re-enabling it, the CPU is completely ours. So if you have some time critical code or code that must not be interrupted, the critical section is a way to go. However, if you enter a critical section, you are blocking all interrupts. So you are not able to react on external events. Which means if there is some other critical event, it will not get the CPU time until you exit the critical section. Further, you can as well suspend the scheduler. This is available through the vTask suspend all. And here, be careful because when you suspend the scheduler, you need some external thing, external means to resume it again. So you need typically enable the interrupt with a resume all function to return to the scheduler functionality. And finally, we have got as well a possibility to use mutexes. Mutex needs to be enabled with this macro in the Friartos config. And it allows to guard a unique resources. Now let's come to the critical sections. How it can be used whenever you need an exclusive code running on the CPU, you can call a port-enter-critical. This is a macro that technically disables the interrupts using a base priority register. So it boosts the current task priority to the maximum system priority so that no other interrupt can preempt it. Then you do the sensitive code and you exit the critical section. This port-exit-critical restores the base priority to the original level so that it comes to whatever previous setup you had.