Update README.md

This commit is contained in:
aiminick 2018-12-31 22:50:13 +08:00 committed by GitHub
parent 774d8090d9
commit 62d4a8136a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 42 additions and 31 deletions

View File

@ -8,7 +8,10 @@
[OPENFANS开源社区](http://www.openfans.org) [树莓派爱好者基地](http://rpifans.cn/) 荣誉出品
----
# 系统介绍
这是为树莓派Raspberry Pi**3B/3B+/3A** 所全新构建的:
**Debian 9StretchARM64(Aarch64) 64位系统镜像**
@ -28,6 +31,7 @@
-------
# 关键特征
## 更新
1. 系统包更新至Debian稳定主线2018-12-30
@ -46,15 +50,15 @@
* **Ext4**
主流Linux文件系统经过多年的优化和使用是目前使用**最广泛**的Linux文件系统之一在大量的企业生产环境中选用非常的成熟和稳定支持在线热扩容
主流Linux文件系统经过多年的优化和使用是目前使用**最广泛**的Linux文件系统之一在大量的企业生产环境中选用非常的成熟和稳定支持在线热扩容
* **BtrFS**
新兴的写时复制文件系统,支持更好的数据校验和快照功能,能提高文件系统的时间/空间性能,包括延迟分配,小文件的存储优化,目录索引等,支持在线热扩容
新兴的写时复制文件系统,支持更好的数据校验和快照功能,能提高文件系统的时间/空间性能,包括延迟分配,小文件的存储优化,目录索引等,支持在线热扩容
* **F2FS**
专门为 Flash Transition Layer 的 NAND 闪存开发的文件系统,在闪存随机读写性能上有较大提升,对小文件读取也有一定的优化,不支持在线扩容
专门为 Flash Transition Layer 的 NAND 闪存开发的文件系统,在闪存随机读写性能上有较大提升,对小文件读取也有一定的优化,不支持在线扩容
**考虑到系统的健壮性和稳定,我们推荐使用 Ext4 。**
@ -121,7 +125,7 @@ Docker官方没有提供基于arm的**docker-compose**可运行二进制程序
**docker-compose aarch64** 二进制文件的下载地址:[**点击前往下载**](https://github.com/openfans-community-offical/Debian-Pi-Aarch64/tree/master/docker-compose-aarch64)
目前最新版本:** v1.23.2
**目前最新版本:** v1.23.2
##### Docker Machine
@ -179,32 +183,38 @@ AUFS曾是Docker默认的首选存储驱动它非常的稳定、有很多真
* **zSWAP的好处**
1. 当内存页将要交换出去时zSWAP不将其移动到交换设备而是对其执行压缩然后存储到系统RAM内动态分配的内存池中回写到实际交换设备的动作则会延迟甚至能完全避免从而显著减少Linux系统用于交换的I/O。对于树莓派这样依托于TF卡的设备本来I/O就不是很高减少用于交换的I/O的操作就意味着**提高系统性能**把I/O用在系统应用程序等更需要的其他调度上去
2. 在使用Swap文件/分区的场景下由于减少了对Swap文件/分区的I/O操作**可以提升TF的使用寿命**
3. zSWAP并不虚拟一个块设备而是hook到普通的Swap代码里在实际发生写入到磁盘/从磁盘读取的操作前,先利用自己管理的内存进行数据的换出/换入内存不够用以后再使用传统的Swap文件/分区。所以zSWAP适用于本身已经有交换分区的系统以及树莓派这样本身内存不大的硬件设备
```shell
1. 当内存页将要交换出去时zSWAP不将其移动到交换设备而是对其执行压缩然后存储到系统RAM内动态分配的内存池中回写到实际交换设备的动作则会延迟甚至能完全避免从而显著减少Linux系统用于交换的I/O。对于树莓派这样依托于TF卡的设备本来I/O就不是很高减少用于交换的I/O的操作就意味着**提高系统性能**把I/O用在系统应用程序等更需要的其他调度上去
2. 在使用Swap文件/分区的场景下由于减少了对Swap文件/分区的I/O操作**可以提升TF的使用寿命**
3. zSWAP并不虚拟一个块设备而是hook到普通的Swap代码里在实际发生写入到磁盘/从磁盘读取的操作前,先利用自己管理的内存进行数据的换出/换入内存不够用以后再使用传统的Swap文件/分区。所以zSWAP适用于本身已经有交换分区的系统以及树莓派这样本身内存不大的硬件设备
```
* **为什么不使用zRAM**
zSWAP同时使用内存和交换分区并根据实际情况自动调整所占内存的大小所缓存的数据在系统内存不够用时会自动存入到Swap文件/分区中大大提高了系统swap交换的效率更充分的利用了内存空间资源又避免了系统出现内存不够的情况而zRam完全使用内存来进行操作和存储数据完全占用内存一般用在大内存的场景这对于内存很小的树莓派来说就不合适了。
* **zSWAP在本系统中使用的内存分配器和数据压缩算法**
**内存分配器zpool框架** *zsmalloc、zbud、z3fold*
1. 现实表明zsmalloc虽然压缩率高但是算法复杂还需要额外的线程负责内存整理耗费更多的cpu时间
2. 而zbud实现简单以内存page为单位的存储又不会产生内存碎片但是压缩率低最高只有2倍不满小内存系统的实际需求
3. 因此索尼开发了z3fold内存分配器和zbud的实现完全一致只是每个page可以存储3个compressed page**最高压缩率有 *3* 倍**逼近zsmalloc的4倍该技术在xperia xzp的中使用使4GB的手机获得超过4GB内存的体验
我们在系统中选用了 **z3fold** 算法,在系统 /boot/cmdline.txt 中可以看到配置:
```shell
zswap.enabled=1 zswap.zpool=z3fold zswap.compressor=lz4 zswap.max_pool_percent=25
```
**压缩算法:**
内存分配器zpool框架 smalloc、zbud、z3fold
1. 现实表明zsmalloc虽然压缩率高但是算法复杂还需要额外的线程负责内存整理耗费更多的cpu时间
2. 而zbud实现简单以内存page为单位的存储又不会产生内存碎片但是压缩率低最高只有2倍不满小内存系统的实际需求
3. 因此索尼开发了z3fold内存分配器和zbud的实现完全一致只是每个page可以存储3个compressed page**最高压缩率有 *3* 倍**逼近zsmalloc的4倍该技术在xperia xzp的中使用使4GB的手机获得超过4GB内存的体验
我们在系统中选用了 **z3fold** 算法,在系统 /boot/cmdline.txt 中可以看到配置:
zswap.enabled=1 zswap.zpool=z3fold zswap.compressor=lz4 zswap.max_pool_percent=25
压缩算法:
Linux有很多压缩算法lz,lzo,xz,gzip,lzma...
我们这里采用了拥有**极高压缩速度**和较高压缩率的 **lz4** lz4 相对于其他压缩算法而言,压缩率不是最高的,但速度确是最快的,在已采用 z3fold 算法的情况下结合树莓派本身的性能特点和实际的测试在拥有不错的压缩率的情况下速度对于树莓派来说才是最重要的考虑到本身CPU性能开销和内存大小的情况
我们这里采用了拥有极高压缩速度和较高压缩率的lz4 lz4相对于其他压缩算法而言压缩率不是最高的但速度确是最快的在已采用 z3fold 算法的情况下结合树莓派本身的性能特点和实际的测试在拥有不错的压缩率的情况下速度对于树莓派来说才是最重要的考虑到本身CPU性能开销和内存大小的情况
```
### KVM 虚拟化支持
@ -311,7 +321,9 @@ VideoCore 是一个由Alphamosaic Ltd开发并且现在被Broadcom拥有的低
截图!!
# <center>配置及说明
----
# 配置及说明
系统的其他配置如下:
@ -518,16 +530,15 @@ UEFI BIOS 界面
----
# <center>版权说明
# 版权说明
>
1. 以上系统由 "**OPENFANS开源社区**" 制作,仅由 “**树莓派爱好者基地**” 独家发布并提供技术支持。
>
2. 任何文字、图片转载必须标明系统(软件)来源;您可以对软件或系统进行任何修改,但必须保留出处;严谨用于任何商业用途,如需商业使用,请与 “**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 联系并获得许可。
>
3. 以上系统以及软件的所有权归属相对应的软件作者和遵守相关软件包的许可授权协议。
>
4. 未遵守上诉规定保留出处,“**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 有权追究其相应责任并责令停止一切侵权行为。
>
5. “**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 拥有以上内容的最终解释权。
1. 以上系统由 "**OPENFANS开源社区**" 制作,仅由 “**树莓派爱好者基地**” 独家发布并提供技术支持
2. 任何文字、图片转载必须标明系统(软件)来源;您可以对软件或系统进行任何修改,但必须保留出处;严谨用于任何商业用途,如需商业使用,请与 “**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 联系并获得许可
3. 以上系统以及软件的所有权归属相对应的软件作者和遵守相关软件包的许可授权协议
4. 未遵守上诉规定保留出处,“**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 有权追究其相应责任并责令停止一切侵权行为
5. “**OPENFANS开源社区**” 及 “**树莓派爱好者基地**” 拥有以上内容的最终解释权