From a8a79557a6dec1b8ec1fd9f87c495f151637921c Mon Sep 17 00:00:00 2001 From: Annie_wang Date: Fri, 28 Oct 2022 10:55:29 +0800 Subject: [PATCH] update docs Signed-off-by: Annie_wang --- en/device-dev/driver/Readme-EN.md | 2 + .../driver/driver-overview-foundation.md | 98 ++++++++++ .../driver/figures/HDF-architecture.png | Bin 0 -> 35975 bytes en/device-dev/kernel/Readme-EN.md | 11 +- ...a-kernel.png => Liteos-a-architecture.png} | Bin ...itecture.png => Liteos-m-architecture.png} | Bin .../kernel/figures/OS_architecture.png | Bin 0 -> 27287 bytes .../figures/openharmony_architecture.png | Bin 0 -> 212512 bytes en/device-dev/kernel/kernel-mini-overview.md | 4 +- en/device-dev/kernel/kernel-overview.md | 179 ++++++++++++++++++ en/device-dev/kernel/kernel-small-overview.md | 6 +- 11 files changed, 290 insertions(+), 10 deletions(-) create mode 100644 en/device-dev/driver/driver-overview-foundation.md create mode 100644 en/device-dev/driver/figures/HDF-architecture.png rename en/device-dev/kernel/figures/{architecture-of-the-openharmony-liteos-a-kernel.png => Liteos-a-architecture.png} (100%) rename en/device-dev/kernel/figures/{kernel-architecture.png => Liteos-m-architecture.png} (100%) create mode 100644 en/device-dev/kernel/figures/OS_architecture.png create mode 100644 en/device-dev/kernel/figures/openharmony_architecture.png create mode 100644 en/device-dev/kernel/kernel-overview.md diff --git a/en/device-dev/driver/Readme-EN.md b/en/device-dev/driver/Readme-EN.md index 20f72079db..82740883af 100644 --- a/en/device-dev/driver/Readme-EN.md +++ b/en/device-dev/driver/Readme-EN.md @@ -1,5 +1,6 @@ # Drivers +- [Driver Overview](driver-overview-foundation.md) - HDF - [HDF Overview](driver-hdf-overview.md) - [Driver Development](driver-hdf-development.md) @@ -45,6 +46,7 @@ - Peripheral Driver Usage - [Audio](driver-peripherals-audio-des.md) - [Camera](driver-peripherals-camera-des.md) + - [Codec](driver-peripherals-codec-des.md) - [Facial Authentication](driver-peripherals-face_auth-des.md) - [Fingerprint Authentication](driver-peripherals-fingerprint_auth-des.md) - [LCD](driver-peripherals-lcd-des.md) diff --git a/en/device-dev/driver/driver-overview-foundation.md b/en/device-dev/driver/driver-overview-foundation.md new file mode 100644 index 0000000000..d1bb233bf1 --- /dev/null +++ b/en/device-dev/driver/driver-overview-foundation.md @@ -0,0 +1,98 @@ +# Driver Overview + + +## Introduction + +OpenHarmony uses the multi-kernel (Linux kernel and LiteOS) design and can be deployed on devices with different resource capacities. How to smoothly adapt device drivers to different kernels on the same hardware and minimize the workloads on driver code porting and maintenance is an important issue to address in the OpenHarmony driver subsystem. + +The OpenHarmony driver subsystem provides the following features and capabilities to shorten the driver development period and simplify third-party device driver integration: + +- Elastic framework capabilities + +Based on the traditional driver framework, the OpenHarmony driver subsystem builds elastic framework capabilities to enable deployment on terminal products with memory of hundreds KB to hundreds MB. + +- Standardized driver interfaces + +The OpenHarmony driver subsystem provides stable driver APIs compatible with the APIs of future-proof smartphones, tablets, smart TVs. + +- Component-based driver model + +The OpenHarmony driver subsystem provides the component-based driver model to implement more refined driver management. You can add or reduce components as required and focus on the interaction between the hardware and driver. The subsystem also presets some template-based driver model components, such as the network device model. + +- Normalized configuration UI + + The OpenHarmony driver subsystem provides a unified configuration tool that supports cross-platform configuration conversion and generation, enabling seamless switchover across platforms. + + +## HDF + +The Hardware Driver Foundation (HDF) provides driver framework capabilities, including driver loading, driver service management, and driver messaging mechanism. It strives to build a unified driver platform to back up a more precise and efficient environment for one-time development for multi-device deployment. + +The HDF is built in an object-oriented programming model in C language. It provides a unified platform base to support different kernels through platform decoupling and kernel decoupling. The figure below shows the HDF architecture. + + **Figure 1** HDF architecture + +![](figures/HDF-architecture.png) + +The HDF consists of the following: + +- Hardware Device Interface (HDI) layer: provides unified and stable APIs for hardware operations. + +- HDF: provides unified hardware resource management, driver loading management, device node management, device power management, and driver service model. It consists of the device management, service management, Device Host, and PnPManager modules. + +- Unified configuration interface (DevEco): supports abstract description of hardware resources, shields hardware differences, and enables development of universal driver code that is not bound to configuration information. You can use HC-Gen to quickly create configuration files. This unified configuration interface improves development and porting efficiency. + +- Operating system abstraction layer (OSAL): provides encapsulated kernel operation APIs, including the APIs for the memory, locks, threads, and semaphores, to shield operation differences between different systems. + +- Platform driver: provides unified APIs for peripheral drivers to operate board hardware, such as I2C, SPI, and UART buses, and uniformly abstracts the APIs for board hardware operations. + +- Peripheral driver model: provides common driver abstraction models for peripheral drivers to provide standard device drivers and implement driver model abstraction. With standard device driver models, you can deploy drivers through configuration without independent development. The driver model abstraction makes the drivers more general by shielding the interaction between drivers and different system components. + + +## Driver Development + + +### Platform Drivers + +The OpenHarmony platform drivers provide APIs for accessing the operating system and peripheral drivers. The platform devices refer to buses, such as I2C and UART, and specific hardware resources, such as GPIO and RTC. The platform driver framework is an important part of the OpenHarmony driver framework. Based on the HDF, OSAL, and driver configuration and management mechanism, the platform driver framework provides standard models for implementing a variety of platform device drivers. The platform driver framework provides standard platform device access APIs for peripherals regardless of difference in underlying hardware. It also provides unified adaptation APIs for platform device drivers, focusing only their own hardware control. + +The platform driver framework provides the following features: + +- Unified platform device access interface: encapsulates platform device operation APIs in a unified manner to shield hardware differences between SoC platforms and differences between OSs. + +- Unified platform driver adaptation interface: provides unified adaptation APIs for platform device drivers. You only need to focus on the hardware control the driver, without caring about device management and common service processes. + +- Common capabilities irrelevant to SoCs, such as device registration, management, and access control. + +Currently, the platform driver framework supports devices, including the ADC, DAC, GPIO, HDMI, I2C, I3C, MIPI CSI, MIPI DSI, MMC, pin, PWM, regulator, RTC, SDIO, SPI, UART, and watchdog. + + +### Peripheral Drivers + +Based on the HDF and platform driver framework, OpenHarmony provides common driver models for peripheral drivers. Standard peripheral device drivers help reduce repeated development. In addition, the unified abstraction of peripheral driver models shields the interaction between drivers and different system devices, making the drivers more general for use. + +Currently, OpenHarmony supports peripherals covering audio, cameras, codecs, LCD, lights, motion, sensors, touchscreens, vibrators, USB, WLAN, face authentication, fingerprint authentication, PIN authentication, and user authentication. + + +### Driver Code Repositories + +The table below describes the code repositories of the HDF. + + **Table 1** HDF code repositories + +| Repository| Description| +| -------- | -------- | +| drivers/hdf_core/framework | Provides platform-independent frameworks:
- **framework/core**:
- Provides capabilities of loading and starting drivers.
- Implements elastic deployment and expansion of the driver framework through the object manager.
- **framework/model**:
Provides driver models, such as the network device model.
- **framework/ability**
Provides basic driver ability models, such as the I/O communication model.
- **framework/tools**:
Provides tools for HDI API conversion, and driver configuration and compilation.
- **framework/support**
Provides platform driver APIs and system APIs with normalized abstraction capabilities.| +| drivers/hdf_core/adapter | Provides adaptation code and build scripts related to LiteOS-M and LiteOS-A kernels and user-mode interface libraries.| +| drivers/hdf_core//adapter/khdf/linux | Provides adaptation code and build scripts related to Linux.| +| drivers/peripheral | Provides the hardware abstraction layer for peripheral modules, such as the display, input, sensor, WLAN, audio, and camera.| +| drivers/interface | Defines the HDI APIs of peripheral modules, such as the display, input, sensor, WLAN, audio, and camera.| + + +### How to Use + +- To adapt the OpenHarmony driver to a new platform device, use the standard models and APIs provided by the OpenHarmony platform driver framework. You only need to focus on hardware control, without caring about the device management and common service processes. For details, see **Platform Driver Development**. + +- After the platform driver adaptation, you can use the APIs provided by the OpenHarmony platform driver framework for the system and peripheral drivers to further develop services and applications. For details, see **Platform Driver Usage**. + +- The OpenHarmony HDF provides a variety of standard peripheral driver models. These models shield hardware differences and provide stable and standard APIs for upper-layer services. You can use these models to develop peripheral drivers. For details, see **Peripheral Driver Usage**. diff --git a/en/device-dev/driver/figures/HDF-architecture.png b/en/device-dev/driver/figures/HDF-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..5a2e16de904a1be92ae1bd1fd9f6fb6d6c91aa8a GIT binary patch literal 35975 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 WEB)cBJnVvakCzhi&&$R2-~E3s-}qnv literal 0 HcmV?d00001 diff --git a/en/device-dev/kernel/Readme-EN.md b/en/device-dev/kernel/Readme-EN.md index aa80a66559..9a9ccfbd29 100644 --- a/en/device-dev/kernel/Readme-EN.md +++ b/en/device-dev/kernel/Readme-EN.md @@ -2,7 +2,9 @@ - Kernel - Mini-System Kernel - - [Kernel Overview](kernel-mini-overview.md) + - [Kernel Overview](kernel-overview.md) + - Mini-System Kernel (LiteOS-M) + - [LiteOS-M Overview](kernel-mini-overview.md) - Basic Kernel - [Interrupt Management](kernel-mini-basic-interrupt.md) - [Task Management](kernel-mini-basic-task.md) @@ -16,7 +18,7 @@ - [Software Timer](kernel-mini-basic-soft.md) - Extended Components - [C++ Support](kernel-mini-extend-support.md) - - [PUP](kernel-mini-extend-cpup.md) + - [CPUP](kernel-mini-extend-cpup.md) - [Dynamic Loading](kernel-mini-extend-dynamic-loading.md) - [File System](kernel-mini-extend-file.md) - Kernel Debugging @@ -28,7 +30,7 @@ - [Kernel Coding Specification](kernel-mini-appx-code.md) - [Doubly Linked List](kernel-mini-appx-data-list.md) - [Standard Libraries](kernel-mini-appx-lib.md) - - Small-System Kernel + - Small-System Kernel (LiteOS-A) - [Kernel Overview](kernel-small-overview.md) - Kernel Startup - [Startup in Kernel Space](kernel-small-start-kernel.md) @@ -149,7 +151,8 @@ - [Doubly Linked List](kernel-small-apx-dll.md) - [Bitwise Operation](kernel-small-apx-bitwise.md) - [Standard Library](kernel-small-apx-library.md) - - Standard-System Kernel + - [Kernel Coding Specification](kernel-mini-appx-code.md) + - Standard-System Kernel (Linux) - [Linux Kernel Overview](kernel-standard-overview.md) - [Applying Patches on Development Boards](kernel-standard-patch.md) - [Compiling and Building the Linux Kernel](kernel-standard-build.md) diff --git a/en/device-dev/kernel/figures/architecture-of-the-openharmony-liteos-a-kernel.png b/en/device-dev/kernel/figures/Liteos-a-architecture.png similarity index 100% rename from en/device-dev/kernel/figures/architecture-of-the-openharmony-liteos-a-kernel.png rename to en/device-dev/kernel/figures/Liteos-a-architecture.png diff --git a/en/device-dev/kernel/figures/kernel-architecture.png b/en/device-dev/kernel/figures/Liteos-m-architecture.png similarity index 100% rename from en/device-dev/kernel/figures/kernel-architecture.png rename to en/device-dev/kernel/figures/Liteos-m-architecture.png diff --git a/en/device-dev/kernel/figures/OS_architecture.png b/en/device-dev/kernel/figures/OS_architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..44e602c796414a12209f388a62e02fb63a8a7949 GIT binary patch literal 27287 zcmd3OcT`i~_oYhH56wz1DheWy(0dV;CQUj50RbtYcL-HPK|zQL(jf?;_aYqvBA|pK zgbtwx4822uz`W@9JHPL&S!>Fgf5xTD7gqA#&AsQIv-dvx^6sgY3hh5E|C~E_j#f?e zvF^EZf72yJCBeT1R;Rup}CG!a`BEp%)p$e<#*E5=H>fN!E$R) zw$V}a@`o9#7=>;-6mg%gL3xR|TGZU5l1Nx0JkimQ~E^0OWrvWVM?+Y7Dm zy&nVC^OpUHR8$%}jzydxSC=`v#-%(L;~;tg>2e00*YmGYnhg#H9bk?4A@!m}gac2S zmu`6{M?f5;skJr7f1t?&*EQEdM!);QY@o=iUy1PsPrBb+TkB?s9aw$v+-j)6AU_pRU;+vi zPN+x_t~HtpIV0-#?)>|)zLV}M_m?)BkJtAu3=oHbC!4y|-Tkj8hv&uD*!CprXKbMi zUL-eUtvxPf&P|iamszXQb8k6M6$hEmyFbbw{X?a};2((zr^>n4*R<|6aNkbzNyzW_ zE8gZ)!@Q9R-C61b_sZ^cd)1T~)QxF9W3Vxo;n|C8ifc8{nBb=k@2@JHm{+qGGcP=O zGT`;)r2h11C91HrxqkFTtftAZiE9lFd}qzDUarrjCa_mbI_I&uT4j>qycoK4@RxLc z=w0=ABqbNmg7un|_!m}}T1%|>gj4J|)IJ3F*{DlsxHw=j$xio7W~0#)tE#9VK9#8y zHCzm7sAhA-*5BYWLXs$)f z>5xs|4%s4So0VU)%N?k+POy%aj*E`6QWCSY0IJYN6f4zXIoTrF&GmtMegV4BneHIJ zJx_~Y#Pok}T#n%x+A73(X4#Z-P~&4PMWYzO>1BUz6Rux@_hHkBGt`X8dbw!VY^aW z(S!~)!Fh`MLJH?BvPVdzYf#)9Fcub^7~|4GvD34}NGR^L_>@D26SC1ax7Ag~N%Nw3 z&wg{_UZg%Od5CvC$i12D9boUl7oDlE0KdxoPyHtd>Q4Sb6Mw* z{GSAe^Atxoikq1)qujHeM_(JfOw4*-Ds!v1K}`g_+uHbWD&~jh^~Q{bWaR~}ry0XH zGOstg3!cO1bDepqoM*=`QhjycxC^a+nvSzEA%DKz;=zNHz`EbtdVpcw|M_LQ|8UoJ27xBOOqGbW&XvS<6A8s=`-P@`FCdf)A?3PT&o z`Ko{^&H}9W(%6tkDf#Z ziRnO3|2hVXfQ(tGkopz#^oFJMfOzLDKOc`8tPdZD-%Myl-@PN;9PU|TS^16hgp=P{ z@W?mRjPXIrxISp`_D`Pnx~23Kd6_4kz;*8FP{Km>H|qBNsep|N$4Scwc0<|I!+D#L zJmSGL%8B)BzcOp~0rn-1mG?V_6$6)?d%OGa3F*5;FJX9BF5^xdOPk_J1DVhw^axq4 zPuAIt-0O1cTK7qZ!K(_uhTUiakW0CO-0yY4rqo_)rRTf)$bRV#Ue3?$lFusG2)1nW zt7-ib!I2yv(6CmmPACW#d-N#>BX=+vJ2ml;z+xk3V~j<6P6)J3$ZfbH*JWkEOIzQs zX(K(C?yX3jxh(nLQVITHB<9?UeU@{A6-=F95}$Ny+f^`cX|`&Qocp8>;`PCLk5tix zobDiUPjzKzYVGB&KL9uF>N*^bKN2OsYG1%pt#j||L%~doTE9evkl?LtG?=lI%~PX1 zkg#nv)d<7=n)>o`{kt_>&aiR2i_g0C{^^dem0Gga*1%(}z#R_`Z*ZS;?#Uvu86mm< zJvU8TZf|f6*)Fd@2TizWrf-ox z;lexxZ1tLp_D|zIdb zozkp|W8LLyqj3#L&O`jmm(6*MM;#~ew~Ea~Eu*=gWz+AyojwJN>gdQH9(y3`w6&UP zd7|reoyCmS^SJ#9SM4kA>mPI_eZp)kn*6=T#MXcEAT)dxWLlM|Ejnut=b|ubQkYKm zXKKkH@|Ot$rq$-meV6Xq@cJ@(uEkB0;|oKRM=V0*h^50O`IYlAGC60_uWpQ(d1~HA zlmcZ-f93UJURKQgh-z>Q&&QevQ!6o$VnKG;EeqGCJ;UXZWxkuA23^Vfc>6|5APwfv zP%nOdn#)OXx!=h)^mjhE;^u*ZU}XFfg)oJd`O2F-Q3_duV$aFw_t&5~ zb{ynxUkm*JTNyU5X z7t3hYGP%*OD5x7TywHrN;a82NPBz=n^7E2k?g*YVZ3LCBiWFeCQ&gm~oNVNmQa!cq zH%uu0dL_yTHkXa3+(Al9L51F1tJBOYC?-xam^ytt?NoaBK4sqTVcEMzTxaY~uMGIB z5ggLv79nC`tHyF2z$(x0Yp*y&TrOIad|K>{)%p`AT)Bu~|N8hJeU(yna2Bq(y#)a` zwmiy+OrKjYXZ=%-fYoxm0)cuV!Y=YzP!gk+>_Dk0_b=eBH>{*T`0(?=BCED-;*t5{9@~vm)E7K;4D}4XO@d>6 zAq;9VgqOObnP#59QMf_^r8)K=~n?0vYj_ zUbh80?CO79n>R{$_9@3CwbaPsC@pI>Dq*SGG#pck-8p?~6u*7JFUhpTJ3fTi{6LnYM}4;z!Pe%Xk$Ng8w_Of)NT`F3&@eihfnK$+dZ*MCG@e zE@iEh&{P1;UFUkEQ;^AS@C&ABaB3zuzcVS9!lGlm%#zkR=RyJI=cWRcV0N+FtjvE9QcA(YVx z2USX61~8CbwD7y+n?u3^kCT2##@PY;Xfkb~Tz$&)h7CWQ)c`%@kYr{Q^Qxhw@w-G9 z{=t-A<2y?(o}c)`rwPg$ob#eG=_iMs3MG&nBn~nQKWJ%K?UD?y2*>T3QlnuYI5b+8K+u|u+wM0KV1qrU7F*wAUs)f z&+sq44C}>2&QlZ+J|_#!WU9S;Rb%pY@!rYYYse>2&nna4C7zW}$fRtnaAVp|u-Y{O z9pfJ~j^q%Tx&0THTg&VI#pQ$6!~ZKd&fVCCOW3HZaAK7`^FM^zOsvjtWCpViIv1s^ zIVQ%FQ2Ri)O^XdBQ_gfd_3^3avv9j-NA2FCi6@Xj*Z4i+(&=rrt|3aZV4olF@Mkv< z=ZF%>vowyD@Ga!G>Ff~Oj{MdCqqNv8iy5N?t4vKc(-SJl~O7)WmrCHAC z3$6R%cwgpt>SN18O+hCVHKoln?wy8Rv|w?TalGPuup}D_odKc>w`5IOZC0>9{-^#~ zd@yr7(QWjwA#Xa|hLtrQ$8_`(Etpn&)Uez6A~?ZPYRoePkN9~4A_{A)+>5vQRm(}& zxgnf~4z(QZ;BMHUA8&r;5}$1`Nq<~8F+Dz=eKy%K*>RMQ!3oX?zu^v;TizJpj3q$A zaWDFa*&+WL4%b23X>xb4Bn>d0Q*Nek=k6dB3b;jt4Sv67-xtqWQ?BD;O~mwU%-MbU zOOgK1iIM6binNz_{(oN0|9h78|NYHIQ@y#m_UHaH_)G(=p8ZE0c{Q?a`r=E0H4Lj} zW6E)Mss^j0XvTvj$DDmf_aC7Ismd*?;edYYw$Ev2WkfCcAKbZnH`ZW~>qF(Qm8fq-%q)9X9Otm0=-a6N#NOhQNB} zrZh~p0^vK^pFg#2WxSYP#15N_`n|#qoQe22CMxh5wbn|3m`v=ZuS;=qKdt_gHFCc3>g?=6RaZ zcfU6ct^jX=R^xAzhV#m|PKirR_a_i(J>rnZOLx^YH|I|5Dc`hut1TCUF0A~$ou#!K z*_F-eQ=)F9w`2N?zul1|J8$8tW5O|0Mh$!@VuvDyxdH6t4xTH4P~}$Nt$MqE0j= zg|r)uJ6i4pTtWim8gYR~L9H!4Xn(AtZ#PB6uJ-{>rBZ`2)EiKkL?=$%dhNN?Sj^?; zkm8MJr^oFB+3M&LcXHGHamP}tz2%|y^@a`e{m+BEe*~$4GUh6kR8i}vD{r2o0YyU3 zEMV=cjfEQaU$c5&{%|JDYHO~YcXS(2Z*Bkz&oikPZ1bDO^k1K|ymLRaP&%`PQ+$nW z7S#i`(Vtxw^Pn^Mcr9U^mBO?aAWT*}Jrdx3;KNo+X}((XONuw9%01?zB^UtS0byC{ z;ww%46#`sq5}_nUw0A+ccp$-+<*!~QioP=GhtE!kY}jaSuq?wJt(1b(VT(yt*n02w zWHHCcn(5#M$)n#{Xd&e^&t9qaNAz-W9a3vmn6Bn5BDnr{<{&~e@w9QLmoK6k(JUJK zcaYrkg)1GbP)cb$GFJB`nUR^h(h(vn{^#8UGu>2RX05^fX)?Yp|6~-Ie7)avaF_pC z#S5oYS+_@LTrrZjzlx-;0~lV`+xJtmsB`_{Wb@xLmE68wzfv-npPPPv9eAQX`t|xG zt83%O(`kSn<#TI@P9IMl=!P`=TyH+XffJmst)b3NZ6@-f#mDXWe_+&(2CDFLp2z<^ zBKBB)!C=(Mw%0+dOmXU}gulz#M->h=gFY!{yJTCiMO@C`C~^$HJz9a$lF1fMOy*JH zfW25#cZAEV*IE&_an?NsMv%`O=f{C1K?_A%p#^IAC!|NTjs`TWfKawg0cGy!DqJy} zjbf6(dg*O#b#ms;P%9=-P%{+ye$zf9qn9o70|HM^!uJuZ?)G^m==gV@L@K;UH|5CC z`Bwt7->AX-i+u;Vr%>st|JXh96r*3gMlcq0hCVHwycjWBXBlUOoN4wo{Lff{=~6qIzBl>`95_pj z4+#{GyT3k3yfgaHz_%b>Z!Ptp0Z34^S4rCqYVw`y;g;^C^ww1T$;Vp`Rhzwx<`wFD z9_A(Jgs9|fE}&Qr0d?*Z5_+X?7Pa{exL?{(p;2yU#KXW$(aUeYPY(cyI*ElZCQ7Z!p%19{W^kfc5DVoH^o|FXnD_v1uJLhP@ z0~D>Sz?a}jB+^vg;hi^%989#Bf+AL)e5zO0jDJKYbtmXlMCBYwV?b=`VmJ;Jtl}a6q!2;pI zB7gt!TKp0sM84^%ZzsDiKLfwctAj9~}C>D{ozvM?g+kOJkF?>RD zlMq;2X_Tk^^dBfj%j!ZdR?iHC)YUuX(6GY|?JNWwVA_mMqb7P`7i`szO^1pT! zQ2O$d{#G(*b@_P1ojnG`^BCn%$WMQ2SZb0GT!S{70YltL{K$e7MQ!V z_<7Z3`hA&wRB%$HF!$4VLDa84+#f78noMa%ssnQ+4eR$COsr3U424{E=mQE<6d=N7 ztuDjm_D8d3Wq)j(5O$)XK=paXbsjcjM#<90fHL$tYWElZR6?)ZwF176){hgK1zG{> zJJduoklMhxci;;IgPUr)InWjyF2Mo>D27cHh4&V_lk}>Gjscmmt2$|Zxv&%jJiLAm z=zZ|@O0N`EY;4ZZ$uRD+m=zip-p z^((cKGcU=yN_5in^Ib(jaI(Rna~ElH?}x;!`*3oNdY}c+)$gR!?0Axk6KvZG&`Jj{ zw)>r!#rzJNSe!?Cs#BKtpZGSQf-0Sh45WLu2cw)zF{1SX*1rmEl2+yUNN|$H>x!|f z%*<8aB*OIX7!fhvxy;up-r`s<%v_>%jM}_Jfau)bh=umNE;0R#&`u3EaB3zjw!3$- z*Gvg6GPc3^FPcgAhXCbSjmSK8k&x+gey1k^4=9G(SW-_R+3qw^A1mw0AM#aMtzqTO zK2yh8Ak)0CMf}P_thN?WH9_{*Dp0(jW1iiyHrC8Z@_j~?HiI*>7lMG&EI=o<@S$og z&1*mn_hE5D6T9E#sx1K(3Wk*3thQck6IY4tyY>-;|4<{FW(%{D?SMOP#K^4QiztFS zi=L{;SSj45J*w2`(a3pUx7ESQs>O;{lQ+%*Qb)q0VMZIh)ygWPgE3y~uf6~*J0!0} zSjOM68K|^N zv^y|}i0TIV3fCP+N(9UUx7vZ%nUjFtnI0Z;I2(~qiV4tSZ<Q` zR-{_P>;W*_n$YImfZtytB3*-bQm(D58ZC{zQ(k#PZ3ePO_%G*+zCQz^ci}amf`8$i z?0{RjGKc*>)^~btN#P78wU`H7$_cQde|X7?zwwFJ3ByJ5mE2h+b8{+90|53g($G6yIiq&Kwwj;& zgL$-s3Y*k*UEBX%vhU{C)L$&>W3GE@&m=cXw+ieRxqX*w>vtrW<)Tr5uI%-t@69DG zDO}tj_9DiOQMP00_F_gD-4n(;p}{ktJ)j0j#z#1uKH#W(IrojyY{vZ{x#bZ=ep^<> zH=XmByz5k>D3H|`fABHJUYUF#4<}9DC{VM7qZyltYp%IbsB2o1w*-uuY0M5iX1geM zTpHHIs~ZiXw=qu4on=B|((W_o)+r`x)rtz2U0JuCqfHph4lUeTDcS*rGqOi~fF=k#T?==9{Zj2_aTvY4A3ql2GnPFHbP~~DvcPZe3O>rn z(Mk6iwT##sxcl_sxon*=T>)R?Mc?Tl3FqU`y&a$lsxjL8$U9)8iZq`P`8GVd)H(Vn{zkZ zenNmE#e1{m4FjX!B)co}i0*UV=WkfM0{qU8R-o!6fbt3$KxW3((I}N$^zz@|KpV{c zX5Z{>Ke~B4p|4UedRSdHvc*H$6Buwd_237K51wDT*-rs^wSKN+-=5vd%K2wmr_#qU<(k-2j%~Xvo^kg33Yx;6h&;1TCud^qZ!cji^BRCtXmr` zx_bY^>9DCQ#3#Bdp{DmmSE4dz7-yXoEq;H3JJP#b{eyK{8R$}=W|U$BHJ{pY6KMVW z6M!Pkvw-xQT(5tBevB=cj)s{r##)+0e~ebQ60{g`LG zcvja46LyfbAVyiR)BRE96)(a1s@X3rkTRjkKxo+DE|lmzFYr&`gqbW9mMm&Qf=vYG znH+1YT(7P~PKP<~&P9Pi$L~+8No2v_?2WV3S+OA+J%(g3_Cf)$nxFaU?R?N&_XE*_RGO>QW zwKo^Oy^W#={UZTjR}aO{_>mdV4#3}z#MkA` z#q0ykB$Jr_Kk~Z6<+4?cJ__St_c8mX5Aqu!&x18OrAq>?xZI=#QPz2CwQ;d{`;Kra zAQ?Am6IX=`Y7XTvv1 zy5k-tgGoqfid{@+lAku&#>DeeGeIzkUXkJfZ=cJ#({!|4s5fQZOz;TvZu9Us-++w2xR3jps2*k=4zIF=W3dW`x5{Q z{B_)=V1f^`Ibhpi&AL!ttt!(gs*#c<(?uqKrX^iY`!V98Usadh;OTQFxT=tg_i?WQ zFh{rEGT{{f+6xVE(f35w)7fuSzyFyVjYHnzB(FSV-`R`Ly#pUu-40_l2%`L{|WX;uv`zj#N&#I+x_Fz5f$+dFDKK;f4F z6pTtu#(o$ee8}ovkG`XJ_YVR#UIS!_sDoN1k$W^HK*sUDVvHDgNsWNu)Hy_GE%s+c zO2YW%9Sf66)7GMA3C-6rwX}HxQ*S;aXYKx_XdJ~+nvo#66@DPwW~93{*Zu&2%@vM< zH@Um5Mwpn4Q2pA zLM5)luLHO&n9PDqX?a+MGf2NWdf4g9F+kfidTdji<1aX?u(?0p0-kfj7wc^#wK$k0 zl6xYXd`FFi?GLuxyEF3*vTqCj=d1twyk}*v8xD}1(m`H11~+rYHnliI97KZ$AKK?g zJ6FPtM$|+oGi_s(Q3POgMr>{^=WUF1oPeGz&`SgeWW5vXNKf#XQvmd{IiL5jVkNOI z;n=nW#OY0Zb^HMk>>r<tUP`t7rBvokTz$xaZ<#V^)-y{uz0R(!`#3}tt}tg zl5OJo+UJO3-N{oWh@@Be0GM_+kBku%YMJ6v4`u04np++!MBmD?Iuz<;i#=WPT~bR? z;jJFCO_}=xpb`%N@TzxhCv&>Mpm2bTN#hzJx(c>?dz(3Nv4hoBqb(`sj6lJ*wvZ4g zvib)b4Wbi75R8PZ#q%o>xSM^1z#mj-Cd@!j7FU1I;VcQc%@4qEt4k9$ zzMmKmpZH=19lkb|L&_jK6Xi`6O_gc=J%SvVte-U@0Lb`AB01UY6Oh$5C$erh@mzE@ z<9BgL4MK$fR3*T`X-T86Icn6`IwVJKnwtwOwDDnslg65ze0;}c0p<`-f7C9|La?va z0^-%SL7{1Vd2S>4@UcVi@vmvndc)G`oCL$F`DDOB6OO4T=&&`S9jHROz!X9U#LUuz zkMMtVnenfVdcKV+uc;eiwWRa?0Pr@jdAxx_`JHTaVgwi3rU5Nt_v{B3Jk>2BNrfjd zo|>Hn^jaQhS`MxPvD)4T^u%|W+5rblq+L3UJG$X`y&)IM8MxUR#|?*&THU;BwI9Cq zNKBhG?hTtlSzg^vF!zTp_eqktp+6^O8&iZR%Pka=9sRSB#0W%J0WhR~_Dq6CX0@zs zAV9*S=-OhdB)D<&q5COe3GQ8aLTHd7rP#TG!jdP@;%AjPwZKCi!531BCn|fT`Q*Yq z0H02d4RKKd^=uL-U-^g}bDjxS6#InKgv|Uv&prxh>ks~duOTwXCT>hzMx7qw(B%iWXWBs)Y%&SCGHW;@k3=YjJH zBE6Da#HCkhQ8z#uo0Fb>*$+AZJQY_@Aa%V5>B2XvCtTVAnimgpIqZWh0sgQ|wyb+G z(#v@j&MzXSf{(pIm0pHMrAL9A{rK0Uue^O*)rwXnV@$pB;<@}48Y{MS+gM-0UJ6Fh z;M334+VOlATAl@xc>Ql>*9*nLzdAm$DC7bAT3+m(-D z4OR_wTPT-WQC`{o))fZmz=K*gnvR)T+G z*r+D;ZPdi_(d=!IQICp9!)k^4m^f(Iw`8dPuC`gN$CcpK^3I&#WR5f!*R_nC>l2=* z$9iP8VYK3^ZI>o-<71@oTQjM3vm6s|c71w{fAIhSi^v(ylBWIf>n~^BTTXP+>w^UP ztYwzBbs*wZm83jS)%=KF0a?3|-ar29un^T)EV)vZ-Hs3OQ{MX8)NBZ-N)}8jXY)(x z+G}UK+Gla$M#NU$5CGd!nqJH_+iOzL!go*L6mn(>lIXr?<|n-$r|$=E4$==u#>$n( za|80=l<>?puu0;bl?oiDOJF;T(U7Xw05q?0VrADd2wuOpq**!6FzE5cM_HDx4Dc-O za>C^6xO%M5$+{>eYhXa2yxQkIVx}%2ntYw7N-ynWHO19nm&o7NR&p{nr$w4bhDHt6 zN3|QS#8YdouY%1R{Z@&Rf2ZkY9-~t}RM&(T|r0vxA5_x!eYuevCw*$|@r9`ClKF zy$pZ(WH9j-V(a3Cwu|L*r>@OH z!&R&JfeR!lqZA!yY%#fK7qke6ys=%04?loy#?UxiZQLDD=k5DDNi*#CNVbu2Wvi5K z&RYe`UKT~S&&U;$O0dv)0n_*?yX(i4Xts%2p9$xLaj6X5%GVhett<-H0mxT9?oc?G zmOJ)jHS4{0o5xN_#mbABXCz?5_wQ~;$$8{_er%!th zFfx`_(ia3Rrk7UQQ(T*qIFvF8C-DgFwshk?U%W!z*zG+f#?ZZ-^9j`8MnQ@P6N3Z>q>xB<(M`kfJ`d-FA8uwjHAb@(i@r-5&d_|H&P-Mr@KV9>xt zrp?oRqu&pHz$Nw{m@F1=79r5N+HhYDNN_H->q1*96qh`lQMPGY6~ASp{s}NevZBV1jZ&)hYH$TwY2uCg>v!2NgsBWlMs>fBWFh z8`-nagNibR&gS#4*lvPFWu;Zq?WqX29xxFWh)RPm-<{)Dyvy;Ki?i`{;yL%MJ*H8W zpHwy!gp9PHf+6Xotww;rwe`)^=UjqQIXC|FqkU0zjhqmM(bD{C;OF)Bpls84!2OwX zB3$99)|j}xJXaBAq+#FOyfG35b`m>H4lm_5ds?j~H>~tLsJGr0!O-6_qa{=OAXV7x zgV=aRt@WH@U@FiA{7H}Qvk4iRv-sqHyUT#)$rwxM-p|yqIP{)t!`W?O!Z*~JFG3v= zmSg)Q=K0SUizAPMq;K=`GfjNtW`5s!jMg|Y=6+k8+3P4{nEKHtozXdkz-Gz$B9UQr zo{@VNx`zN48wrxawoC0IEt3DJW-VUsJch|M4%wF*{p=1}G{vc2Z7ZQ>TDNf@Udmu`x(80Mj-K1;A;=g$gq(qUiB?<3Jg33_ zUU@84mZR|Wkm^yJ5y(JpM#zTg+1(%mVfxJvrOPtMNc@6~*Oxg4!Z^ z&T~aXz+O&oN8oE%!${)~1U>8Kz%KKd?zW%BKa{w{>8Oe+-&$1`;pR3Qa-O8XA=TvQ zL#yk@4;0)p)w#SQ`=&b88$EZUwCCtq&^HH_UE@c`VsSM2&3QmKwYOL{NvVzj}{+n-D0AUy(rHJv?| zI}Be#!qNcU*8=#D$iu&z8ZLj7=j0gOkmBttC)3IfUL*i-$g#b*?x(uU?C{jju92$# zZLjbBV4hRYCD~FPC6sK2R>0Q|gHsui6F~BPqAAZoteen6EzAD4Sc_0C)IxTKxQGjK ztbIu%80ylZ=l`O$wH{#y_h^wD=tc)hAjyGFkQ=A=AC6JK*vXgBYrq~Lpnsu*O}mW zMV2*w)&l6l^7cPDmM8U4{}`3X%#U~S2SsN*fF9`$DmJ$VV`3n>^fd=@dE!pk41m&1 zt2GB#7YdV=OZvUuPalMp4u;lW>o%*IaN@yyjg7E94)*q|+%o;l)w2)N9JsC@kW1O7 z#*-H3z%LJAOuUOYqg*XumW<>pZ4~|*w%;Dbm;lLQgphob4t6qQfKC@l#Ti)UcZAQy zSYIqp^GHY?{{Vnw*W^x8W(Qozsg$EI-%K{x!pE-@=17(28zcq3`Jibd z8&;Fd`Bjl5YYuJz!Zve2Rb&b!e~5X?`=D3uI>pdo{^_@~ByZ)Bw(s+FK;a1P;=^~= zmpH^L)65Ie$7iMO64G|I-%Q6qQ?P<{zcZsc0DYOIxYMve3=JW(~I^%cdnVS}QL!zOKc!a{lAh_mBDwCpDa_^f`2 zUCv#44U(vwD_fzJmC`7B-*d-X^%&@HB;*7D*5s%(-zh0#NiCq+Mv~0yyN7F|h+j?+ z<>udgu0THwjKr%&i2io@>V!mZmz_RC5H?2bQ@DGSQ9%~}YMVA%KaX!LRR5GizTx)n zptdS1VNtxozCY8uPj*Mc!J^!%y&kan7qdz|*YU_*?3LMIV`U)P|Ly>mrNU+5j*Qr@ z-O+<_FH8ska-fNnJJ0>PB^KX(bsWj@vSR7@!f7SF*mD*ro%6*4$%@IFvs)@PJqY`# zi7c^9?9jA=vf zv!5Nvv^Er^FrARZ1H}lw_fiGdLx0m1cfBDUVc-X!*qtyj;QJqsAwgxDK6UgvG7A$b z8JukwP&)D)C`J^I73;++5&mkM{m^@r_=JRMCol~aR2VU;+)|5VoRB`l_wEdCsuV1Fz?6B7l_-k;kMA1jkq?|*s7H5 zzWSdBmhsVECO7y&-b3b|KqKRcu zSaULQN~ljZa3(a1Tk0L+_$a55P{qpYY5ieJQMx)O5ePCutjd8Ckukw_120?!!1+ zRM~r9neKJIB@=e?*$f?pFBqUpYgP+4jV6IJIoH;WNv8IEg=syzSU9j z|IlSFWiF~;mwdVF$l7vSm=KGk#<8zyt%%lCVhn5tfv>Inev*_98*n?gxBg32PheVm zG<@2BrMRkisa8bNcYU(lIo>(lIV3mD=gF~pa71b{8Nj4%9b82rH;&tZ4uY}l?ypC@ z^jtiB?V1u;Q6H6S31%K@?n4Gf(X^%OXrL|j#23jNOcL04GXoaxNMpY~mcd=Hp;-xq z!oK{@PB2eCQUFXHP#7-{Q#Fa7pDus9j(vkW_~*o2R`>~_yPA5uZeF8DIe29>evAXS z5n`}cygQ3d7W80;ByQy074&cyi{~&8+8fe0<#sUMJUg6+Yp<={Yzmwpag=f8N8Z6e z0kAIzg7uP^^yq#*^SSsiB6z(h@70^ z^)|I;tIqwgaex9&EpaSu`(7xw=t+?%U1dp2ALm;8ff)miFLZ1}a?`xk>ZUa+ZLAw^ zuK|vIaqqCbF43N9yfTVdG{>d&Npwy6pIWzvY*ZoRQZN^NIgx@KkIZhhD_C-giy7n> z?iAAnyWdh~K?LnTbAVS#mCrvEyo|gRqQ8WDfIbvr=ZVsm-Fob=l@un4_Za9!k1uO! zWaqb3cmK2u%zsUseMQY}e$jJ|l(}-8lekMAdMGZnUUAcXa#lME6^F!7^MkzR081X< zD{*}+otflPTbwy$AF zd+Yd^Cxn5X&22?;G0A5*s|XjZC#ISS)*<=p6GO4{q(+t#D@jI3aE_jC(jU^Qy9{=r zNqy?*wrT2arvR3K@)&j91u(pz&v5@>|yJ2O}?dHXwZ{!$9 zy(g?q-(I=GTI~SEJC&^zC5T#M0bcNDb(8YK`L?BC-{jg9yaLf*L!GxchK#ZO~ zjQ033h#v9HU8&FlHVNzVCY<7TH`A7_*$i~%!x{zU&!l3= zLEn-o#(&bo{RIVJOYW~7iYv{E=m%aT`vv|nO?5Is4C57EsRNTO6W$s4gVlHS8Qp$o z7@hRJJ?kmicq7I{hj>a0joWz-LWafQca#Of4Dqob6m@IAWN-DuvG4m2l25qTiaM1^ z=cGh~`SmzzXWbdQBpsOgH(8&WMhbtTJ_(eug$$k=c?0~W1%NyXVaw~yRk&WAMQ#q_o_W85|u9wg7Z$Qkr-1r>bWMvw_o8PYX-c|L3r z9GJ;am(M%@pzV^g{)&z9AkBxIhpRlPsvXr&0%Br)ni*OJJ1iw99A?&~cnX}*gm$e$ z{Dos`o}+SILbZ)&Z-i1-;#ZT8)bCv6LBluPd$2cxIAp!o77E!Y6) zNd!oXf0vZ~mNZ`;rl%#9y~=`R*lCeY3|~u}POCUNJ>JlU-weH}SVi?pf*fD>D|4UW ztBWMZ!u%Efya3trgTr&i3=)^~t}vg^s3(NlkeWc4liI@tp>T(zRc(ILDFu$u2Ze#1 zn~C%*uS_U*?NAwM!Lrhd0?Etu%7vnS)68hio~yyE+i2mMCkXtdjPJ);P6y(s% z94DETayms*2W(kdc@u6WdOBwM!+3BUGhsswKw`Fa%)|Gd4>~nGz-Flyab2K5(hplA zIZ;Zd0YE>nUKv~6aRL;lYW+tEz6l=?fz9vxyh7I-x!u3YBxsvzM(hX5vw4p4{PeZ2 z1{LB%U5+9Q(F`aqs0dsYH73rE(GLmeu$0?D-T=trB_0oCXWDhG zuG-_Dt>TE7s0RhOj!jiWmE?KrsYxZ=m?vG8y(q0>QeJ(@l}7vG{z_Ep(_KPkg-F+( zVS`m3r( zY1SawZDM}?^g!AYY8lJ2T&;8WEl&-x3ykYb>q4P{=u{{lN*O8V&$bB^t#TuMdf4KD^aXR`lAkq$c{&9_d5jV_YdFJqT+`O^xkzSbh+EF}r z>rDL}O&KzffLlc;BNOHMz5tA>L-c{VU-@uAU|J00oO0U;c3ECR{=G{bE`APJU%rMx z*P<2U>AIWVO10%zf0Mev(RmU-_$FB9LQyIYWue&yGDUS`Yv@&y` zeycoRAi1-mMVVI{%wEul#BY6gM8``qez1Ds!$`-N!I%3td5HjFtdj)1w_RU!H-hl$ z7Ei#x)A(cXb>`WCuA`p|JVas%bublRGa`8;q_HOt0Oblz7Fo`qU7a!U(LA+&=Q6;z z2jV5Q20u9(UwXmw~t>4<$2t5%(AoS-0vU!Pr%#{5_Vd+^ieR>(37Cr@_YeZ`)rm3G* z&rP;DVbQw}X-Z8yZ1Ia$bu7h3$+GlchBny{TBlt`&ANb*BG<7>etI z@IYULQF|@2t@g{T#@W^!*fJi_TBVT9?=u z@<|5FZ7Tyx9x-0q#LHer$2jS+^b`Rq>9KHA9N*wtm^b>_2-t{y%Hd?}t%oZxWB89L z4+OFR)xQupn@bgG9V5j}@vEiQ%kv9k;y&QW=5L4`Je}t}ll-d36*?|rWD(?Dpe6#C zE~`#uG$W`V=h&Fu5!k*qaYu|QiRx?Sj}4$1^C^6*b`UTnAmSYXirqfpic0I~yrwPt zF?{IVF3BVn$AQpXoD-`jc`YwZ1a_woDl}luU$WH`7yxIux%;Gh=M8|8zepChShU4d z6p=d6T?**#Z9$j8@%OW&Lx&FbaAM+#FsY;6U|wHmxI(fML+gIF0iNsR?O*GgY%p8M z>qIbSOXhpvj*UN{RdjBL1C~O2z(!W{Bw<=^-?szjOEQdOHgV_#xbuj&YJ$63#7Rbq zcdv&K=TSMa%tFZJx!l0QcCu{GcB^Yg#li}2HSc!onJnN2+JTC`0$)`I4i(H){)*-| zsj|lc?i#>Ax@&Em5k%@c^!zyQhb47D&y37rHrOBUY#kDZe!MeSrqB73a;iZ!ke#xH z@7(ofS^~Je#u;=Q_R3O&6aR}n8TU@~hY^yMK>AGpT|yl|6Vmpfw0b;0Z^ZjW@OO_- z^hX%tW*a@+JNBSuTLeU8QjT4M&k{EJoumT(>*Y9hq|6V~vfrWOhOpUJ323c*)qL zyj!cPPkXs_0n<@i9weOVeDR|^RT3C>N<`(?TFT&W4U?JjKMZB38d+ljLqSv3g;pqCP0pL!e6} zm}(ekIW1te8dQ>g?tiOw;tJg#jWHg1&w1EW4@@!+1%^cn$L=yo^nvjmrx$ag*D^jk z_?P!RmYC35VC7cl4it288nG7_*y$c&U!#E&^QBV*I~$o8=0Ac~O0^32 zOlsJ_%T6$Bk!@c^_Z(_45*{tUZTjGEhP->WmrSzJC)Se0B>DJ+t(`snb}xc!gv&52 zol1WvsWkTk*bXB9J3;%A2@+k;#aYF**e)!>-$zA=+7iv+))`j+L zylvnByd;(mwR(Fyh%?!}c@T~7$67u~kEft@Ak~QmXZ#~gOp1|FoqY2pWvh;QdKJq% zS;z7-goV@HH=-eYG8zUD8C~fU1>o0s=p7Yre`mkB9vKVLtW*J))XqhENr(-c$B$S_ zk?6bV6wt-^ur915vGZfYaQohOl6QYm!DFs=N}9SSUQdL6;yenrs-5PNOR{>g3`Ykl zJVtUJ?*a~k)b%o|ZFfLv&4sxFIH6sUid}TL=M)9B%S6p(Y|e=>j4~$1`*OB7T+h2J z?qOx|-i#b+Da&wug?sykjb_Xi6Xyv}+EYlcG53+sIzU?E*Ugt|+t7mBiiGP}E=EqM zg>zM3pYqvB-&v|d+DyL+r+_lZqqDvh3v;l44)9XuW4U}@50YeX8s|7E#97yp^7IiN zu(%6MM3RoHL$V(ggJO6GX)-KPKRJ`q6hcm4pKMEx*8tKm;Mw&VhvrskR!7Z0Le>CX z{oJ6t^|1GM!G+J{V=Nc=_7MPkS0JjS!`XdCzZidYFc=&1Ga0_r`5_RS2DtfcCVrp( zbQ@MIx>oJFuk#@!SmdY@Vc^*Q#&G2`QPiRoP_KOpvaguXmhPPF^yQj7BFw+~s1Up% zP&4VluONFmx$a&Lf(%_g!GWbkNaqdN^noR8w2m?k$L@6g{Ysq97nqq$waR5S1nZ z2}O$ZazN=#N@x*KREkIuBsA&0LqJ;8Py_@d0qHdq=~X((w}R(;-}jDN#=T?Qe;9*0S4hl$?JIV;80sVsn6Y&UoL3|p&g4mC+LS#4O9yFHmGA@ug%EPd!3^_GlPS*pypCNkh^AC zTldwU5)3#9xywhI3V;8oLcge>{z!K_BtZ6HgBaAN@a}o6WfWws`%U$;Je)<^&YkJ~S6iAH!+u`aNgI#g-W1prKQ_q@rmFSk6j7=d%P!fBJkHL>#uh(r zoB0DgK|@b!+RUQ!VY6#D$o6?jMQ{n9W$@UkUk!7N*19-*H;E+ZoAC7P>!sDmz+gAIGxm%C;tpo&#`OEF!G(rk>6eE5BVfEYPRBcrY~-mKI$>>NjofbxHucoK zsO)#KnQmFm-gJ?+SE}bw+#T`{LzN*F+mF7BbuZVVeYC}Z*kn6=77mhmQ*@B!Pjf3N zT?)_YSprOlcHSPj0QsA0<*{KJrI5Fv`N*Y7*Q+OYmFzDBIG_qbbq3U4-JPiDHICmD zvtcZ+Hnn6+%S4zOSg?49eY{-3N4FgzzBXD27GOcWrdnFdE2^R6G%O!tfZ;(zgC}h%*`&uBD6k1!T6h&k$#v>ZFh!>aJbvhnc+g$ zV?8wIT)Tr?j@#u|zN2)w0i{#)NrFXO9JR1G55_m|HrI=b{l?5 zJWj#x{dbx*TJYE%wc~=I1mTq1s^55u0e|eIg^j1Ywy#Z&(>PKb8h|3^|2*vxDbY2y zdfdi+QmE7x;&B5-lPYC`URIZX#DxtN{g<5JT02BBRx z)&2cv$fD?yX==Z_;e}Z(Vy+YgNF-?=Ih#f1-L$R#;^HzMwOqD9G=$j!bG~Kr)jKUU z#q7tkmG6Fxs~N9_Me74d&MI4(->KkR#;|~Qy-i#acaLz}qzDT@Y7Ob!|B|;8zkKXE z2$fuR+gq3_;xLk6YpeOG<8~=Mzlt$iUB?#se=bssJ2tSj3?9}F-8maE;G=a0&w<@j5;gI$!~a8&JHmnV z@%z2l<06pfqBJUW2~OjkryOMkNUJzTqKoh4Czs~PW@H}TeF|FXW+7qaQ znvf5P0ycyeL+%7qm(u&jsHJ%6^|~tckfW4*i%7e ziSAs4&a5Z!afs^F#;-uI^TQxMCOgHSPrwOKuQvU^c3QNTG= zwKI2`l;E$9Sn=j!U@-%6>#ixq?4TGP;Xw9&hohpP@`E_>YX_Nv9NkB_IP4&kf$jve z%eQ?OYVz@VmA4qgIBx`6XC>423Cn_{rbv7B#h>|)MK)iaU>%r^C8=!z78Vk}UO7@^ zRO4=^A2fqk6rAJr=|57t>erRpRrF5yGO^bzf!(nKT6eda8-loTxhYKiAnkF|T@QMT z>S~`<3_>;>hVGf2E%dv0wK~p2G~J+GnlwecW6+WGp&{18Dv_%0-wZ`mYPnn1-#*t@ zXwH_3PO}GbBrO4IPx!XgICtlPwDk)ckFu%kj`&Sja8*`|tv!kG(|^{+{gIV0zd;5K>yNYC%|*d6#~4 zRi)FfaL=VA#Knyu)DCv&fzT^8<6UR3u#IcP<{Y*+08T(;?*&wwv8q@G`0Yp$$Q_U0h(E2R32*ZacEA3V!n{Z_u5Y~&7yMF#xr zVSPk1<^bf8zmK)5;)Tf~ml+ndRhu_LL3Mmetdh&98t7`>4vrn1DxaC*vX!l1OdEJa zi%U3uu`l*ceg&=H_PsB|mx{*DDsOl+HKx}E^#w(D;tr$3y!H%IlmNl8`ARtfwzr||vmKqcM#XfJ$L8H&xbS&Xcm)=8(fbmr`c&w4vxJWx%_405s&-_g~_ z*FVNjRqss46I~iNQ9zy@b`ZWfblGD_!_c|$0w838vVE4%148*9?>d;M6X;#D9Eob; z0*8`jIIh@S0@?@Wbd;3j31~aa_%6;K+s~VLcLrii|3oV279&vvVQAWu(XuhSDr>(8>WYb??VfI@pgs@&V9IZ<%T)yw3_~881FP*7}2B)taD3CB3H~Ge}ghC zI)7o?33h8fq1a9TjrbI6XKEzu$FGv#=2NW~?vEmdo9&3QsxD~lBMhIe8R%}6SnYA* z+!o|^WVNB#)wAo@hJEUH+}lswv~G4!bi{WVtHrV&LsgfAr}X;;eTWJ94MVcBtHcTl zbO7t#h9y4+=wq{~Haw!EH&B)y8p7r%z$%utx;{z)wMsrP!AAtaLFuj$=+&b$@xXH$ zLbVe0kS(^gkTTi}KtExvcQf6ax__FTAU5~-*{O63{$20G6-U`2b`q1a3O#ANNj%xw#U)zwwd&&g{F4B1(c%UERCtgU$y!0X1fpKKf#*{ge>Tg~3d=kDUiVc;^IIpi zL~Dk&FHaut)fW;K@n>gcD{<~R3dlA>sMy5KyPvjz#y-YK z;q*k~OdCu1+Ah_HI}GxJj=KlPNj*KZ`DHD<@%dYiH*Db8YrD=cPPztkfHyx<0)*>r z*whc=jw3H>#qmCRSh^qY?#$nhOgCHqe86;ZCaJD=fmKPJbSP{0osnsT%=ncoNFR`w zR&ndA9%^|pM`Niwr-k%bX4?QpYK?V{_UQY4n)n(Y!y}6DEB)iCH6@(sC%`Z!f~m zYB)NfdcNT$_fBd{-e>MkCGPf^F#TIJ+U7>@#Fx4ik6c^gBdVFcIpg7%SCu`+6=Pl7 zCe>#iKVBJn{QiE^(+Vbn8d~@YsZ2l=|MDv2MTzek{7MnGz-C)t;iv2N9vs2X*7p+t zHevQw*bh56DHZIm9o5z?`>6ZSU0dM>@1nIe$+NK0r)gop=1SFe^xw&KsQ$dsvpU## z=aKfJ(r))pP?R6nlVgcL`4}@*^qz=>%g6-N1SFx%fiS-uqrl z0iYzREqbtNN+^CRU97=qu1bR5dBQ-vc8NwD$vhOs^YL?{`cmp&pIhwfe*d%_oOG(J z$n6Sovv{0+;corYOR>3|{$t3S?JstPlgE8y`{8abiSW5Y3I8Ee#vb>=|tJNN520_X+97Mo2Pzg{t?efZ=Xeci=e z6%Qa9zdooaHrRP6ey*Ba<-@M(h`EVYT(3FxVG5_xjpf=_wa*-)7WRL?JsGCXI6Vlj zuwKI$qY4V$ZIdSH#v0pN)B1s=W3Yo`4fg1qeENQ->JzqQ9wTKrPT9(3=$2TU57i?P zISRjVdFzVTq+_s}_+U9Z*C_#Dqu%WT=46e8BaRh4I+nfi2|qMz0&0j?b3Zy#(O(j4 zNA8v}_kC`>4)GoGpLy#sJp4W9UGjc&sd~+GpD8scM!n^yzLVdNzcPzEk>~tG^i7^PKKWhz`V?MvT>{T$Al3M%zwq@{N5q-zdbz zZT2rvHLP)8m8BO9C9U3IxQJyMsgX1F57Jk*YmSCTQ)tf4c1qA#&Dq@gnKI2yT4&?} zgWZ!o+9f9T2O)W#48|Q%9v%nT$w$rfND#76ro?y5gb9Tn=!$gSK0hr9)&(Do-(vfCWH{(TGC~Rwdo8%u7u0S!sDY?y~Er+Fd6~ z+XUm^$>NTBSdmIX^}-G1SCUOHLe8n;6^@EAPMC{#*3cgJe-Q9w-`#M#r)~w?BYVlC zho!?4_S2(VL+QQTyz{Cu10Pm5lLQ|;+hjJ zG0c>Foji$w3l>)G2cPn12Dp}A;*2-zvAw+ni9P<^T|Ekk(sn9sksAP3Hc}_nRB+N) zKN1kTnn>VKb7XNEci;u{ik?ektI8b`&3h%5D%0=I0jg&wK;{ieTw%O$g_&+hY^EX3 zjK)f^%5-CKHUeRU`5uMzUVD8M^$93LnwD19;kZGhH~F;!wZPd1%OiDN#(%nGT3_28 zVM)3#5_2u)f-^)6Dcx*DFf6kqaRotMud%IgnKpPIt#UHO=!L`T8@3H68$^dtRtb8P z?&$2FF+VmYwkGa_x@)s%6&=sJ*yZExoA(+l?C59iM~}h?wu|LpRq7pu!#%&;SjOaJwkh!M@EDC;!=FIW7#b`-iGX5<^>nHhH~V<< z>dJgI$R&$S*o)aI@*l$}JMIrz^b2P1dC1C;oaoJVeGCb2SWRhsKJaGdsZK_I&niI zT&f$fbHI$oNl=YGXV4aA&V3X3V37_f?h^>QKAPQTi9_A7Z;1Jb;JW77mt=Zq0j_?z zs4ZnNOGqtCa(+%$OmpJx*4k8CuXIWh{jm!>$`T%>pZ0or*f4?#qN2MAoDf@`_{+Un zZeT`D=RK7R35m>PtSHT1l?#(U_7=sdMBrb=OIo(QE@JGGwEtvCP1X?5Z&-P$HV?bn zmZnBurV)b#w*kVVwyD_}KZ%r>GvUX55AycXpMNVN&lSb^Dj{Miv&q5mn(t zK(Le5Yh=Xkz26YqPNewb4(83f$RzPRixJ8^nv$Bfk!JK&NM`TT5-?lO1GBXyL##2W ztOdr3C(()ywQsG*MT)+xJu|39V~`!8uy{LA0IW?)#g;(V9TRW~?KV@8W3_P$x9&al zW18;misz4_{nnyr-(d5-%UGd7-T_nm8>CEmnxL<>lo&&mdJi03o&uRT5e#$q%zd`o z!Fnqr7!aInIKFeRL=Gt0=PQbpc9(e42RA43Sesrl)J^_A>PGHMgPSDmHBJaQ9IS72 zyx%|IJGUY+_W6Lw4etq>)l(I)tCd49-sT$dOd=-DE$Y=oK|S0b*o%z5l; z3jF~h@lO0JHUPX^T|5s7PV9jis;|~6`!R-D3335kna~%YcPsX zJZWS6b=vg{$xs)gJdyFXUP3q0iyQrT3Gl}1uFs#Gz4ke>`{r;=2;h$W54^KmwxIsu zmJ!#$DhTi{J2jd>Z14D3NV(3Efr@~$4nFsPviCCda2A*Y7K@zN`cqm3h=)0qMYjEv zOlQqTCF%f4eUnlGPfn%hlP76g?surIa>!<)wvCj^esJ%0~e7Lsk0 zjcPt*zgg58s)`Jo2!yg5@xRw0}^6HUI|5YP;bX@#P}*I+2*$W2w`*_aIC=A&zkb{*B{EWKAV z+WhpfpdZh+m!S*nqQLb<*}7>B3&}D<^gKBb#6d`xi`%2Ur*x0>b`6ScGdyJp{Mw=^U`d*|cDtf9&hGN$*ronz@dsHYL zi4sztyWINQYGy9FF07SoTx{2C2Oi|*oiUS9AsyqY@&)}-W{=TGz%}}=_?S$o-vBQQ zpq?zGjFG(F8=sh`g%#)9yXN+1NdI{fUD4YcX-t~G8$66D%KceaNRRTeiE3!VuMGFK z^Q1>Jmr-+1+`N=AZ?0<@yzkct(y8E!su7EWRfrVuFi5w#=SYJd;!$bn<>1`684t;# z{Ja7J^`TD^Ti*_N&pSL5=|CHm+p^9?k|42iidiyNU+(0s{>AtxO{ z*xfMDLK()S2<;zmTkEN^S>A3AtfZK^vC?Lm4b&z~^I-gXn5_wKb~d??VVUpK`#%HR zBl~f|xzqmP)zc<^o9>cL*H0JY>ZW!lywU5bC37ad7kViNHyh*gOsP>Cg0+?X^ z))u1X->-`zWt@~Go2uYaoA1nHixv%r_L>GB$@(phaR;j)VJ`O{hwc?ojQQkP94kj* zoDA^w%B_b)MT!igRQ|S^4z_b|PIi_u#~~X*<{ntDb>cecSK@dZHW~tJEDu4-NUIst z(Y;HL3tInOU7DEL`rl0g9d~1RX|`lLDv`P!!hzFXs50H^mhpI%7)VV$spd(uTXvJZ*@A&y8)sx!=ksUN`GZrgiuzOFptg#{`yTDZ>PWC`g1V! zLSMSVczrWkO4O|~9=h8oG5Mw(y&Dx9%uN23JE806<}lZ}LJ_?^!i{#*nu|#{`>KpG zdQ2fw$mXC8@;H3!w~JzpVp~=Amk4Kwl(`T$^i2L4O%_&CLA8bDZs&FvWhJWfp{4Cd zj$xWkyhY`x;rCHnjnk#CvN)>2{z_?}?wi&IHh{gansNu-y6@(-owcx(jZT!$V+Dv2KefPM}bpkiTxg)t^rP z;?LxsO8nh2JA3ZxS%%T|k9e(i$Z5ON z4yn_y!t(>|#A#e9Fif8#PPVh4T~xfvA4FQ+L_{O|J^ZBNGE_6{hBkX=-pfIAX*&iL z?3I@8%Ywd_@o`5NZR`9nq$Z7KFs&8U9h_j7G;t|H9A@RUuy$eUQl#h*|6oRo$XIH9 z_1;_?Ax*M5!PVJoKd2eyKH$6T^3=lMU|@5WGC)~f2Mzp9XB7t3a59c*BgwV$Dqso+9uVvr-`t*BATAQ<2C8sY5z#{u` z#{I-D5C0ShD%FRH{bsh;m1TNB0Db~OtE8il-xq}PCN4vL{KCG5BFk2-R@_(a=P}$F z;8DYG_%wm+qML(PgicQ{6Gdm2L#RpNeBZenOi?XFv;hho92y15R7;NZ9xF7@TU4~2 z1dY`2=9Z;Ma=+@-+=HD~-KlKrzSBonT^*{*^ibo3iFXulVt2m8Y+(mE3 zll0UDpf{vZ)>kdLp^Yfkg0~#eZ7>`X#eQ_XdX+L`haxGXxY}6b ziIJx;YxOp-Hk7tT5P6WYpO3Aj0T|!T8Owaj8qwg=`hP-!h{JWCssr72V|H4N`2V}) z|4;FQ>(8+3gCRmjo5WJJ$Zi$Kqyt;a!Htko^4us}0!*2p>ON-@8j}~O^B-{tHDtdb zObt*pL7o7}SjA>R5M#Yf{hcffqIP`yVbl&{ThaB5PlvIYvdn+JG3oy%#`+gb8hN3S b!t~eAhdRd;ryqltNgYvEK*$%~Hx2kNE1$KT literal 0 HcmV?d00001 diff --git a/en/device-dev/kernel/figures/openharmony_architecture.png b/en/device-dev/kernel/figures/openharmony_architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..be61b483f9909e02b35a48b16ea6043ef05b7a65 GIT binary patch literal 212512 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 Al>h($ literal 0 HcmV?d00001 diff --git a/en/device-dev/kernel/kernel-mini-overview.md b/en/device-dev/kernel/kernel-mini-overview.md index 14143821f6..199c028bab 100644 --- a/en/device-dev/kernel/kernel-mini-overview.md +++ b/en/device-dev/kernel/kernel-mini-overview.md @@ -1,4 +1,4 @@ -# Kernel Overview +# LiteOS-M Overview ## Overview @@ -9,7 +9,7 @@ The OpenHarmony LiteOS-M kernel architecture consists of the hardware layer and **Figure 1** Kernel architecture - ![](figures/kernel-architecture.png "kernel-architecture") + ![](figures/Liteos-m-architecture.png "kernel-architecture") ## CPU Architecture Support diff --git a/en/device-dev/kernel/kernel-overview.md b/en/device-dev/kernel/kernel-overview.md new file mode 100644 index 0000000000..ffcf8d171b --- /dev/null +++ b/en/device-dev/kernel/kernel-overview.md @@ -0,0 +1,179 @@ +# Kernel Overview + + +### Overview + +The interface through which you interact with an operating system (OS) is the outermost layer of the OS. The most important tasks, like hardware management and system resource allocation, are handled by a module at the core of the OS. This module is called the kernel of the OS. + + +### Working Principles + +An OS is a system software located between applications and hardware. It provides program interfaces and running environments for upper-layer applications and manages underlying hardware resources. Located at a lower layer of the OS, the kernel provides concurrent management of hardware resources for the upper-layer program framework. + + **Figure 1** OS architecture + + ![](figures/OS_architecture.png) + + +### Multi-Kernel Architecture + +There are many kernels in the industry. However, each kernel must have the basic units that provide the following functions: + +- Implements data persistence and enables applications to easily access the file system of the persistent data. + +- Manages the memory of the process address space. + +- Manages multiple processes or tasks. + +- Provides the "network" for communication between the OS and another OS. + +OpenHarmony supports Linux and LiteOS. You can select OpenHarmony based on product specifications. Both Linux and LiteOS have the basic units, but the implementations are different. The Kernel Abstraction Layer (KAL) provides unified standard APIs for upper-layer applications, shielding the difference between kernels. + +The kernel subsystem is located at the lower layer of OpenHarmony. Since OpenHarmony is oriented to devices with different CPUs and storage space, the kernel subsystem supports use of the optimal OS kernel for devices of different resource levels. The KAL shields differences between kernels and provides basic kernel capabilities for the upper layer. + + **Figure 2** OpenHarmony architecture + + + ![](figures/openharmony_architecture.png) + + +### OpenHarmony Types + +OpenHarmony can be classified into the following types based on the supported devices: + +- Mini system + +The mini system fits into the devices that come with MCU processors, such as Arm Cortex-M and 32-bit RISC-V, and memory greater than or equal to 128 KiB. This system provides a variety of lightweight network protocols, a lightweight graphics framework, and a wide range of read/write components with the Internet of Things (IoT) bus. The mini system applies to smart home products such as LinkIoT module devices and sensors. + +- Small system + +The small system fits into the devices that come with application processors, such as Arm Cortex-A, and memory greater than or equal to 1 MiB. This system provides higher security capabilities, a standard graphics framework, and video encoding and decoding capabilities. The small system applies to smart home products such as IP cameras, peephole cameras, and routers as well as smart travel products such as event data recorders (EDRs). + +- Standard system + + The standard system fits into the devices that come with application processors, such as Arm Cortex-A, and memory greater than or equal to 128 MiB. This system provides a complete application framework supporting enhanced interaction, 3D GPU, hardware composer, diverse components, and rich animations. The standard system applies to high-end refrigerator displays. + +Different OpenHarmony systems use kernels of different forms. LiteOS applies to mini and small systems. Linux applies to small and standard systems. The table below lists the kernels and applicable systems. + + **Table 1** Kernels and applicable systems + +| Level| Mini System| Small System| Standard System| +| -------- | -------- | -------- | -------- | +| LiteOS-M | √ | × | × | +| LiteOS-A | × | √ | √ | +| Linux | × | √ | √ | + + +## LiteOS-M + + +### Kernel Architecture + +OpenHarmony LiteOS-M is a lightweight OS kernel designed for the IoT field. It features small footprint, low power consumption, and high performance. It has a simple code structure, including the minimum kernel function set, kernel abstraction layer, optional components, and project directory. The LiteOS-M kernel is divided into the hardware layer and hardware-irrelevant layers. The hardware layer provides a unified HAL interface for easier hardware adaptation. A range of compilation toolchains can be used with different chip architectures to meet the expansion of diversified hardware and compilation toolchains in the Artificial Intelligence of Things (AIoT) field. + + **Figure 3** LiteOS-M architecture + + ![](figures/Liteos-m-architecture.png "kernel-architecture") + + +### How to Use + +For details about how to use LiteOS-M, see "Usage" in LiteOS-M [Kernel Overview](kernel-mini-overview.md). + + +## LiteOS-A + + +### Kernel Architecture + +The LiteOS-A kernel mainly applies to small-sized systems. It is oriented to devices with M-level memory and supports memory management unit (MMU) isolation. Similar kernels in the industry include Zircon and Darwin. + +To keep pace with the rapid development of the IoT industry, the OpenHarmony lightweight kernel is continuously optimized and expanded to provide application developers with friendly development experience and unified and open ecosystem capabilities. LiteOS-A has the following new features: + +- Diversified kernel mechanisms + - Mechanisms such as virtual memory, system call, multi-core, lightweight Inter-Process Communication (IPC), and Discretionary Access Control (DAC) enrich kernel capabilities. + - LiteOS-A supports multiple processes, which allows application memory isolation and improves system robustness. + +- Unified HDF + + The HDF provides unified driver standards and access mode for device vendors. This simplifies porting of drivers and allows one-time development for multi-device deployment. + +- 1200+ standard POSIX APIs + + LiteOS-A supports more Portable Operating System Interface (POSIX) APIs, which facilitate software development and porting and improve developers' experience. + +- Decoupling between the kernel and hardware + + LiteOS-A is highly decoupled from the hardware. New boards can be added without modifying the kernel code. + + **Figure 4** LiteOS-A kernel architecture + + ![](figures/architecture-of-the-openharmony-liteos-a-kernel.png "architecture-of-the-openharmony-liteos-a-kernel") + + +### How to Use + +For details about how to use LiteOS-A, see "Usage" in LiteOS-A [Kernel Overview](kernel-small-overview.md). + + +## Linux + + +### Linux Kernel + +Evolved from the open-source Linux kernel LTS 4.19.y and 5.10.y, the OpenHarmony Linux kernel has incorporated CVE patches and OpenHarmony features as the kernel baseline. Vendors can complete the kernel adaptation by applying the driver patches for boards. + +- For more information about Linux LTS 4.19.y, visit the [official kernel website](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/log/?h=linux-4.19.y). + +- For more information about Linux LTS 5.10.y, visit the [official kernel website](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/log/?h=linux-5.10.y). + +During the build process, you can merge the driver code based on the chip platform and build the kernel image. All patches are licensed under GNU General Public License (GPL) 2.0. + + +### Enhanced Kernel Features + +OpenHarmony provides the enhanced swap (ESwap), related thread group (RTG), and lightweight CPU isolation features for the Linux kernel. + +ESwap + +Enhanced Swap (ESwap) allows a custom partition to serve as a swap partition and uses a resident process zswapd to encrypt and swap the anonymous pages compressed by [zram](https://gitee.com/link?target=https%3A%2F%2Fwww.kernel.org%2Fdoc%2Fhtml%2Flatest%2Fadmin-guide%2Fblockdev%2Fzram.html) to the ESwap partition. In this way, a block of memory can be completely released to ensure the available memory (Memavailable) waterline. In addition to this reclaiming mechanism, the entire memory framework is enhanced to improve the reclaiming efficiency of anonymous pages and file pages and streamline the reclaiming ratio of these two types of pages to prevent refaults caused by excessive reclamation. + +**RTG** + +The RTG provides optimized scheduling of a group of important threads. The load of an RTG can be collected and predicted separately and the preferred CPU cluster can be set to allow the important threads to run on the optimal CPU and the kernel to select a proper CPU frequency based on the group loads. + +**Lightweight CPU Isolation** + +Lightweight CPU isolation enables dynamic CPU isolation based on the system load and user configuration. The kernel migrates the tasks and interrupts from the isolated CPU to other CPUs for execution. The isolated CPU enters the idle state, which reduces the power consumption. In addition, user-mode configuration and query APIs are provided for better system optimization. + + +### How to Use + +1. Apply HDF patches. + Apply the HDF kernel patches matching your kernel version. For details, see the method in **kernel.mk** in the **kernel/linux/build** repository. + + ``` + $(OHOS_BUILD_HOME)/drivers/hdf_core/adapter/khdf/linux/patch_hdf.sh $(OHOS_BUILD_HOME) $(KERNEL_SRC_TMP_PATH) $(KERNEL_PATCH_PATH) $(DEVICE_NAME) + ``` + +2. Apply the chip driver patches. + The following uses Hi3516D V300 as an example. + + Place the patches for the chip component in the corresponding path based on the path and naming rules for the patches of the chip component in **kernel.mk** in the **kernel/linux/build** repository. + + ``` + DEVICE_PATCH_DIR := $(OHOS_BUILD_HOME)/kernel/linux/patches/${KERNEL_VERSION}/$(DEVICE_NAME)_patch + DEVICE_PATCH_FILE := $(DEVICE_PATCH_DIR)/$(DEVICE_NAME).patch + ``` + +3. Modify the **config** file to build. + Place the **config** file for the chip component in the corresponding path based on the path and naming rules of the chip component in **kernel.mk** in the **kernel/linux/build** repository. + + ``` + KERNEL_CONFIG_PATH := $(OHOS_BUILD_HOME)/kernel/linux/config/${KERNEL_VERSION}DEFCONFIG_FILE := $(DEVICE_NAME)_$(BUILD_TYPE)_defconfig + ``` + + > ![icon-notice.gif](public_sys-resources/icon-notice.gif) **NOTICE**
+ > In the OpenHarmony project build process, patches are installed after "kernel/linux/linux-\*.\*" is copied. Before using the version-level build command of OpenHarmony, ensure that the "kernel/linux/linux-\*.\*" source code is available. + > + > After the build is complete, the kernel is generated in the kernel directory in the **out** directory. Modify the **config** file based on the kernel generated, and copy the generated **.config** file to the corresponding path in the **config** repository. Then, the configuration takes effect. diff --git a/en/device-dev/kernel/kernel-small-overview.md b/en/device-dev/kernel/kernel-small-overview.md index 59d2fbf9e9..4b15228316 100644 --- a/en/device-dev/kernel/kernel-small-overview.md +++ b/en/device-dev/kernel/kernel-small-overview.md @@ -1,6 +1,4 @@ -# Kernel Overview - - +# LiteOS-A Overview ## Overview @@ -33,7 +31,7 @@ To keep pace with the rapid development of the IoT industry, the OpenHarmony lig The lightweight kernel consists of the basic kernel, extended components, HDF, and POSIX APIs. Different from the microkernel which is running in the user mode, the extended functions, such as the file system and network protocols, of the lightweight kernel are running in the kernel address space. The direct function calling between components is much faster than inter-process communication \(IPC\) or remote procedure calls \(RPCs\). **Figure 1** Architecture of the OpenHarmony LiteOS-A kernel -![](figures/architecture-of-the-openharmony-liteos-a-kernel.png "architecture-of-the-openharmony-liteos-a-kernel") +![](figures/Liteos-a-architecture.png "architecture-of-the-openharmony-liteos-a-kernel") - The basic kernel implements basic kernel mechanisms, such as scheduling, memory management, and interrupts. - Extended components include file systems, network protocols, permission management, and more. -- GitLab