玄铁RISC-V处理器入门与实战-平头哥玄铁CPU 系统-Linux

简介: 玄铁RISC-V处理器入门与实战-平头哥玄铁CPU 系统


1概述

玄铁Linux操作系统旨在为玄铁RISC-V处理器生态芯片提供丰富的Linux软件组件。平台提供图形、多媒体、网络等常用1000+基础组件的同时,重点打造了与玄铁处理器紧密结合的核心组件,以及Yocto系统配置、构建和发布体系。

 

一个嵌入式Linux系统一般由4个部分组成:

 

bootloader:常使用u-boot。芯片首先加载u-boot,然后由u-boot加载并启动Linux kernel。

kernel:Linux操作系统的核心,它负责硬件的驱动,以及提供系统所需的核心功能,如进程调度、内存管理、文件管理等。

rootfs:根文件系统包含系统启动时所必须的目录和关键性的文件,以及使其他文件系统得以挂载所必要的文件,如init进程、shell、基础配置文件等。

Application:Linux有着极其强大的开源生态环境,其应用程序小到一个实用的用具,大到像音频系统、图形系统、web浏览器、数据库编程语言等都能找到对应的开源软件,用好这软件可以极大加快产品化进程,同时开发者也应积极回馈开源社区,以期建立良性生态的回环。

 

T-Head支持以下两种形式来快速构建Linux发行版

 

Buildroot

Yocto

 

这两种构建方式各有特点,前者比较轻量化,后者可以构建更复杂的系统,并支持安装包管理

2特色核心服务

T-Head Linux发行版着重打造有特色的多个核心服务,加快应用开发与产品落地。

 

image.png 

 

特色核心服务1JS GUI

与阿里云IoT共建,JS GUI平台在RISC-V上优化

提供丰富的应用生态,包括WiFi服务、音频服务、语音AI服务等

基于Yocto的精简的BSP开发包,操作系统镜像以及轻量级系统资源占用,启动加速,硬件加速

JS GUI,阿里定义的IoT小程序规范,同时支持阿里生态应用框架;支持自动部署和快速简洁的开发应用;基于vue.js,拥有简单的开发调试环境,以及丰富的UI组件

 

image.png 

 

特色核心服务2图形系统

成熟完整,生态丰富,兼容性强  

追踪Wayland-Linux的最新标准

实现GTK-Linux生态中完整且成熟方案+QT)

运行于支持Display&GPU最新标准和传统图形硬件架构的RISC-V SoC Linux图形栈

性能强大的3D GPU,支持OpenGLES3.x、Vulkan、OpenCL等主流规范

 

扩展性强,易定制化  

采用Weston,即Wayland的官方参考实现,模块化软件架构,易于二次开发和定制化

社区对Weston已有的重量级应用生态有良好支持,上层UI框架可以透过Wayland/Weston作为显示窗口平台,而不用框架本身考虑硬件平台移植性和适用性

 

image.png 

 

特色核心服务3视频视觉

采用业界流行的开源GStreamer方案,将SoC中的硬件加速模块做成gst插件,可以快速完成应用pipeline搭建。

 

自研插件包括:thead_camera(视频输入)、thead_infer(AI推理)、thead_fce(特征值搜索引擎)

对接标准插件:gst-omx(视频编解码)、kmssink/waylandsink(视频图像输出)

海量官方插件:gst base/good/bad/ugly共计1600+个插件 gstreamer插件串接示意图:

 

 

image.png 

 

特色核心服务4安全子系统

image.png

image.png 

 

特色核心服务5异构虚拟化(HKV)

KVM受制于Linux内核的复杂性,以及安全认证的难度和成本;因此,在嵌入式高可靠场景中并未普及。KHV-based Heterogeneous Virtualization基于KVM的异构虚拟化,独立于硬件虚拟化特性(KVM依赖CPU硬件虚拟化),并遵循原则静态分区,本地化hypervisor。

 

此外,KHV继承KVM软件生态,同时满足高可靠嵌入式系统对静态分区和灵活共享的要求。

 

image.png 

 

KHV相比KVM和Type-1 hypervisors(e.g. XEN)更适合要求静态分区的高可靠嵌入式场景。与KVM不同,即使CPU没有硬件虚拟化特性,KHV也能运行,并复用KVM软件生态。


image.png

相关文章
|
9天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
166 73
|
5天前
|
监控 Linux Shell
30 个实用的 Linux 命令贴与技巧,提升你的效率(附实战案例)
本文介绍了30个实用的Linux命令及其应用场景,帮助你提升命令行操作效率。涵盖返回目录、重新执行命令、查看磁盘使用情况、查找文件、进程管理、网络状态监控、定时任务设置等功能,适合各水平的Linux用户学习和参考。
|
20天前
|
Linux 文件存储 数据安全/隐私保护
Linux用户组管理实战:创建、管理与删除的全面指南
在 Linux 系统中,用户组管理是实现权限控制和资源共享的关键。本文档详细介绍如何创建用户组、管理用户组成员及查看与删除用户组。首先,通过 `groupadd` 命令创建新用户组,并在 `/etc/group` 文件中记录。接着,利用 `usermod` 和 `gpasswd` 命令来添加或删除用户组成员,其中 `gpasswd` 提供更灵活的管理方式。最后,使用 `getent` 或直接读取 `/etc/group` 查看用户组信息,并通过 `groupdel` 删除空用户组。这些操作有助于高效管理和保护系统资源。
36 4
|
21天前
|
Java Shell Linux
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
关于如何使用Shell脚本来解析Linux系统中的应用服务日志,提供了脚本实现的详细步骤和技巧,以及一些Shell编程的技能扩展。
21 0
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
|
24天前
|
Linux
Linux源码阅读笔记19-插入删除模块实战
Linux源码阅读笔记19-插入删除模块实战
|
27天前
|
Linux 调度
Linux源码阅读笔记05-进程优先级与调度策略-实战分析
Linux源码阅读笔记05-进程优先级与调度策略-实战分析
|
28天前
|
存储 Ubuntu Linux
Linux基础入门
Linux基础入门
15 1
|
28天前
|
Ubuntu Linux Shell
Linux 终端入门
Linux 终端入门
16 0
|
28天前
|
安全 网络协议 Linux
保护你的 Linux VPS:入门指南
保护你的 Linux VPS:入门指南
14 0
|
1月前
|
关系型数据库 Linux 网络安全
"Linux系统实战:从零开始部署Apache+PHP Web项目,轻松搭建您的在线应用"
【8月更文挑战第9天】Linux作为服务器操作系统,凭借其稳定性和安全性成为部署Web项目的优选平台。本文以Apache Web服务器和PHP项目为例,介绍部署流程。首先,通过包管理器安装Apache与PHP;接着创建项目目录,并上传项目文件至该目录;根据需要配置Apache虚拟主机;最后重启Apache服务并测试项目。确保防火墙允许HTTP流量,正确配置数据库连接,并定期更新系统以维持安全。随着项目复杂度提升,进一步学习高级配置将变得必要。
62 0