1# itrustee\_ree\_lite<a name="EN-US_TOPIC_0000001078530726"></a> 2 3- [Introduction](#section469617221261) 4- [Architecture](#section15884114210197) 5- [Directory Structure](#section1464106163817) 6 7## Introduction<a name="section469617221261"></a> 8 9The itrustee\_ree\_lite module provides a set of rich execution environment \(REE\) API components for interacting with iTrustee-developed TEEOS, including tzdriver \(driver\), libteec \(API library\), and teecd \(agent service\). libteec meets the GlobalPlatform \(GP\) standards and provides ClientApp \(CA\) APIs. 10 11## Architecture<a name="section15884114210197"></a> 12 13The following figure shows the itrustee\_ree\_lite architecture. 14 15 16 17- tzdriver: enables switching and communication between the REE and trusted execution environment \(TEE\) and provides device nodes that can be accessed from the application layer. 18 19- libteec: provides CA GP APIs for accessing device nodes and establishing communication sessions with the TEE. 20 21- teecd: provides agent services for TEEOS, such as file operations. 22 23## Directory Structure<a name="section1464106163817"></a> 24 25**Table 1** Directory structure of itrustee\_ree\_lite 26 27<a name="table2977131081412"></a> 28<table><thead align="left"><tr id="row7977610131417"><th class="cellrowborder" valign="top" width="50%" id="mcps1.2.3.1.1"><p id="p18792459121314"><a name="p18792459121314"></a><a name="p18792459121314"></a>Name</p> 29</th> 30<th class="cellrowborder" valign="top" width="50%" id="mcps1.2.3.1.2"><p id="p77921459191317"><a name="p77921459191317"></a><a name="p77921459191317"></a>Description</p> 31</th> 32</tr> 33</thead> 34<tbody><tr id="row17977171010144"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.1 "><p id="p1836912441194"><a name="p1836912441194"></a><a name="p1836912441194"></a>device/hisilicon/itrustee/itrustee_ree_lite/frameworks/libteec</p> 35</td> 36<td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.2 "><p id="p2549609105"><a name="p2549609105"></a><a name="p2549609105"></a>Implementation code of libteec</p> 37</td> 38</tr> 39<tr id="row6978161091412"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.1 "><p id="p64006181102"><a name="p64006181102"></a><a name="p64006181102"></a>device/hisilicon/itrustee/itrustee_ree_lite/interfaces/innerkits/libteec</p> 40</td> 41<td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.2 "><p id="p7456843192018"><a name="p7456843192018"></a><a name="p7456843192018"></a>APIs of libteec</p> 42</td> 43</tr> 44<tr id="row6978201031415"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.1 "><p id="p1978910485104"><a name="p1978910485104"></a><a name="p1978910485104"></a>device/hisilicon/itrustee/itrustee_ree_lite/services/teecd</p> 45</td> 46<td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.2 "><p id="p1059035912204"><a name="p1059035912204"></a><a name="p1059035912204"></a>Implementation code of teecd</p> 47</td> 48</tr> 49<tr id="row1897841071415"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.1 "><p id="p182586363119"><a name="p182586363119"></a><a name="p182586363119"></a>drivers/liteos/tzdriver/</p> 50</td> 51<td class="cellrowborder" valign="top" width="50%" headers="mcps1.2.3.1.2 "><p id="p19278126102113"><a name="p19278126102113"></a><a name="p19278126102113"></a>Implementation code of tzdriver</p> 52</td> 53</tr> 54</tbody> 55</table> 56 57