 Let's spend a while on the differences between STCMC's OS API in version 2 and version 1. So what are the differences between CMC's OS API version 1 to version 2? Let's start from the object creations of the operating system. So it is done without macros and instead of OS create function there is OS new which is using the structure which contains the main parameters of the object we would like to create. So it is replacing the create function and OS def underscore t structure and the macros which has been used to create the object. The return value, the status value, it is simplified and renamed to OS status underscore t. This underscore t is visible in many of the places of the variable name within CMC's OS V2. So it can be one of the marks whether we are using V2 or V1. Then we are not using the OS event return structure anymore and there is an update of the treat and event flux as well, especially in the return value from signed to unsigned 32-bit long. A full list of the differences between CMC's OS V1 and V2 is available within this link on the Kaila web page which you can see at the bottom of the slide. Going further with the differences between CMC's OS V1 to V2 and talking about the kernel functions as you can see there are a lot of new functions added which has been not implemented within V1 like kernel info, kernel state, kernel log, kernel suspend, kernel get tick count or kernel restore log. There were few functions renamed and one function has been removed with OS kernel sys tick microseconds. Concerning the task or thread processing between CMC's OS V1 and V2 there is an extended number of the thread priorities and instead of OS priority there is OS priority underscore t then to create the task we are not using the create function but the new function which we mentioned already. Then there are a lot of new functions added to manage the tasks like getName, state of the task, getState, getStackSize so return the value about the current state of the task itself which was not the case in CMC's OS in V1. Concerning signals there is an important change of the name so instead of signals we are using now within CMC's OS V2 treatFlux there is a change of return value of setClearWate functions and clear function is limited to currently running thread only and there is a new function OS treatFlug get. Concerning other components there is a new object, a new group of objects called eventFlux which was not present in CMC's OS V1 it is an important change because eventFlux allow us to direct to task communication it's very very useful one. Then there is added OS delay until and there is removed OS wait function within CMC's OS V2. Concerning software timer the create function has been replaced with the new function and we've got two new API functions which are OS timer getName and OS timer is running. Concerning mutexes there are some differences between CMC's OS API version 1 and version 2 so we've got an extended attributes so recursive, priority, inherit and robust then we've got a replacement of create function into new function then the OS mutex wait has been renamed to OS mutex acquire and there are two new functions OS mutex getName and OS mutex getOwner. Concerning semaphores there is an extended maximum of initial token count then instead of create function we are using new so there is OS semaphore new instead of OS semaphore create there is a rename from OS semaphore wait into OS semaphore acquire and there is a change of return value and we've got the new API functions OS semaphore getName and OS semaphore getCount for counting semaphores. There is as well a change between CMC's OS API version 1 and version 2 concerning memory pool so now we are using OS memory pool prefix instead of OS pool like it was in the past instead of create function we are using new like in other components we are creating within CMC's OS API there is an extended OS memory pool allocation and we've got a few functions added like pullgetname, pullgetcapacity, pullgetcount, pulldelete what is removed is a function OS pool C alloc there are some differences as well within the message queue between CMC's OS API version 1 and version 2 there is an extended fixed size message instead of single 32-bit value and instead of OS message there is OS message queue prefix used and create function is replaced with the new function and there is an update of OS message queue pool and OS message queue get there are few functions added and what is important is that the mail queue has been removed and it has been in fact replaced by the message queue functionality Thank you for watching this video