提交 5b9a224e 编写于 作者: O openeuler-ci-bot 提交者: Gitee

!50 【update docs】update installation and releasenotes docs for openEuler 20.03 LTS version

Merge pull request !50 from amyMaYun/master
...@@ -22,19 +22,82 @@ ...@@ -22,19 +22,82 @@
>![](public_sys-resources/icon-note.gif) **说明:** >![](public_sys-resources/icon-note.gif) **说明:**
>由于libkae包的安装依赖libwd包,所以libwd的安装必须先于libkae。 >由于libkae包的安装依赖libwd包,所以libwd的安装必须先于libkae。
![](figures/zh-cn_image_0231143176.png) ```
rpm -ivh uacce*.rpm hisi*.rpm libwd-*.rpm libkae*.rpm
```
![](figures/zh-cn_image_0231143177.png) ```
Verifying... ################################# [100%]
Preparing... ################################# [100%]
checking installed modules
uacce modules start to install
Updating / installing...
1:uacce-1.2.10-4.oe1 ################################# [ 14%]
uacce modules installed
2:libwd-1.2.10-3.oe1 ################################# [ 29%]
3:libkae-1.2.10-3.oe1 ################################# [ 43%]
checking installed modules
hisi_hpre modules start to install
4:hisi_hpre-1.2.10-4.oe1 ################################# [ 57%]
hisi_hpre modules installed
checking installed modules
hisi_rde modules start to install
5:hisi_rde-1.2.10-4.oe1 ################################# [ 71%]
hisi_rde modules installed
checking installed modules
hisi_sec2 modules start to install
6:hisi_sec2-1.2.10-4.oe1 ################################# [ 86%]
hisi_sec2 modules installed
checking installed modules
hisi_zip modules start to install
7:hisi_zip-1.2.10-4.oe1 ################################# [100%]
hisi_zip modules installed
```
5. 使用rpm -qa命令,查看加速器软件包是否已正常安装到系统内。使用rpm -ql命令 ,查看软件包的文件是否正确。示例如下。 5. 使用rpm -qa命令,查看加速器软件包是否已正常安装到系统内。使用rpm -ql命令 ,查看软件包的文件是否正确。示例如下。
![](figures/zh-cn_image_0231143178.png) ```
rpm -qa|grep -E "hisi|uacce|libwd|libkae"
```
![](figures/zh-cn_image_0231143180.png) ```
hisi_rde-1.2.10-4.oe1.aarch64
hisi_sec2-1.2.10-4.oe1.aarch64
libkae-1.2.10-3.oe1.aarch64
hisi_hpre-1.2.10-4.oe1.aarch64
uacce-1.2.10-4.oe1.aarch64
libwd-1.2.10-3.oe1.aarch64
hisi_zip-1.2.10-4.oe1.aarch64
```
![](figures/zh-cn_image_0231143181.png) ```
rpm -ql uacce hisi* libwd* libkae
```
![](figures/zh-cn_image_0231143183.png) ```
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_qm.ko
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/uacce.ko
/etc/modprobe.d/hisi_hpre.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_hpre.ko
/etc/modprobe.d/hisi_rde.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_rde.ko
/etc/modprobe.d/hisi_sec2.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_sec2.ko
/etc/modprobe.d/hisi_zip.conf
/lib/modules/4.19.90-2003.4.0.0036.oe1.aarch64/extra/hisi_zip.ko
/usr/include/warpdrive/config.h
/usr/include/warpdrive/include/uacce.h
/usr/include/warpdrive/smm.h
/usr/include/warpdrive/wd.h
/usr/include/warpdrive/wd_bmm.h
/usr/include/warpdrive/wd_cipher.h
/usr/include/warpdrive/wd_comp.h
/usr/include/warpdrive/wd_dh.h
/usr/include/warpdrive/wd_digest.h
/usr/include/warpdrive/wd_rsa.h
/usr/lib64/libwd.so.1.2.10
/usr/local/lib/engines-1.1/libkae.so.1.2.10
```
6. 重启系统或通过命令行手动依次加载加速器引擎驱动到内核,并查看是否加载成功。 6. 重启系统或通过命令行手动依次加载加速器引擎驱动到内核,并查看是否加载成功。
...@@ -63,7 +126,17 @@ export OPENSSL_ENGINES=/usr/local/lib/engines-1.1 ...@@ -63,7 +126,17 @@ export OPENSSL_ENGINES=/usr/local/lib/engines-1.1
打印信息中包含“_软件包名_-_版本号-_”表示该软件包安装成功。示例如下。 打印信息中包含“_软件包名_-_版本号-_”表示该软件包安装成功。示例如下。
![](figures/zh-cn_image_0231143185.png) ```
rpm -qa|grep -E "hisi|uacce|libwd|libkae"
```
![](figures/zh-cn_image_0231143187.png) ```
hisi_rde-1.2.10-4.oe1.aarch64
hisi_sec2-1.2.10-4.oe1.aarch64
libkae-1.2.10-3.oe1.aarch64
hisi_hpre-1.2.10-4.oe1.aarch64
uacce-1.2.10-4.oe1.aarch64
libwd-1.2.10-3.oe1.aarch64
hisi_zip-1.2.10-4.oe1.aarch64
```
...@@ -11,10 +11,10 @@ ...@@ -11,10 +11,10 @@
``` ```
# cat /etc/os-release # cat /etc/os-release
NAME="openEuler" NAME="openEuler"
VERSION="1.0 ()" VERSION="20.03 (LTS)"
ID="openEuler" ID="openEuler"
VERSION_ID="1.0" VERSION_ID="20.03"
PRETTY_NAME="openEuler 1.0 ()" PRETTY_NAME="openEuler 20.03 (LTS)"
ANSI_COLOR="0;31" ANSI_COLOR="0;31"
``` ```
......
...@@ -125,7 +125,7 @@ ...@@ -125,7 +125,7 @@
### BEGIN /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/10_linux ###
menuentry 'Install openEuler 20.03 LTS' --class red --class gnu-linux --class gnu --class os { menuentry 'Install openEuler 20.03 LTS' --class red --class gnu-linux --class gnu --class os {
set root=(tftp,192.168.1.1) set root=(tftp,192.168.1.1)
linux /vmlinuz ro inst.geoloc=0 console=ttyAMA0 console=tty0 inst.ks=http://192.168.122.1/ks/openEuler-ks.cfg linux /vmlinuz ro inst.geoloc=0 console=ttyAMA0 console=tty0 rd.iscsi.waitnet=0 inst.ks=http://192.168.122.1/ks/openEuler-ks.cfg
initrd /initrd.img initrd /initrd.img
} }
``` ```
......
...@@ -42,5 +42,5 @@ ...@@ -42,5 +42,5 @@
5. 创建虚拟机。 5. 创建虚拟机。
6. 启动虚拟机。 6. 启动虚拟机。
各步骤详细的操作请参考《openEuler 1.0 虚拟化用户指南》。 各步骤详细的操作请参考《openEuler 20.03 LTS 虚拟化用户指南》。
# CVE漏洞<a name="ZH-CN_TOPIC_0228206866"></a>
版本涉及的CVE可通过[CVE列表](https://cve.openeuler.org/#/CVE)查询。
本文介绍 openEuler 1.0 Base 版本的发行说明。 本文是 openEuler 20.03 LTS 版本的发行说明。
\ No newline at end of file \ No newline at end of file
# 版本发行说明
- [法律声明](法律声明.md)
- [用户须知](用户须知.md)
- [简介](简介.md)
- [系统安装](系统安装.md)
- [关键特性](关键特性.md)
- [已知问题](已知问题.md)
- [已修复问题](已修复问题.md)
- [CVE漏洞](CVE漏洞.md)
- [源代码](源代码.md)
- [参与贡献](参与贡献.md)
- [致谢](致谢.md)
# 关键特性<a name="ZH-CN_TOPIC_0228254580"></a>
- iSula轻量级容器解决方案,统一IoT,边缘和云计算容器解决方案
- 缩短三级调用链,百容器内存资源占用相比Docker引擎显著下降
- 支持CRI/OCI标准开源接口,灵活对接runc、kata等多种OCI运行时
- 通过Smart-loading智能镜像下载技术,显著提升镜像下载速度
- 安全容器:虚拟化技术和容器技术的有机结合,安全容器具有更好的隔离性
- 系统容器:支持本地文件系统启动,可实现快速部署。支持部署systemd,提升user namespace隔离性
- Kunpeng加速引擎(KAE),支持加解密加速
- 摘要算法SM3,支持异步模型
- 对称加密算法SM4,支持异步模型,支持CTR/XTS/CBC模式
- 对称加密算法AES,支持异步模型,支持ECB/CTR/XTS/CBC模式
- 非对称算法RSA,支持异步模型,支持Key Sizes 1024/2048/3072/4096
- 密钥协商算法DH,支持异步模型,支持Key Sizes 768/1024/1536/2048/3072/4096
- A-Tune智能系统性能优化引擎,推理出业务特征,配置最佳的系统参数合,使业务处于最优运行状态。
- 增强glibc/zlib/gzip性能,充分利用AArch64的neon指令集,提升基础库性能。
- 内核特性增强
- 支持ARM64内核热补丁
- Numa Aware Qspinlock:减少跨NUMA节点的Cache/总线冲突
- 通过优化 IOVA 页表查找和页表释放算法,提升 I/O MMU 子系统性能
- 根据 ARM64 指令以及流水线特点,优化 CRC32 及 checksum 实现,大幅提升数据校验性能
- 支持 ARM v8.4 MPAM(Memory System Resource Partitioning and Monitoring)
# 内核<a name="ZH-CN_TOPIC_0185681957"></a>
openEuler kernel 基于 Linux 社区 kernel 4.19 版本,并在可靠性、安全性、虚拟化、性能等方面做了针对性的增强,更好地支持鲲鹏系列处理器。openEuler 1.0 Base 基于该版本 kernel 的主要修改如下:
- 回合社区增强特性
- 回合 Linux 4.19 stable 补丁
- 修复 CVE 和其他 Bugfix
- 鲲鹏系列处理器适配和增强
- 泰山服务器驱动支持
# 参与贡献<a name="ZH-CN_TOPIC_0228211471"></a>
作为openEuler用户,你可以通过多种方式协助openEuler社区。参与社区贡献的方法请参见[社区贡献](https://openeuler.org/zh/developer.html),这里简单列出部分方式供参考。
## 特别兴趣小组<a name="section19487145916118"></a>
openEuler将拥有共同兴趣的人们聚在一起,组成了不同的特别兴趣小组(SIG)。当前已有的SIG请参见[SIG列表](https://openeuler.org/zh/sig.html)
我们欢迎并鼓励你加入已有的SIG或创建新的SIG,创建方法请参见[SIG管理指南](https://gitee.com/openeuler/community/blob/master/zh/technical-committee/governance/README.md)
## 邮件列表和任务<a name="section118551716123918"></a>
欢迎你积极地帮助用户解决在[邮件列表](https://openeuler.org/zh/community/mails.html)和issue任务(包括[代码仓任务](https://gitee.com/organizations/openeuler/issues)[软件包仓任务](https://gitee.com/organizations/src-openeuler/issues)) 中提出的问题。另外,我们也欢迎你提出问题。这些都将帮助openEuler社区更好地发展。
## 文档<a name="section108651229193"></a>
你不仅可以通过提交代码参与社区贡献,我们也欢迎你反馈遇到的问题、困难,或者对文档易用性、完整性的改进建议等。例如获取软件或文档过程中的问题,使用系统过程中的难点。欢迎关注并改进[openEuler社区](https://openeuler.org/zh/)的文档模块。
## IRC<a name="section6563203211285"></a>
openEuler也在IRC开辟了频道,作为提供社区支持和交互的额外渠道。详情请参见[openEuler IRC](https://openeuler.org/zh/community/irc.html)
# 发布包说明<a name="ZH-CN_TOPIC_0221653298"></a>
openEuler 社区提供了如下 ISO,各 ISO 含义如下:
- openEuler-1.0-base-aarch64-dvd.iso 为安装 ISO,适用于 Taishan 200 服务器及基于 openEuler 的虚拟化平台。
- openEuler-1.0-base-everything-dvd.iso 为编译依赖 ISO,主要提供源码的编译依赖。
- openEuler-1.0-base-source-dvd.iso 为源码 ISO,包括运行 ISO 的源码包。
# 基础参数说明<a name="ZH-CN_TOPIC_0222051914"></a>
openEuler 1.0 Base 基础的规格参数,如下表所示:
<a name="zh-cn_topic_0220312919_table53044787"></a>
<table><thead align="left"><tr id="zh-cn_topic_0220312919_row42887128"><th class="cellrowborder" valign="top" width="20.73%" id="mcps1.1.3.1.1"><p id="zh-cn_topic_0220312919_p51305376"><a name="zh-cn_topic_0220312919_p51305376"></a><a name="zh-cn_topic_0220312919_p51305376"></a><strong id="zh-cn_topic_0220312919_b59095202"><a name="zh-cn_topic_0220312919_b59095202"></a><a name="zh-cn_topic_0220312919_b59095202"></a>类别</strong></p>
</th>
<th class="cellrowborder" valign="top" width="79.27%" id="mcps1.1.3.1.2"><p id="zh-cn_topic_0220312919_p19514526174012"><a name="zh-cn_topic_0220312919_p19514526174012"></a><a name="zh-cn_topic_0220312919_p19514526174012"></a><strong id="b9303134514498"><a name="b9303134514498"></a><a name="b9303134514498"></a><span id="ph15531238144919"><a name="ph15531238144919"></a><a name="ph15531238144919"></a>规格</span></strong></p>
</th>
</tr>
</thead>
<tbody><tr id="zh-cn_topic_0220312919_row63620936"><td class="cellrowborder" rowspan="4" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p53022201"><a name="zh-cn_topic_0220312919_p53022201"></a><a name="zh-cn_topic_0220312919_p53022201"></a><strong id="zh-cn_topic_0220312919_b7437765"><a name="zh-cn_topic_0220312919_b7437765"></a><a name="zh-cn_topic_0220312919_b7437765"></a>核心参数</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p10321122143918"><a name="zh-cn_topic_0220312919_p10321122143918"></a><a name="zh-cn_topic_0220312919_p10321122143918"></a>Kernel 4.19</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row58684749"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p124531541182613"><a name="zh-cn_topic_0220312919_p124531541182613"></a><a name="zh-cn_topic_0220312919_p124531541182613"></a>Glibc 2.28</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row32836053"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p1645320418267"><a name="zh-cn_topic_0220312919_p1645320418267"></a><a name="zh-cn_topic_0220312919_p1645320418267"></a>GCC 7.3.0</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row97245618359"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p159891145111318"><a name="zh-cn_topic_0220312919_p159891145111318"></a><a name="zh-cn_topic_0220312919_p159891145111318"></a>systemd 243</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row46727122"><td class="cellrowborder" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p1616465433817"><a name="zh-cn_topic_0220312919_p1616465433817"></a><a name="zh-cn_topic_0220312919_p1616465433817"></a><strong id="zh-cn_topic_0220312919_b39878449"><a name="zh-cn_topic_0220312919_b39878449"></a><a name="zh-cn_topic_0220312919_b39878449"></a>标准符合度</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p443810217239"><a name="zh-cn_topic_0220312919_p443810217239"></a><a name="zh-cn_topic_0220312919_p443810217239"></a>符合POSIX标准</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row50254714"><td class="cellrowborder" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p14164115453818"><a name="zh-cn_topic_0220312919_p14164115453818"></a><a name="zh-cn_topic_0220312919_p14164115453818"></a><strong id="zh-cn_topic_0220312919_b61356140"><a name="zh-cn_topic_0220312919_b61356140"></a><a name="zh-cn_topic_0220312919_b61356140"></a>架构支持</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p1944023614018"><a name="zh-cn_topic_0220312919_p1944023614018"></a><a name="zh-cn_topic_0220312919_p1944023614018"></a>AArch64</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row33142240"><td class="cellrowborder" rowspan="4" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p60996242165456"><a name="zh-cn_topic_0220312919_p60996242165456"></a><a name="zh-cn_topic_0220312919_p60996242165456"></a><strong id="zh-cn_topic_0220312919_b5048284016582"><a name="zh-cn_topic_0220312919_b5048284016582"></a><a name="zh-cn_topic_0220312919_b5048284016582"></a>核心支持能力</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p373772113243"><a name="zh-cn_topic_0220312919_p373772113243"></a><a name="zh-cn_topic_0220312919_p373772113243"></a>支持的最大内存</p>
<p id="zh-cn_topic_0220312919_p875373120242"><a name="zh-cn_topic_0220312919_p875373120242"></a><a name="zh-cn_topic_0220312919_p875373120242"></a>AArch64:2TB</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row58970022"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p4796143072619"><a name="zh-cn_topic_0220312919_p4796143072619"></a><a name="zh-cn_topic_0220312919_p4796143072619"></a>最大文件大小</p>
<p id="zh-cn_topic_0220312919_p47961130102610"><a name="zh-cn_topic_0220312919_p47961130102610"></a><a name="zh-cn_topic_0220312919_p47961130102610"></a>ext4:16TB</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row13803553"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p1965722861219"><a name="zh-cn_topic_0220312919_p1965722861219"></a><a name="zh-cn_topic_0220312919_p1965722861219"></a>文件系统默认ext4</p>
<p id="zh-cn_topic_0220312919_p6796123042616"><a name="zh-cn_topic_0220312919_p6796123042616"></a><a name="zh-cn_topic_0220312919_p6796123042616"></a>最大支持1EB</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row37418306"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p6564532182716"><a name="zh-cn_topic_0220312919_p6564532182716"></a><a name="zh-cn_topic_0220312919_p6564532182716"></a>支持双核及多核处理器</p>
<p id="zh-cn_topic_0220312919_p185641232202718"><a name="zh-cn_topic_0220312919_p185641232202718"></a><a name="zh-cn_topic_0220312919_p185641232202718"></a>支持并优化 NUMA 体系架构</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row51228725"><td class="cellrowborder" rowspan="3" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p55886094"><a name="zh-cn_topic_0220312919_p55886094"></a><a name="zh-cn_topic_0220312919_p55886094"></a><strong id="zh-cn_topic_0220312919_b33212803"><a name="zh-cn_topic_0220312919_b33212803"></a><a name="zh-cn_topic_0220312919_b33212803"></a>安装</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p133211214398"><a name="zh-cn_topic_0220312919_p133211214398"></a><a name="zh-cn_topic_0220312919_p133211214398"></a>提供文本/图形安装界面</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row52942405"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p15451111611257"><a name="zh-cn_topic_0220312919_p15451111611257"></a><a name="zh-cn_topic_0220312919_p15451111611257"></a>提供光盘、网络引导安装方式</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row7416719"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p16451181692515"><a name="zh-cn_topic_0220312919_p16451181692515"></a><a name="zh-cn_topic_0220312919_p16451181692515"></a>支持 Kickstart 自动化安装</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row43072099"><td class="cellrowborder" rowspan="2" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p66288034"><a name="zh-cn_topic_0220312919_p66288034"></a><a name="zh-cn_topic_0220312919_p66288034"></a><strong id="zh-cn_topic_0220312919_b59721402"><a name="zh-cn_topic_0220312919_b59721402"></a><a name="zh-cn_topic_0220312919_b59721402"></a>系统工具</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p177913419252"><a name="zh-cn_topic_0220312919_p177913419252"></a><a name="zh-cn_topic_0220312919_p177913419252"></a>提供软件包升级工具,支持 dnf/yum 软件包管理和 dnf/yum 升级</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row50358210"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p1779183413256"><a name="zh-cn_topic_0220312919_p1779183413256"></a><a name="zh-cn_topic_0220312919_p1779183413256"></a>提供防火墙的配置管理工具</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row13554483"><td class="cellrowborder" rowspan="3" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p24171358"><a name="zh-cn_topic_0220312919_p24171358"></a><a name="zh-cn_topic_0220312919_p24171358"></a><strong id="zh-cn_topic_0220312919_b16215635"><a name="zh-cn_topic_0220312919_b16215635"></a><a name="zh-cn_topic_0220312919_b16215635"></a>虚拟化支持</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p132861342614"><a name="zh-cn_topic_0220312919_p132861342614"></a><a name="zh-cn_topic_0220312919_p132861342614"></a>提供对 KVM 的虚拟化支持(KVM版本和内核一致)</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row24316487381"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p44494814384"><a name="zh-cn_topic_0220312919_p44494814384"></a><a name="zh-cn_topic_0220312919_p44494814384"></a>提供对 Qemu 4.0.0 和 Libvirt 5.5.0 的支持</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row10038421"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p143287132260"><a name="zh-cn_topic_0220312919_p143287132260"></a><a name="zh-cn_topic_0220312919_p143287132260"></a>提供虚拟化管理工具实现单机环境下的虚拟机创建、配置与管理</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row1428355113018"><td class="cellrowborder" rowspan="3" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p192845511304"><a name="zh-cn_topic_0220312919_p192845511304"></a><a name="zh-cn_topic_0220312919_p192845511304"></a><strong id="zh-cn_topic_0220312919_b1755519106132"><a name="zh-cn_topic_0220312919_b1755519106132"></a><a name="zh-cn_topic_0220312919_b1755519106132"></a>容器支持</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p10284851103016"><a name="zh-cn_topic_0220312919_p10284851103016"></a><a name="zh-cn_topic_0220312919_p10284851103016"></a>提供对 Docker 18.09 的支持</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row1085815569113"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p15859195611116"><a name="zh-cn_topic_0220312919_p15859195611116"></a><a name="zh-cn_topic_0220312919_p15859195611116"></a>提供对安全容器 Kata 1.7.0 的支持</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row64561449151011"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p20457949131019"><a name="zh-cn_topic_0220312919_p20457949131019"></a><a name="zh-cn_topic_0220312919_p20457949131019"></a>提供对轻量化容器引擎 iSulad 0.1.0 的支持</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row53855148"><td class="cellrowborder" rowspan="2" valign="top" width="20.73%" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p1616355512"><a name="zh-cn_topic_0220312919_p1616355512"></a><a name="zh-cn_topic_0220312919_p1616355512"></a><strong id="zh-cn_topic_0220312919_b1120245135114"><a name="zh-cn_topic_0220312919_b1120245135114"></a><a name="zh-cn_topic_0220312919_b1120245135114"></a>开发工具</strong></p>
</td>
<td class="cellrowborder" valign="top" width="79.27%" headers="mcps1.1.3.1.2 "><p id="zh-cn_topic_0220312919_p864019762614"><a name="zh-cn_topic_0220312919_p864019762614"></a><a name="zh-cn_topic_0220312919_p864019762614"></a>支持 GCC 包含的 C、C++、Objective C、Fortran</p>
<p id="zh-cn_topic_0220312919_p13874114817176"><a name="zh-cn_topic_0220312919_p13874114817176"></a><a name="zh-cn_topic_0220312919_p13874114817176"></a>支持Java、Go</p>
<p id="zh-cn_topic_0220312919_p1564017713263"><a name="zh-cn_topic_0220312919_p1564017713263"></a><a name="zh-cn_topic_0220312919_p1564017713263"></a>相应支持库(libstdc++、libgcj等)</p>
</td>
</tr>
<tr id="zh-cn_topic_0220312919_row15461386"><td class="cellrowborder" valign="top" headers="mcps1.1.3.1.1 "><p id="zh-cn_topic_0220312919_p2064019711263"><a name="zh-cn_topic_0220312919_p2064019711263"></a><a name="zh-cn_topic_0220312919_p2064019711263"></a>支持 Python2/Python3、Perl、Shell 等脚本语言</p>
</td>
</tr>
</tbody>
</table>
# 容器<a name="ZH-CN_TOPIC_0186482017"></a>
openEuler 1.0 Base 中提供容器运行的基础平台 iSula。iSula 基础容器平台同时提供 Docker engine 与轻量化容器引擎 iSulad,用户可根据需要自主选择。
同时,iSula 容器平台还支持运行 kata-container。Docker、containerd、runc、kata-container 均在社区版本的基础上进行了稳定性增强与 bugfix。
## iSulad<a name="zh-cn_topic_0220312916_section1078462861716"></a>
iSula 在居住于中南美洲亚马逊丛林的巴西原住民眼里,它是一种非常强大的蚂蚁,学术上称为“子弹蚁”,因为被它咬一口,犹如被子弹打到那般疼痛,它是世界上最强大的昆虫之一。iSulad 作为轻量化的容器底座,可以为多种场景提供最灵活、最稳定、最安全的底层支撑,与子弹蚂蚁“小个头、大能量”的形象不谋而合。
iSula 通用容器引擎(iSulad)是一种新的容器解决方案,提供统一的架构设计来满足CT和IT领域的不同需求。轻量级容器具有轻、灵、巧、快的特点,不受硬件规格和架构的限制,底噪开销更小,可应用领域更为广泛。
**iSulad重点能力如下:**
**容器镜像管理**
容器镜像是容器运行的基础,在主机上以分层的形式存放,运行前通过联合挂载的方式挂载成统一视图的rootfs供容器使用。容器的镜像管理包括镜像的拉取、导入、删除以及查询。
**容器管理**
容器管理功能提供用户创建、运行、停止、删除、重启等操作容器的能力。
**CNI网络**
实现CRI接口对接CNI网络的能力,包括CNI网络配置文件的解析、CNI网络的加入和退出。
**CRI接口**
CRI API 接口是由kubernetes 推出的容器运行时接口,CRI定义了容器和镜像的服务接口。iSulad支持CRI接口,实现和kubernetes 的对接。
**容器资源管理**
对容器使用资源进行动态管理:
- namespace共享
- 限制运行时的CPU资源
- 限制运行时的内存资源
- 限制运行时的IO资源
- 限制容器rootfs存储空间
- 限制容器内文件句柄数
- 限制容器内可以创建的进程/线程数
- 配置容器内的ulimit值
## Docker<a name="zh-cn_topic_0220312916_section13703956171618"></a>
Docker 的英文本意是码头工人,码头工人的工作就是将商品打包到 Container(集装箱)并且搬运 Container、装载 Container。从 Docker 字面上的解释就可以看出 Docker 是干什么的, 对应到 Linux 中,Docker 就是将App打包到 Container,通过 Container 实现 App 在各种平台上 的部署,运行。Docker 通过 Linux Container 技术将 App 变成一个标准化的、可移植的、自管理的组件,实现了应用的 build once、run everywhere。Docker 技术特点是:应用快速发布、应用部署和扩容简单、更高的应用密度、应用管理更简单。
openEuler 1.0 Base 集成 moby 18.09 版本,并在版本基础上进行了 bugfix 和稳定性增强。
## 安全容器<a name="zh-cn_topic_0220312916_section122933732814"></a>
安全容器是虚拟化技术和容器技术的有机结合,相比普通 Linux 容器,安全容器具有更好的隔离性。
普通 Linux 容器利用 namespace 进行进程间运行环境的隔离,并使用 CGroup 进行资源限制;因此普通 Linux 容器本质上还是共用同一个内核,单个容器有意或无意影响到内核都会影响到整台宿主机上的容器。
安全容器是使用虚拟化层进行容器间的隔离,同一个主机上不同的容器间运行互相不受影响。
iSula 容器平台支持创建安全容器,使用 kata-container 作为容器的运行时。
openEuler 1.0 Base 集成了 kata-container 1.7 版本,该版本主要特性如下:
- 在社区版本的基础上,进行了稳定性和可靠性加固
- 重构了社区Host Cgroup资源限制方案,支持CPU、Memory和Blkio资源限制,更适用于生产环境
- 更灵活的网络配置方案,支持通过kata-network接口创建和更新网卡和路由表
- 支持DPDK/SPDK高性能网络
- 支持容器网络状态信息监控
## 系统容器<a name="zh-cn_topic_0220312916_section118975439292"></a>
系统容器主要应对在重计算、高性能、大并发的场景下,重型应用和业务云化的问题,相比较虚拟化技术,系统容器可直接继承物理机特性,同时具备性能更优良,较少底噪的优点。从系统资源分配来看,系统容器在有限资源上相比虚拟机可分配更多计算单元,降低成本,通过系统容器可以构建产品的差异化竞争力,提供计算密度更高,价格更便宜,性能更优良的的计算单元实例。
iSula 容器平台支持创建系统容器,并能支持在系统容器内动态调整设备、运行资源,且提供更优秀的 user namespace 隔离。
**系统容器相比于普通容器,提供了如下增强特性:**
**本地文件系统启动**
普通容器只能通过远端pull镜像到本地启动,pull镜像过程可能会因网络问题导致耗时较长,而系统容器支持本地文件系统启动,可实现快速部署
**容器内运行systemd**
系统容器与普通容器最大的差异就在于容器的init进程启动,普通容器无法实现容器启动时自动拉起systemd,而系统容器具备这个能力
**增强隔离性**
- 支持使用lxcfs插件实现容器内资源视图隔离,同时支持lxcfs插件热插拔和高可用
- 支持多对应user namespace,实现容器和主机uid/gid隔离
- 支持配置容器内namespace化内核参数可读写,在容器内可动态配置namespace化内核参数值
**控制容器访问权限**
支持通过TLS认证方式来对用户身份进行验证,并通过对接authz插件服务控制用户的操作权限
**容器资源动态管理**
- 动态添加/删除/更新容器内的设备
- 动态添加/删除/更新容器内的网卡
- 动态添加/删除容器内的路由
- 动态添加/删除容器内的卷
**其它特性列表**
- 环境变量持久化
- 限制容器内句柄数
- 执行reboot/shudown命令
- 动态加载内核模块
- 共享内存通信
# 已修复问题<a name="ZH-CN_TOPIC_0225731125"></a>
完整问题清单请参见[完整问题清单](https://gitee.com/organizations/src-openeuler/issues)
完整的内核提交记录请参见[提交记录](https://gitee.com/openeuler/kernel/commits/openEuler-1.0-LTS)
已修复问题请参见[表1](#table249714911433)
**表 1** 修复问题列表
<a name="table249714911433"></a>
<table><thead align="left"><tr id="row104971596432"><th class="cellrowborder" valign="top" width="9.66%" id="mcps1.2.3.1.1"><p id="p1649720994313"><a name="p1649720994313"></a><a name="p1649720994313"></a>ISSUE</p>
</th>
<th class="cellrowborder" valign="top" width="90.34%" id="mcps1.2.3.1.2"><p id="p8497129114312"><a name="p8497129114312"></a><a name="p8497129114312"></a>问题描述</p>
</th>
</tr>
</thead>
<tbody><tr id="row449716974316"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p34974920436"><a name="p34974920436"></a><a name="p34974920436"></a><a href="https://gitee.com/openeuler/kernel/issues/I1BJTF?from=project-issue" target="_blank" rel="noopener noreferrer">I1BJTF</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p74971293436"><a name="p74971293436"></a><a name="p74971293436"></a><span>【kernel bug】arm机器上lscpu命令无法显示cpu主频,cpu cache错误</span></p>
</td>
</tr>
<tr id="row20574203616567"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p1357415364563"><a name="p1357415364563"></a><a name="p1357415364563"></a><a href="https://gitee.com/openeuler/iSulad-img/issues/I1BWPD?from=project-issue" target="_blank" rel="noopener noreferrer">I1BWPD</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p85749369567"><a name="p85749369567"></a><a name="p85749369567"></a><span>使用isula/crictl pull镜像失败</span></p>
</td>
</tr>
<tr id="row20773194665915"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p6774164645917"><a name="p6774164645917"></a><a name="p6774164645917"></a><a href="https://gitee.com/src-openeuler/shadow/issues/I1BV56?from=project-issue" target="_blank" rel="noopener noreferrer">I1BV56</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p77741646115916"><a name="p77741646115916"></a><a name="p77741646115916"></a><span>delete redundant gpg sig file for shadow-4.6</span></p>
</td>
</tr>
<tr id="row442920506594"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p154294507593"><a name="p154294507593"></a><a name="p154294507593"></a><a href="https://gitee.com/src-openeuler/expect/issues/I1BV38?from=project-issue" target="_blank" rel="noopener noreferrer">I1BV38</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p19429165016596"><a name="p19429165016596"></a><a name="p19429165016596"></a><span>unbuffer命令不可用</span></p>
</td>
</tr>
<tr id="row640673815415"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p12406103810410"><a name="p12406103810410"></a><a name="p12406103810410"></a><a href="https://gitee.com/src-openeuler/iputils/issues/I1BA9B?from=project-issue" target="_blank" rel="noopener noreferrer">I1BA9B</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p134061138343"><a name="p134061138343"></a><a name="p134061138343"></a><span>arping -w参数失效</span></p>
</td>
</tr>
<tr id="row1967874117414"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p16679204110411"><a name="p16679204110411"></a><a name="p16679204110411"></a><a href="https://gitee.com/openeuler/kernel/issues/I1AV3S?from=project-issue" target="_blank" rel="noopener noreferrer">I1AV3S</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p176790413419"><a name="p176790413419"></a><a name="p176790413419"></a><span>跑最新LTP中的pty03用例,必现oops</span></p>
</td>
</tr>
<tr id="row1076072510202"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p776062513206"><a name="p776062513206"></a><a name="p776062513206"></a><a href="https://gitee.com/src-openeuler/cronie/issues/I1AZ1I?from=project-issue" target="_blank" rel="noopener noreferrer">I1AZ1I</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p147601725112012"><a name="p147601725112012"></a><a name="p147601725112012"></a><span>启动500个定时任务,4~5分钟后,任务处理不过来,系统会卡死</span></p>
</td>
</tr>
<tr id="row3131122913207"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p81318296202"><a name="p81318296202"></a><a name="p81318296202"></a><a href="https://gitee.com/openeuler/iSulad/issues/I1AH2C?from=project-issue" target="_blank" rel="noopener noreferrer">I1AH2C</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p19131152918200"><a name="p19131152918200"></a><a name="p19131152918200"></a><span>启动kata容器失败抓到warning信息不足定位,需要打印更多报错</span></p>
</td>
</tr>
<tr id="row1494114212318"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p129415428238"><a name="p129415428238"></a><a name="p129415428238"></a><a href="https://gitee.com/openeuler/iSulad/issues/I1AGXO?from=project-issue" target="_blank" rel="noopener noreferrer">I1AGXO</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p794174219231"><a name="p794174219231"></a><a name="p794174219231"></a><span>kata-runtime远程模式下isula rm -f没有执行kill导致残留</span></p>
</td>
</tr>
<tr id="row19391546182314"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p164044613233"><a name="p164044613233"></a><a name="p164044613233"></a><a href="https://gitee.com/openeuler/kernel/issues/I1AF39?from=project-issue" target="_blank" rel="noopener noreferrer">I1AF39</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p164094682313"><a name="p164094682313"></a><a name="p164094682313"></a><span>ext4文件系统上触发open时发现softlockup</span></p>
</td>
</tr>
<tr id="row154698862716"><td class="cellrowborder" valign="top" width="9.66%" headers="mcps1.2.3.1.1 "><p id="p846910816275"><a name="p846910816275"></a><a name="p846910816275"></a><a href="https://gitee.com/openeuler/iSulad/issues/I1ADUD?from=project-issue" target="_blank" rel="noopener noreferrer">I1ADUD</a></p>
</td>
<td class="cellrowborder" valign="top" width="90.34%" headers="mcps1.2.3.1.2 "><p id="p5694192512715"><a name="p5694192512715"></a><a name="p5694192512715"></a><span>kubectl创建pod导致isulad崩溃</span></p>
</td>
</tr>
</tbody>
</table>
# 已知问题<a name="ZH-CN_TOPIC_0225731124"></a>
- 内核FIPS启动模式还未经过完整认证,FIPS启动可能存在问题。[I17Z18](https://gitee.com/src-openeuler/crypto-policies/issues/I17Z18?from=project-issue)
- 使用libvirt启动glusterfs虚拟机,每次会有300字节的内存泄漏。讨论详情请参见[社区讨论](https://github.com/gluster/glusterfs/issues/818)[I185CH](https://gitee.com/src-openeuler/glusterfs/issues/I185CH?from=project-issue)
- 使用libvirt接口连续执行磁盘热插拔操作,概率性出现热拔接口返回成功,但磁盘未真正拔除,也不能再次热插和热拔该磁盘。关闭虚拟机后再启动可恢复正常。[I1C72L](https://gitee.com/src-openeuler/qemu/issues/I1C72L?from=project-issue)
- 使用x86\_64虚拟机安装时,极小概率可能出现未知安装异常,请再次安装恢复。[I1C8HS](https://gitee.com/src-openeuler/anaconda/issues/I1C8HS?from=project-issue)
- CVE-2012-0039在本地应用程序通过调用g\_str\_hash函数,调用该接口的应用会持续消耗CPU,导致拒绝服务攻击,社区已经明确不解决。
- CVE-2015-9541通过构造异常的SVG文档进行指数级XML实体扩展攻击,当Qt尝试解析SVG时,可能会发生内存不足的情况。讨论详情请参见[社区讨论](https://codereview.qt-project.org/c/qt/qtbase/+/293909)
- 部分开源包编译前需要提前安装gdb,gcc,make等基础软件,否则会由于缺少依赖而编译失败。
- AArch64和x86\_64在char类型上定义不一致,导致coreutils,augeas,diffutils自检报错,请增加--fsigned-char编译选项解决。
# 技术特性<a name="ZH-CN_TOPIC_0182825780"></a>
# 支持鲲鹏生态<a name="ZH-CN_TOPIC_0186535219"></a>
openEuler 1.0 Base 与鲲鹏处理器协同设计开发,提供OS、虚拟化、容器、工具链等基础软件栈能力,打造高安全、高性能、鲲鹏原生等核心 OS 基础设施竞争力。
- 多核/重核加速技术:提升鲲鹏芯片多核计算性能。
- 芯片级加速技术:HPRE 和 SEC 加速器的软件全栈支持,大幅提升加解密运算、压缩解压缩运算的性能。
# 文件系统<a name="ZH-CN_TOPIC_0185681954"></a>
## 支持 ext4 文件系统<a name="zh-cn_topic_0220312923_zh-cn_topic_0058462766_s15e1285a2991480fab403626b3193a88"></a>
openEuler 1.0 Base 中使用的默认文件系统是 ext4,ext4 向下兼容于 ext3/ext2 文件系统,可以将 ext3/ext2 挂载为 ext4 分区。
ext4 的主要特性:
- ext4 最大支持的文件系统是 1EB,单一最大文件值是 16TB。
- ext4 使用 extent 树代替了ext3/ext2 的逻辑块映射,减少了元数据块的使用,提高了处理大型文件的效率。
- ext4 使用延迟块分配机制,仅当文件从高速缓存写入磁盘时才真正为数据分配磁盘块,有利于改善大文件的碎片化。
- ext4 支持日志校验和,以确认日志块是否遭到损坏,提升可靠性。
- ext4 支持惰性初始化,启用 lazyinit 特性后,会在后台挂载过程中逐步初始化inode表,这将显著加快创建 ext4 文件系统的速度。
- ext4 支持快速 fsck,在 ext4 中每个 inode 表将会存储未使用的 inode 列表,在 fsck 时将会跳过这些inode,加速 fsck。
- ext4 支持三种日志模式:journal(可靠性最高)、ordered、writeback(性能最好)。
另外,openEuler 也对 ext4 进行了一些bug修复和优化,主要优化点如下:
- ext4 和 sysmonitor相结合,支持 ext4 文件系统的故障告警通知。
## 支持 XFS 文件系统<a name="zh-cn_topic_0220312923_section202642058161515"></a>
openEuler 1.0 Base 支持高性能的日志文件系统 XFS,并提供了专门用于 XFS 备份和恢复的工具 xfsdump 和 xfsrestore 。XFS 需要关注的主要特性如下:
- XFS 的设计完全基于扩展,最大支持的文件系统和文件大小是8EB - 1字节。
- 使用B+树的数据结构来提升IO灵活性,如将B+树用于 inode 和 block 管理等。
- 将块设备分割成多个AG(分配组),允许多个线程并行在不同的分配组上进行IO操作,提升并行能力。
- 支持延迟分配,在内存中记录事务,在数据真正写入磁盘之前分配磁盘块。
- 支持自描述 metadata 的元数据校验,防止在意外断电时元数据遭到损坏。
# 法律声明<a name="ZH-CN_TOPIC_0216863807"></a> # 法律声明<a name="ZH-CN_TOPIC_0225731129"></a>
**版权所有 © 2020 华为技术有限公司。** **版权所有 © 2020 华为技术有限公司。**
您对“本文档”的复制、使用、修改及分发受知识共享\(Creative Commons\)署名—相同方式共享4.0国际公共许可协议\(以下简称“CC BY-SA 4.0”\)的约束。为了方便用户理解,您可以通过访问[https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 \(但不是替代\)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[https://creativecommons.org/licenses/by-sa/4.0/legalcode](https://creativecommons.org/licenses/by-sa/4.0/legalcode) 您对“本文档”的复制、使用、修改及分发受知识共享\(Creative Commons\)署名—相同方式共享4.0国际公共许可协议\(以下简称“CC BY-SA 4.0”\)的约束。为了方便用户理解,您可以通过访问[https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/) 了解CC BY-SA 4.0的概要 \(但不是替代\)。CC BY-SA 4.0的完整协议内容您可以访问如下网址获取:[https://creativecommons.org/licenses/by-sa/4.0/legalcode](https://creativecommons.org/licenses/by-sa/4.0/legalcode)
  
**商标声明** **商标声明**
openEuler为华为技术有限公司的商标。本文档提及的其他所有商标或注册商标,由各自的所有人拥有。 openEuler为华为技术有限公司的商标。本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
  
**免责声明** **免责声明**
本文档仅作为使用指导,除非适用法强制规定或者双方有明确书面约定, 华为技术有限公司对本文档中的所有陈述、信息和建议不做任何明示或默示的声明或保证,包括但不限于不侵权,时效性或满足特定目的的担保。 本文档仅作为使用指导,除非适用法强制规定或者双方有明确书面约定, 华为技术有限公司对本文档中的所有陈述、信息和建议不做任何明示或默示的声明或保证,包括但不限于不侵权,时效性或满足特定目的的担保。
......
# 源代码<a name="ZH-CN_TOPIC_0225731127"></a>
openEuler主要包含两个代码仓库:
- 代码仓:[https://gitee.com/openeuler](https://gitee.com/openeuler)
- 软件包仓:[https://gitee.com/src-openeuler](https://gitee.com/src-openeuler)
openEuler发布件同时也提供source iso,具体请参见“系统安装”的内容。
# 版本发行说明<a name="ZH-CN_TOPIC_0222051911"></a>
openEuler是一款开源操作系统。当前openEuler内核源于Linux,支持鲲鹏及其它多种处理器,能够充分释放计算芯片的潜能,是由全球开源贡献者构建的高效、稳定、安全的开源操作系统,适用于数据库、大数据、云计算、人工智能等应用场景。同时,openEuler是一个面向全球的操作系统开源社区,通过社区合作,打造创新平台,构建支持多处理器架构、统一和开放的操作系统,推动软硬件应用生态繁荣发展。
本次发行版本为 openEuler 1.0 的 Base 版本,即基础版本,包含了运行最小系统的核心组件。本次发行说明提供了版本相关基础能力的介绍,主要包括:
- 简介
- 基础参数说明
- 技术特性
- 发布包说明
# 用户须知<a name="ZH-CN_TOPIC_0232332818"></a>
- openEuler版本号计数规则由openEuler x.x变更为以年月为版本号,以便用户了解版本发布时间,例如openEuler 20.03表示发布时间为2020年3月。
- [Python核心团队](https://www.python.org/dev/peps/pep-0373/#update)已经于2020年1月停止对Python 2的维护。2020年,openEuler 20.03 LTS仅修复Python 2的致命CVE,并将于2020年12月31日全面停止维护。请您尽快切换到Python 3。
# 简介<a name="ZH-CN_TOPIC_0182825778"></a> # 简介<a name="ZH-CN_TOPIC_0225720060"></a>
## 版本介绍<a name="zh-cn_topic_0182825778_section2199453141213"></a> openEuler是一款开源操作系统。当前openEuler内核源于Linux,支持鲲鹏及其它多种处理器,能够充分释放计算芯片的潜能,是由全球开源贡献者构建的高效、稳定、安全的开源操作系统,适用于数据库、大数据、云计算、人工智能等应用场景。同时,openEuler是一个面向全球的操作系统开源社区,通过社区合作,打造创新平台,构建支持多处理器架构、统一和开放的操作系统,推动软硬件应用生态繁荣发展。
openEuler 1.0 的 Base 版本是基础版本,包含了运行最小系统的核心组件。该版本基于 Linux 主线内核 4.19 版本,进行了 bug 修改、漏洞修复等工作,并加入了一些具备创新性的功能特性。
## 最小硬件要求<a name="zh-cn_topic_0182825778_section1542202114014"></a>
安装 openEuler 1.0 Base 所需的最小硬件要求如[表1](#zh-cn_topic_0182825778_tff48b99c9bf24b84bb602c53229e2541)所示。
**表 1** 最小硬件要求
<a name="zh-cn_topic_0182825778_tff48b99c9bf24b84bb602c53229e2541"></a>
<table><thead align="left"><tr id="zh-cn_topic_0182825778_r36f08b63edea4973a8228200caa2a50b"><th class="cellrowborder" valign="top" width="11.19111911191119%" id="mcps1.2.4.1.1"><p id="zh-cn_topic_0182825778_aef3575d97cdf4dcfb65f8d0c8d2d4a76"><a name="zh-cn_topic_0182825778_aef3575d97cdf4dcfb65f8d0c8d2d4a76"></a><a name="zh-cn_topic_0182825778_aef3575d97cdf4dcfb65f8d0c8d2d4a76"></a><strong id="zh-cn_topic_0182825778_abf63bde6a66a4ce5b21d81948fcafe36"><a name="zh-cn_topic_0182825778_abf63bde6a66a4ce5b21d81948fcafe36"></a><a name="zh-cn_topic_0182825778_abf63bde6a66a4ce5b21d81948fcafe36"></a>部件名称</strong></p>
</th>
<th class="cellrowborder" valign="top" width="39.93399339933993%" id="mcps1.2.4.1.2"><p id="zh-cn_topic_0182825778_a919d3bb266c8432fb33c51fa8f3a4fc3"><a name="zh-cn_topic_0182825778_a919d3bb266c8432fb33c51fa8f3a4fc3"></a><a name="zh-cn_topic_0182825778_a919d3bb266c8432fb33c51fa8f3a4fc3"></a><strong id="zh-cn_topic_0182825778_a9386cf027c1e47d99651159bb62130e7"><a name="zh-cn_topic_0182825778_a9386cf027c1e47d99651159bb62130e7"></a><a name="zh-cn_topic_0182825778_a9386cf027c1e47d99651159bb62130e7"></a>最小硬件要求</strong></p>
</th>
<th class="cellrowborder" valign="top" width="48.874887488748875%" id="mcps1.2.4.1.3"><p id="zh-cn_topic_0182825778_a3ac7cf4867974c4990ee6deab716db5f"><a name="zh-cn_topic_0182825778_a3ac7cf4867974c4990ee6deab716db5f"></a><a name="zh-cn_topic_0182825778_a3ac7cf4867974c4990ee6deab716db5f"></a><strong id="zh-cn_topic_0182825778_a0206841e981640cf833dc2556a7def50"><a name="zh-cn_topic_0182825778_a0206841e981640cf833dc2556a7def50"></a><a name="zh-cn_topic_0182825778_a0206841e981640cf833dc2556a7def50"></a>说明</strong></p>
</th>
</tr>
</thead>
<tbody><tr id="zh-cn_topic_0182825778_ra68eff5c33a84bb2be6672a48a643d26"><td class="cellrowborder" valign="top" width="11.19111911191119%" headers="mcps1.2.4.1.1 "><p id="zh-cn_topic_0182825778_ac0a50d2069ab444cafff180647772df4"><a name="zh-cn_topic_0182825778_ac0a50d2069ab444cafff180647772df4"></a><a name="zh-cn_topic_0182825778_ac0a50d2069ab444cafff180647772df4"></a>CPU</p>
</td>
<td class="cellrowborder" valign="top" width="39.93399339933993%" headers="mcps1.2.4.1.2 "><p id="zh-cn_topic_0182825778_p202681030132314"><a name="zh-cn_topic_0182825778_p202681030132314"></a><a name="zh-cn_topic_0182825778_p202681030132314"></a>鲲鹏 920(架构为AArch64)</p>
</td>
<td class="cellrowborder" valign="top" width="48.874887488748875%" headers="mcps1.2.4.1.3 "><p id="zh-cn_topic_0182825778_a2601e9eece5f4c7bb02881c9ac647a61"><a name="zh-cn_topic_0182825778_a2601e9eece5f4c7bb02881c9ac647a61"></a><a name="zh-cn_topic_0182825778_a2601e9eece5f4c7bb02881c9ac647a61"></a>-</p>
</td>
</tr>
<tr id="zh-cn_topic_0182825778_rf2a5d43b74894a0882b7c17bdfeb697f"><td class="cellrowborder" valign="top" width="11.19111911191119%" headers="mcps1.2.4.1.1 "><p id="zh-cn_topic_0182825778_ad00611ec129a41a9841fb579eece7804"><a name="zh-cn_topic_0182825778_ad00611ec129a41a9841fb579eece7804"></a><a name="zh-cn_topic_0182825778_ad00611ec129a41a9841fb579eece7804"></a>内存</p>
</td>
<td class="cellrowborder" valign="top" width="39.93399339933993%" headers="mcps1.2.4.1.2 "><p id="zh-cn_topic_0182825778_a94efe642b8694e5a85747e123b951efc"><a name="zh-cn_topic_0182825778_a94efe642b8694e5a85747e123b951efc"></a><a name="zh-cn_topic_0182825778_a94efe642b8694e5a85747e123b951efc"></a>不小于8GB</p>
</td>
<td class="cellrowborder" valign="top" width="48.874887488748875%" headers="mcps1.2.4.1.3 "><p id="zh-cn_topic_0182825778_abfb44d28dca741f68df94e4e276d2410"><a name="zh-cn_topic_0182825778_abfb44d28dca741f68df94e4e276d2410"></a><a name="zh-cn_topic_0182825778_abfb44d28dca741f68df94e4e276d2410"></a>-</p>
</td>
</tr>
<tr id="zh-cn_topic_0182825778_rd2c1ebd93ea64e85a5f3fc88dc5ba456"><td class="cellrowborder" valign="top" width="11.19111911191119%" headers="mcps1.2.4.1.1 "><p id="zh-cn_topic_0182825778_afd36954546334c1681b5a391bbc386ae"><a name="zh-cn_topic_0182825778_afd36954546334c1681b5a391bbc386ae"></a><a name="zh-cn_topic_0182825778_afd36954546334c1681b5a391bbc386ae"></a>硬盘</p>
</td>
<td class="cellrowborder" valign="top" width="39.93399339933993%" headers="mcps1.2.4.1.2 "><p id="zh-cn_topic_0182825778_p1224172312719"><a name="zh-cn_topic_0182825778_p1224172312719"></a><a name="zh-cn_topic_0182825778_p1224172312719"></a>不小于10GB(为了获得更好的应用体验,建议不小于120GB)</p>
</td>
<td class="cellrowborder" valign="top" width="48.874887488748875%" headers="mcps1.2.4.1.3 "><p id="zh-cn_topic_0182825778_acc0affdd82e34f32966171e21855ef40"><a name="zh-cn_topic_0182825778_acc0affdd82e34f32966171e21855ef40"></a><a name="zh-cn_topic_0182825778_acc0affdd82e34f32966171e21855ef40"></a>支持IDE、SATA、SAS等接口的硬盘。</p>
</td>
</tr>
</tbody>
</table>
>![](public_sys-resources/icon-note.gif) **说明:**
>openEuler 当前仅支持华为 TaiShan 200 服务器,后续将逐步增加对其他厂商服务器的支持。
# 系统安全<a name="ZH-CN_TOPIC_0185681961"></a>
openEuler 1.0 Base 提供多重安全手段,包括身份识别与认证、安全协议、强制访问控制、完整性保护、安全审计等安全机制,保障操作系统的安全性,为各类上层应用提供安全基础。
- 提供 openssh/pam/sssd/krb5 等支持本地及远程集中身份识别与认证机制
- 提供 openssl-1.1.1 版本支持 TLSv1.3
- 提供基于 TPM 2.0 的 TPM 驱动及 TPM-TSS 协议栈,支持使能可信启动和安全启动
- 支持 AUDIT 审计框架,对系统进行安全审计
# 系统性能优化<a name="ZH-CN_TOPIC_0221472922"></a>
## 系统扩展性(Scale Out)<a name="zh-cn_topic_0221472922_section1128617212218"></a>
- Numa Aware Qspinlock
对现有的qspinlock做增强,将锁的等待队列分成两个,本地NUMA节点等待队列和远程NUMA节点等待队列,本地NUMA节点等待队列的线程有限获取锁,减少跨NUMA节点的Cache/总线冲突,从而提升性能
- MMU gather
减少TLB flush,从而提升性能
- 关键驱动如中断控制器 ITS 和 SMMU 的内存分配 NUMA Aware
## IO 性能优化<a name="zh-cn_topic_0221472922_section144561018225"></a>
- 通过优化 IOVA 页表查找和页表释放算法,提升 IO MMU 子系统性能
- 减少关键结构体的 cache false sharing,从而提升性能
## 指令加速<a name="zh-cn_topic_0221472922_section13808133613212"></a>
- CRC32 和 checksum 加速
根据 ARM64 指令以及流水线特点,优化 CRC32 及 checksum 实现,大幅提升数据校验性能。
# 系统管理<a name="ZH-CN_TOPIC_0185681958"></a>
openEuler 1.0 Base 使用 systemd 进行系统和服务的管理,systemd 与 SysV 和 Linux 标准的 init 脚本兼容。systemd 具备下列优势:
- 更快的启动速度:systemd 提供了并行启动能力,采用了socket/D-Bus activation 等技术启动服务。
- 按需启动守护进程:systemd 提供按需启动的能力,只有在某个服务被请求的时候才启动它。当该服务结束后,systemd 可以关闭它,等待下次需要时再次启动它。
- 采用 CGroup 来跟踪和管理进程的生命周期:systemd 则利用 Linux 内核的 CGroup 特性来完成跟踪的任务。停止服务时,通过查询 CGroup,systemd 可以确保找到所有的相关进程,从而干净地停止服务。
- 能够对系统进行快照和恢复:systemd 快照提供将当前系统的运行状态保存并恢复的能力。
- 日志服务:systemd 自带日志服务 journald,相比于 syslog 服务具备一些优点,比如:采用二进制格式保存所有日志信息,更安全;无需自己编写复杂脆弱的字符串分析处理程序。用户可以使用 journalctl 命令来查看日志信息。
openEuler 1.0 Base 修复问题:
- 修复 udev 重命名冲突,加入等待和 retry 机制,确保命名成功。
# 系统调测<a name="ZH-CN_TOPIC_0185681964"></a>
## 支持kdump<a name="zh-cn_topic_0220312925_section109891661475"></a>
Kdump 是 Linux 内核态异常后的一种转储内存数据的机制。Kdump 服务启动时预先加载的 kdump 内核,通过这个小内核,重新挂载系统分区,通过 kdump工具,将崩溃内核的内存以转储vmcore文件的方式保存到系统盘上,开发和维护工程师可以利用 crash 工具打开 vmcore,分析系统崩溃原因。
能够触发 kdump 包含:内核地址访问异常(oops)、系统内核严重异常(panic)、内核态死循环(软件狗狗叫)、长时间关中断(NMI狗狗叫)、系统内存耗尽(oom)。
**特性增强**
- 支持 AArch64 架构下同时使用高低端内存启动 kdump 服务
- 支持传递更长的启动参数给 kdump 内核(由512字符增加到1536字符)
- 支持更大的物理内存地址空间(100TB)
## 支持性能调测工具(Perf)<a name="zh-cn_topic_0220312925_zh-cn_topic_0058462758_section1683960105444"></a>
Perf 是一个功能强大的性能分析工具,可以实现对程序硬件事件、软件事件、内核 tracepoint 及硬件断点等性能指标的监视,这些性能指标可以帮助程序员定位性能瓶颈,方便进行性能调优。
通过 Perf 工具,应用程序可以利用 PMU,tracepoint 和内核中的特殊计数器来进行性能统计。Perf 工具不但可以分析指定应用程序的性能问题 ,也可以用来分析内核的性能问题,可以同时分析应用代码和内核,从而全面理解应用程序中的性能瓶颈。
## 支持blktrace工具<a name="zh-cn_topic_0220312925_zh-cn_topic_0058462758_section16335343105444"></a>
blktrace 是一个针对 Linux 内核中块设备I/O层的跟踪工具,用来收集磁盘IO信息中当IO进行到块设备层时的详细信息(如 IO 请求提交、入队、合并、完成等等一些列的信息)。
通过使用这个工具,使用者可以获取I/O请求队列的各种详细的情况,包括进行读写的进程名称、进程号、执行时间、读写的物理块号、块大小等等,是一个 Linux下分析 I/O 相关内容的很好的工具。
# 编译器<a name="ZH-CN_TOPIC_0222052685"></a>
## GCC<a name="zh-cn_topic_0220312917_section814135792710"></a>
GCC 7.3.0 包括了 C、C++、Fortran 的前端,也包括了这些语言的库(如libstdc++、libgcc等),openEuler 1.0 Base 配套编译器为 GCC 7.3.0,并在此基础上进行了特性增强和漏洞修复,其主要更新如下:
**特性增强**
- 针对鲲鹏920的 TaishanV110 核,支持该TaiShan核微架构下的流水线优化
- 支持 AArch64 后端下的长跳转(Long Call)功能
- 支持循环优化 loop unroll and jam,将多层循环中的外层循环展开,并将展开后的多个内层循环合并
- 支持循环优化 loop interchange,将多层循环中的内外层循环进行交换
**安全漏洞修复**
- 修复ARM后端下栈保护功能在特殊场景中能够被黑客绕过保护的安全漏洞(CVE-2018-12886)
- 修复POWER9后端下多次调用\_\_builtin\_darn函数的返回值相同的安全漏洞(CVE-2019-15847)
## OpenJDK<a name="zh-cn_topic_0220312917_section2068511112811"></a>
JDK(Java Development Kit)是 Java 开发者进行 Java 开发所必须的软件包,包含 JRE(Java Runtime Environment)和编译、调测工具。openEuler 1.0 Base 配套 JDK 为 OpenJDK 8, 并在此基础上进行了 GC 优化、并发稳定性增强、安全性增强等,提高了 Java 应用程序在 ARM 上的性能和稳定性,其主要特性和更新如下:
**特性**
- 兼容Java SE 8 & JDK 8
**特性增强**
- 删除 GC 中冗余的 read/write barrier
- 针对 ARM 弱内存模型进行了稳定性增强
**问题修复**
- 在ARM v8.1上默认禁用UseLSE选项
- 避免了因为没有提前加载ClassLoader.findLibrary和System.loadLibrary而导致的潜在的死锁问题 \(JDK-8231584\)
- 解决了一个容易遇到的javac检查超类时无限递归的bug(JDK-8214345)
- 修复了在heapdump时可能遇到的crash问题(JDK-8194246)
- 修复了getCanonicalPath在处理"//"时遇到的crash问题(JDK-8194154)
- 修复了一个AbstractQueuedSynchronizer可能存在的锁竞争问题(JDK-8191483)
- 修复创建一个NTLM连接抛空指针异常的问题(JDK-8151788)
- DateTimeFormatter支持"yyyyMMddHHmmssSSS"日期格式解析(JDK-8031085)
# 致谢<a name="ZH-CN_TOPIC_0228211472"></a>
我们忠心地感谢参与和协助openEuler项目的所有成员。是你们的辛勤付出使得版本顺利发布,也为openEuler更好地发展提供可能。
# 虚拟化<a name="ZH-CN_TOPIC_0185681960"></a>
## Qemu<a name="zh-cn_topic_0185681960_section14349202621712"></a>
openEuler 1.0 Base 中配套 Qemu 为 4.0.0 版本,相比早期版本修复了诸多缺陷并进行了特性和设备支持能力的增强,重要更新如下:
**特性增强**
- 热迁移 postcopy 支持 hugpages 和 hugetlbfs
- 支持 GICv3 KVM 的热迁移
- 热迁移 postcopy 支持限速,支持 migrate\_pause,支持 migrate\_recover
- 虚拟机内呈现 CPU frequency(GuestOS 需要 4.19 以及更高版本内核)
- 虚拟机内部呈现 CPU topology和cache信息
**设备支持**
- PCI/PCIe:支持新的 pcie-root-port 设备,新的 virt 类型主板默认 disable 了 PCIe-to-PCI-bridge 上的 SHPC
- 支持 SMMUv3 模拟(soft-iommu\)
- virt 类型主板开始支持 512 虚拟CPU (注意不支持单个虚拟机的CPU数量超过所在的物理机的CPU数量)
- 将 PCIe ECAM Region 扩大到 256M,支持更多的 PCI 设备
- virt4.0 guest machine type 支持超过 1TB RAM
**性能优化**
- I/O 线程性能优化,提升多磁盘并发读写场景下的性能
## KVM<a name="zh-cn_topic_0185681960_section2663102117408"></a>
基于 4.19 版本内核的KVM进行 bug 修复、社区新特性回合和特性增强,重点能力如下:
**虚拟机动态IPA**
openEuler 1.0 Base 通过修改 Stage2 页表的分级、布局,支持用户态配置动态的IPA位数,可以支持最多48位IPA
**Perf性能统计支持ARM虚拟化**
支持命令“perf kvm stat record/report”,在虚拟机或 vCPU 粒度统计 exit、trap 的类型、次数和时间
**IRQfd路径注入中断优化**
优化通过 IRQfd 路径注入的中断,降低 vhost-user、vhost-net、GICv3+ 直通设备(网卡、磁盘)等场景下 CPU 资源消耗。
## Open vSwitch<a name="zh-cn_topic_0185681960_section562416012180"></a>
openEuler 1.0 Base 中配套的 Open vSwitch 为开源社区的 2.11.1 版本,仅进行了 openEuler 的内核版本适配。
# 调测DFx特性增强<a name="ZH-CN_TOPIC_0221461495"></a>
- 支持ARM64内核热补丁
支持 ARM64 内核热补丁,可以不用重启修复内核漏洞和BUG。
- ARM64 kdump 增强
openEuler 内核支持预留大于 4G 的内存供 kdump 使用
>![](public_sys-resources/icon-note.gif) **说明:**
>Linux kernel 社区原生版本只支持预留 4G 以下内存。
- ARM64 NMI Watchdog 支持
- 支持基于 PMU \(Performance Monitoring Unit\) 的 NMI Watchdog
- 支持基于 SDEI \(Software Delegated Exception Interface\) 的 NMI Watchdog
- ARM64 RAS 增强
- 支持 ARM v8.2 RAS 扩展
- 支持执行路径上内存ECC错误恢复
- 支持 SAS 盘暴力热插拔
- 支持 Statistical Profiling Extension 解析增强
通过解析 SPE 事件,支持精确跟踪和记录 branch miss,LL cache miss,tlb miss等事件,增强perf调优功能。
# 资源管控<a name="ZH-CN_TOPIC_0221472923"></a>
- Cache与内存带宽的分配与监控
支持 ARM v8.4 MPAM(Memory System Resource Partitioning and Monitoring)特性。
- 内存热添加
支持动态添加虚拟内存。
- CPU热插拔
支持动态添加虚拟机CPU。
- 支持限制 page cache 占用内存的比例
支持限制 page cache 占用内存的比例,避免系统因Page Cache 过多而影响业务的性能或者 OOM。
# 镜像制作<a name="ZH-CN_TOPIC_0219737993"></a>
openEuler 1.0 Base 使用 Lorax 工具构建镜像。Lorax 包含了一系列工具,主要有以下两个:
- livemedia-creator:使用 Anaconda 创建 openEuler 的 live CD 镜像。
- lorax:使用 Anaconda 创建 openEuler 的安装镜像。
Lorax 使用指导请参见其[官方文档](https://weldr.io/lorax/)
# 鲲鹏芯片驱动支持或增强<a name="ZH-CN_TOPIC_0221480586"></a>
支持鲲鹏处理器相关的驱动:
- 支持 HiSilicon SAS 驱动
- 支持 HNS 和 HNS3 板载网卡
- 支持 hinic 智能网卡
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册