鸿蒙存储系统文件系统,重磅,鸿蒙操作系统正式开源!

原标题:重磅,鸿蒙操作系统正式开源!

项目介绍

OpenHarmony是开放原子开源基金会(OpenAtom Foundation)旗下开源项目,定位是一款面向全场景的开源分布式操作系统。

OpenHarmony在传统的单设备系统能力的基础上,创造性地提出了基于同一套系统能力、适配多种终端形态的理念,支持多种终端设备上运行,第一个版本支持128K-128M设备上运行,欢迎参加开源社区一起持续演进。

针对设备开发者,OpenHarmony采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。可运行在百K级别的资源受限设备和穿戴类设备,也可运行在百M级别的智能家用摄像头/行车记录仪等相对资源丰富的设备。

公共基础

公共基础库存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。

公共基础库在不同平台上提供的能力:

LiteOS-M内核(Hi3861平台):KV存储、文件操作、定时器、IoT外设控制

LiteOS-A内核(Hi3516、Hi3518平台):KV存储、定时器、ACE JS API

目录utils/native/lite/

# 公共基础库根目录

├── file # 文件接口实现

├── hals # HAL目录

│ └── file # 文件操作硬件抽象层头文件

├── include # 公共基础库对外接口文件

├── js # ACE JS API目录

│ └── builtin

│ ├── common

│ ├── deviceinfokit # 设备信息Kit

│ ├── filekit # 文件Kit

│ └── kvstorekit # KV存储Kit

├── kal # KAL目录

│ └── timer # Timer的KAL实现

├── kv_store # KV存储实现

│ ├── innerkits # KV存储内部接口

│ └── src # KV存储源文件

└── timer_task # Timer实现

base/iot_hardware #IoT外设控制

├── frameworks

│ └── wifiiot_lite #IoT外设控制模块实现

├── hals

│ └── wifiiot_lite #HAL适配层接口

└── interfaces

└── kits #IoT外设控制模块接口

vendor/hisi/hi3861/hi3861_adapter/hals/iot_hardware #IoT外设控制HAL层

└── wifiiot_lite #HAL适配层接口实现

内核子系统

OpenHarmony内核是华为推出面向IoT领域的实时操作系统内核,它同时具备RTOS轻快和Linux易用的特点。

OpenHarmony内核主要包括进程和线程调度、内存管理、IPC机制、timer管理等内核基本功能。

OpenHarmony内核的源代码分为 kernel_liteos_a 和 kernel_liteos_m 这2个代码仓库,其中 kernel_liteos_a 主要针对Cortex-A系列处理器,而 kernel_liteos_m 则主要针对Cortex-M系列处理器,两者目录结构非常相似,所以下面主要针对 kernel_liteos_a 代码仓库进行介绍。

OpenHarmony内核源代码目录结构

名称

描述

apps

用户态的init和shell应用程序。

arch

体系架构的目录,如arm等。

bsd

freebsd相关的驱动和适配层模块代码引入,例如USB等。

compat

内核posix接口的兼容。

fs

文件系统模块,主要来源于NuttX开源项目。

kernel

进程、内存、IPC等模块。

lib

内核的lib库。

net

网络模块,主要来源于lwip开源项目。

platform

支持不同的芯片平台代码,如Hi3516DV300等。

security

安全特性相关的代码,包括进程权限管理和虚拟id映射管理。

syscall

系统调用。

tools

构建工具及相关配置和代码。

图形子系统

图形子系统主要包括UI组件、布局、动画、字体、输入事件、窗口管理、渲染绘制等模块,构建基于轻量OS的应用框架,满足硬件资源较小的物联网设备的OpenHarmony系统应用开发。

各模块介绍:

Components: 应用组件,包括UIView、UIViewGoup、UIButton、UILabel、UILabelButton、UIList、UISlider等。

Layout:布局控件,包括Flexlayout、GridLayout、ListLayout等。

Animator:动画模块,开发者可以自定义动画。

Font:字体处理模块。

Event:事件模块,包括click、press、drag、long press等基础事件。

Task:任务管理模块。

Input:输入事件处理模块。

Display:显示处理模块。

Render:渲染绘制模块。

Draw2d:2d绘制模块,包括直线、矩形、圆、弧、图片、文字等绘制。包括软件绘制和硬件加速能力对接。

Surface:共享内存。

Window:窗口管理模块,包括窗口创建、显示隐藏、合成等处理。

Adapter:适配层,对接底层适配层接口。

图形子系统源代码目录结构

名称

描述

config

配置文件目录。

frameworks/surface

Surface共享内存。

frameworks/ui

UI模块,包括UI控件、动画、字体等功能。

hals

HAL适配层逻辑。

interfaces/ui

UI模块对外接口头文件。

interfaces/utils

图形子系统公共库头文件。

services/ims

输入管理服务,处理点击、按键等输入事件处理、分发。

services/wms

窗口管理服务,处理窗口的创建、管理和合成。

utils

图形子系统公共库。

项目地址

官网地址:https://gitee.com/openharmony 返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值