存档

‘ARM’ 分类的存档

树莓派4上的64位Archlinux

2019年12月21日 2 条评论

前两天终于咬牙跺脚收了同伴科技的X825,这是因为树莓派4终于支持了USB3.0,能基本把硬盘的性能跑出来了。顺便研究了一下,现在树莓派4上面的64位Linux,基本上可以确定现在树莓派4可以当做小型服务器来耍了。

首先,树莓派4是aarch64架构的arm处理器,4G内存,千兆网络,USB3.0接口,基本可用了。其次,Docker Hub上的服务器应用也开始支持aarch64了,甚至像mariadb、mongodb和openjdk的docker官方镜像只支持arm的aarch64架构。

网上查了一段时间,对比了树莓派爱好者基地的64位debian和第三方出的64为archlinuxarm,觉得还是喜欢archlinux,于是写写怎么在树莓派4上跑64位的archlinuxarm。

感觉archlinuxarm网站论坛里面的讨论,找到了一个三方出的树莓派4的64为archlinuxarm的rootfs,地址是https://olegtown.pw/Public/ArchLinuxArm/RPi4/rootfs/ ,挑一个最新的,按照archlinuxarm官方树莓派4的安装教程 https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-4#installation 来安装就好了。安装好以后,连接有线网络,可以在路由器的dhcp设备列表里面找到设备的ip,这时候远程登录就好了。

安装好以后需要做一些官方教程里面没有的额外设置,首先要用nano来编辑/etc/resolv.conf,添加一行nameserver 8.8.8.8。这是因为这个rootfs没有安装vi包,其次没有设置dns服务器。如果我们需要改成静态ip,需要修改/etc/systemd/network/eth.network。

如果需要使用netbios访问树莓派4,可以参考我之前写的http://just4fun.cn/?p=1017

如果需要使用文件做交换内存,可以参考我之前写的http://just4fun.cn/?p=972

这个时候可以开始配置X825上面的硬盘作为rootfs。我是专门从狗东买了一个容量最小的tf卡,按照前面的介绍安装好archlinuxarm,分区并格式化/dev/sda1,然后直接修改/boot/cmdlin.txt就好了。但是在树莓派爱好者基地的64位debian貌似这么做不好用,可能是因为它用了树莓派上面UFEI导致的,没有深入研究。

硬盘接好启动以后,用fdisk先给硬盘创建一个分区,把格式化好ext4的分区mount在/mnt/newdrive,然后执行命令rsync -avx / /media/newdrive把tf卡的rootfs同步到硬盘上。这个步骤在树莓派爱好者基地的64位debian上也不好用。之后修改cmdline就好了。

重启之后,使用df -h看看根fs是不是挂在sda1上。

另,这个三方的roofs可以用pacman更新archlinuxarm官方的aarch64软件包,但是因为官方没有aarch64的树莓派内核,所以需要自己从https://olegtown.pw/Public/ArchLinuxArm/RPi4/kernel/https://olegtown.pw/Public/ArchLinuxArm/RPi4/firmware/ 下载最新的内核和firmware。此外这个网站还提供了5.4的内核,但是因为树莓派官方的内核只有4.19的代码,所以我没敢尝试。

分类: ARM, ARM Box, Linux 标签: ,

微雪的SPI液晶屏在ArchlinuxARM上的设置

2018年8月8日 没有评论

我之前的一堆树莓派都找不到了,但是翻出来了一个带微雪3.5寸SPI液晶屏的B+,有点古董。正好前段时候收了一个HDMI的3.5寸液晶屏,顺手对比一下,再写一个配置教程。

微雪的这个屏叫3.5A,应该是有好几个版本了,我手里这个是V3,但是微雪淘宝店里的照片已经不一样了。好在驱动还是一样的。微雪还有一个3.5B,是IPS液晶的面板,也视角会更大。另外还有一个3.5 HDMI产品,也是IPS的面板。这三块屏都是480*320的分辨率。

这三块屏的区别是,HDMI那块带一个驱动芯片,1920的信号输出也能直接显示,模糊而已。因为使用HDMI,一般的img都不需要驱动,另外HDMI的带宽要好,显示速度要快。SPI的这两块,由于数据带宽低,屏幕上更新的内容多了以后,会有明显的刷屏。而且因为SPI不是标准的视频接口,所以需要微雪的接口驱动才能工作。

相应的价格也是3.5HDMI最高,3.5A最便宜,我手里这两个屏,正好一头一个。

微雪网站资料很丰富,3.5A的页面如下:www.waveshare.net/wiki/3.5inch_RPi_LCD_(A) 这里面提供了一驱动包,一个安装好驱动的raspbian的镜像,以及一个说明文档。这个文档说明了驱动包怎么用,以及内置驱动的img怎么做tf卡。驱动包地址为http://www.waveshare.net/w/upload/3/34/LCD-show-180331.tar.gz

我看了一下驱动包怎么安装,也打开了LCD35-show这个脚本,发现这里面基本上两部分内容,显示编译驱动,然后配置控制台驱动和x的驱动。正好看到包里面有编译好的驱动,至少在这个B+上目前工作正常,下面就说说ArchlinuxARM上怎么配置。

1.在驱动包的根目录下有一个waveshare35a-overlay.dtb文件,把这个文件复制两次到你archlinuxarm的boot分区的overlays目录下,一次保持原名,一次改名为waveshare35a.dtbo。

2.修改config.txt文件,在最后加上dtoverlay=waveshare35a

3.修改cmdline.txt文件,在最后加上一个空格和fbcon=map:10 fbcon=font:ProFont6x11 logo.nologo

这样重启以后,经过一段时间的浅灰色的显示阶段,控制台就显示出来了。

这个办法目前在我的B+上的ArchlinuxARM上可用,uname -a显示为

Linux alarmpi 4.14.59-1-ARCH #1 SMP Tue Jul 31 00:57:25 UTC 2018 armv6l GNU/Linux

在ArchlinuxARM中使用F2FS文件系统

2018年8月3日 没有评论

做tf的系统(我的系统就是archlinux)需要安装f2fs-tools。

针对ArchlinuxARM官方的安装过程,替换mkfs.ext4为mkfs.f2fs

目前树莓派的最新内核,以及aarch64最新内核都会支持这个文件系统,不需重新编译内核

系统第一次启动以后,需要安装f2fs-tools,默认的跟目录包不包含它。resize.f2fs和fsck.f2fs会依赖这个包。

对于f2fs能对tf有多少提升,现在很多人意见不统一,至少他是针对tf设计的。

分类: ARM, Linux, Raspberry Pi 标签:

关于树莓派Raspberry Pi3和ArchLinuxARM的一些情况

2016年3月7日 2 条评论

ArchLinuxARM在第一时间更新了网站,并支持了树莓派3,但是还有一些情况,参考:https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-3。例如:当前的root filesystem使用的还是Pi2的32位的内容等。

另,需要注意的是Pi3需要电源更大的电流,根据ArchLinuxARM的测试,需要2.5A以上的电流,这个有点强悍。

一个树莓派2代和1代的GPIO评测

2016年1月12日 2 条评论

不翻译了,累,自己看吧,不长

http://codeandlife.com/2015/03/25/raspberry-pi-2-vs-1-gpio-benchmark/

这个是原始的树莓派1代GPIO的评测,里面有如何产生那些数据的代码:

http://codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/

分类: ARM, ARM Box, Raspberry Pi 标签:

ArchLinux内核4上面的水星MW150US v2.0迷你USB无线网卡

2015年11月7日 没有评论

在树莓派和PC的ArchLinux的2015.11上,驱动都没有问题。

lsusb显示:

Bus 001 Device 004: ID 0bda:8179 Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter

lsmod显示:

使用的是8188eu的驱动,使用cfg80211栈。但是在插卡的时候不会加载cfg80211,只有在wifi-menu之后,才会加载。

使用wifi-menu连接的时候,会有ioctl的错误信息,但是不影响连接。在wifi-menu,里面看不到信号评分或者信号的分贝提示。dmesg会有错误信息。

补充:

1.COMFAST CF-WU810N的lsusb和lsmod信息一致。

2.COMFAST CF-WU720N的lsusb和lsmod信息一致。

ArchLinux内核4上面的EDUB EP-N8508GS迷你USB无线网卡

2015年11月7日 没有评论

在树莓派和PC的ArchLinux的2015.11上,驱动都没有问题。

lsusb显示:

Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter

lsmod显示使用的是8192cu的驱动,使用cfg80211栈。

使用wifi-menu连接的时候,会有ioctl的错误信息,但是不影响连接。

树莓派1&2 ArchLinux ARM 2015.11目前最完美的USB无线网卡

2015年11月7日 1 条评论

在我这次买的一堆USB无线网卡里面,磊科NW360这个是唯一的不需要做任何操作就可以使用的无线网卡,内部应该是RTL8191SU芯片。

lsusb的信息是

Bus 001 Device 004: ID 0bda:8172 Realtek Semiconductor Corp. RTL8191SU 802.11n WLAN Adapter

lsmod显示驱动为r8712u,使用cfg80211栈。目前,从dmesg看,无任何错误信息。

在ArchLinux上驱动mt7601u无线usb网卡

2015年11月7日 没有评论

上一篇《在ArchLinux ARM下驱动RTL 8188eu无线网卡》对网卡不好用,很是郁闷。所以这次整了一堆无线usb网卡来测试。今天很高兴,完美驱动了mt7601u网卡,当然这个过程不是一帆风顺,不然也就不必要写这么一篇blog了。

先说使用这个片子的网卡:

必联(B-Link) BL-D88 http://item.jd.com/1154411.html

必联(B-Link) BL-150SM http://item.jd.com/1154451.html

传说小米的随身wifi也是这个片子,但是我手头没有小米的随身wifi,所以读者自己测试吧

再说驱动为什么不是一帆风顺:我在pc和arm的ArchLinux上测试这个网卡的时候,发现插上设备以后,系统没有新增网卡设备,lsusb发现识别正常,lsmod发现驱动正常,dmesg发现加载firmware时,没有找到firmware文件。于是自己去http://www.mediatek.com/en/downloads1/downloads/mt7601u-usb/这里下载了一个最新的,你不想注册信息的话,可以从我的百度盘下载http://pan.baidu.com/s/1hqpWmGG。我共享的这个文件,不需要改名字,直接sftp上传,然后复制到/lib/firmware里面,重启pc或者树莓派就好了。

sftp可以使filezilla client。

在ArchLinux ARM下驱动RTL 8188eu无线网卡

2015年11月5日 没有评论

在2013年4月的时候,我曾写过一篇《在Cubieboard的ArchLinux下驱动RTL8188eu无线网卡》。现在两年半以后,因为ArchLinux ARM的升级,所以那片帖子的里面的内容已经过时了。但是根据访问统计看,还有人在访问,而且我现在自己也想把自己树莓派上面的网线换成无线,所以有了今天这篇的内容。今天的这个内容,我在树莓派1B+、树莓派2B以及x86的环境中都做了测试,目前看实验现象似乎都是一致的。水星Mercury的MW150US网卡有多个版本,我手里的这个是MW150US v2.0。

在2013年的时候,当时ArchLinux ARM的内核还是Linux 3,但是现在ArchLinux和ArchLinux ARM的内核都已经是Linux 4了,而且RTL的驱动程序也在升级,所以情况也是有变化的。

先说说现状:

目前RTL 8188eu的驱动,在ArchLinux和ArchLinux ARM的内核里面都已经内置了,插上USB以后,使用lsmod会看到有一个r8188eu的驱动在,但是无论使用wpa_supplicant还是wifi-menu,都无法连到无线路由器。翻墙查了相关的搜索结果以后,大部分都在建议使用https://github.com/lwfinger/rtl8188eu/tree/v4.1.8_9499的新驱动,据说老的驱动是3下面的驱动,在4里面无法很好的工作。

编译并安装驱动:

首先用pacman –S base-devel git dkms iw wpa_supplicant dialog crda linux-raspberrypi-headers安装必要的组件。这其中base-devel是编译需要的工具链,git是代码获取工具,iw、wpa_supplicant、dialog是配置无线网的工具,dkms是动态内核配置工具。crda能设置无线网卡的频率范围,linux-raspberrypi-headers是编译驱动所需要的头文件。

然后获取代码git clone –b v4.1.8_9499 https://github.com/lwfinger/rtl8188eu.git,这会将一个稳定的版本下载到本地。下载后可以先修改rtl8188eu中的Makefile文件,其中CONFIG_POWER_SAVING的内容修改为CONFIG_POWER_SAVING = n,目的是关闭省电功能。然后就可以使用make或者dkms来编译了,具体可以参考github的页面上的帮助。这两种做法会有一个区别,区别是make会自动在/etc/modprobe.d/内创建一个50-8188eu.conf文件,他会把内核中的r8188eu模块加入blacklist,我们自己可以编辑这个文件,并加入一行options 8188eu rtw_power_mgnt=0,给驱动送参数,来关闭相关的电源管理。

结果:

目前看按照上面的操作完成驱动安装以后,某些时候会工作的比较好,dmesg里面已经没有错误信息了。但是说某些时候,是因为不确定原因的某些时候工作的不好。据说最完美的情况是在x64的情况下,据说github上维护代码的这个作者,他用的是这个环境。

还有就是目前看,ArchLinux的作者和使用者确实激进,因为从搜索结果看,大部分是ArchLinux的用户在提问。另外,还有相当多的用户是和我一样在树莓派上使用。

我目前的想法是换一个usb网卡试试。没准换过几个网卡之后,我会写一个迷你usb无线网卡的评测,哈哈

再加一句:ArchLinuxARM论坛里面推荐的dkms-8188eu的方法并不好用,也已经测试了。

今天Raspberry Pi的ArchLinuxARM升级到内核4

2015年6月23日 没有评论

早上例行升级树莓派的ArchLinux,发现内核升级到4.0.5-1了

image

ArchLinux和ArchLinuxARM在国内的镜像服务器

2015年4月11日 1 条评论

ArchLinux在国内有不少的镜像服务器,163和sohu都有,还有好多官方收录的镜像服务器。ArchLinuxARM在国内的镜像服务器不多,而且境外的镜像服务器也不稳定,有的时候会给你个速度还说的过去的服务器,有的时候那速度就是惨不忍睹。最近发现清华的这个镜像服务器不错,既有ArchLinux的,也有ArchLinuxARM的,地址如下:http://mirror.tuna.tsinghua.edu.cn/

测试了一下,下载个百兆的更新,分分钟的事情。mirrorslist文件在/etc/pacman.d下面。

分类: ARM, ARM Box, Linux 标签: ,

ArchLinux上开启SSH的Tunnel

2015年4月8日 1 条评论

最近单位的网络的飞鱼星打开了,很多网站上不去,于是想在家里的树莓派2上把SSH的Tunnel打开。

修改起来是很简单,用vi /etc/ssh/sshd_config编辑sshd的配置文件,找到AllowTcpForwarding yes这一行,然后去掉注释,然后保存。

这时候重启就树莓派就好了。

分类: ARM, ARM Box, Linux, Raspberry Pi 标签: ,

树莓派1和树莓派2的性能对比(6):Server Benchmark

2015年3月22日 没有评论

系列文章:

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

树莓派1和树莓派2的性能对比(2):Synthetic MySQL BenchMark

树莓派1和树莓派2的性能对比(3):Synthetic Read Write BenchMark

树莓派1和树莓派2的性能对比(4):Real World PHP BenchMark

树莓派1和树莓派2的性能对比(5):Real World PHP & MySQL BenchMark

上次树莓派1和Cubieboard对比的地址为:

树莓派和Cubieboard对比测试(7) – Server Benchmark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Server Benchmark
test_1_create_dir 0.0017 seconds 0.0009 seconds
test_1_small_page 0.4914 seconds 0.1713 seconds
test_1b_small_page 0.4885 seconds 0.1394 seconds
test_1c_small_page 0.4882 seconds 0.1392 seconds
test_1d_small_page 0.4898 seconds 0.1392 seconds
test_1e_small_page 0.4889 seconds 0.1397 seconds
test_2_create_tempfile 0.0016 seconds 0.0008 seconds
test_2_medium_page 1.3283 seconds 0.4323 seconds
test_2b_medium_page 1.3281 seconds 0.4348 seconds
test_2c_medium_page 1.3297 seconds 0.4374 seconds
test_2d_medium_page 1.3283 seconds 0.4361 seconds
test_2e_medium_page 1.3318 seconds 0.4373 seconds
test_3_large_page 3.9221 seconds 1.3041 seconds
test_3_write 0.1565 seconds 0.0558 seconds
test_3b_large_page 3.9231 seconds 1.3027 seconds
test_3c_large_page 3.9270 seconds 1.3016 seconds
test_3d_large_page 3.9473 seconds 1.3015 seconds
test_3e_large_page 3.9296 seconds 1.3024 seconds
test_4_append 0.1028 seconds 0.0383 seconds
test_4_huge_page 6.2111 seconds 2.0126 seconds
test_4b_append 0.0999 seconds 0.0376 seconds
test_4b_huge_page 6.1738 seconds 2.0134 seconds
test_4c_huge_page 6.2370 seconds 2.0141 seconds
test_4d_huge_page 6.2073 seconds 2.0137 seconds
test_4e_huge_page 6.2364 seconds 2.0114 seconds
test_5_fileinfo 0.3223 seconds 0.1466 seconds
test_6_read_1024 1.9919 seconds 0.5921 seconds
test_6b_read_512 1.9095 seconds 0.5338 seconds
test_6c_read_256 2.5433 seconds 0.7696 seconds
test_6d_read_128 4.1118 seconds 1.1324 seconds
test_6e_read_64 7.1683 seconds 2.0073 seconds
test_6f_read_32 12.9881 seconds 3.5275 seconds
test_6g_read_16 28.5116 seconds 7.2687 seconds
test_7_read_8 33.9870 seconds 9.7546 seconds
test_9_readdir 1.6711 seconds 0.6747 seconds
test_arithmetic 0.0060 seconds 0.0015 seconds
test_array_operators 0.0101 seconds 0.0028 seconds
test_bitwise 0.0013 seconds 0.0005 seconds
test_casting 0.0283 seconds 0.0066 seconds
test_chr_fixed 0.0482 seconds 0.0116 seconds
test_chr_hardcoded 0.0093 seconds 0.0032 seconds
test_chr_var 0.0407 seconds 0.0107 seconds
test_comment_loop 0.0022 seconds 0.0014 seconds
test_compare 0.0020 seconds 0.0009 seconds
test_compare_false 0.0002 seconds 0.0001 seconds
test_compare_invert 0.0003 seconds 0.0001 seconds
test_compare_strict 0.0004 seconds 0.0001 seconds
test_compare_unstrict 0.0008 seconds 0.0003 seconds
test_connect_db 0.0587 seconds 0.0172 seconds
test_constants 0.0039 seconds 0.0011 seconds
test_crc32 0.0027 seconds 0.0007 seconds
test_db_setup 0.6793 seconds 0.1770 seconds
test_del_file 0.0014 seconds 0.0008 seconds
test_del_tempdir 0.0010 seconds 0.0004 seconds
test_distinctcolumn 1.8773 seconds 0.6269 seconds
test_do_while 0.0097 seconds 0.0051 seconds
test_do_while_break 0.0021 seconds 0.0011 seconds
test_empty 0.0003 seconds 0.0001 seconds
test_empty_loop 0.0024 seconds 0.0014 seconds
test_fetcharray 1.3069 seconds 0.4140 seconds
test_fetchassoc 1.1749 seconds 0.3709 seconds
test_fetchlength 1.1717 seconds 0.3643 seconds
test_fetchrow 1.1665 seconds 0.3681 seconds
test_fieldflags 3.4805 seconds 1.0895 seconds
test_foreach 0.0433 seconds 0.0153 seconds
test_get_class 0.0030 seconds 0.0008 seconds
test_global_scalar_assign 0.0014 seconds 0.0006 seconds
test_global_string_assign 0.0077 seconds 0.0029 seconds
test_if_constant 0.0004 seconds 0.0002 seconds
test_increment 0.0029 seconds 0.0010 seconds
test_is_array 0.0010 seconds 0.0003 seconds
test_is_object 0.0010 seconds 0.0003 seconds
test_is_type 0.0032 seconds 0.0009 seconds
test_isset 0.0003 seconds 0.0001 seconds
test_line 0.0004 seconds 0.0002 seconds
test_local_array_assign 0.0342 seconds 0.0096 seconds
test_local_boolean_assign 0.0021 seconds 0.0007 seconds
test_local_float_assign 0.0021 seconds 0.0007 seconds
test_local_hash_assign 0.0019 seconds 0.0007 seconds
test_local_integer_assign 0.0020 seconds 0.0007 seconds
test_local_object_assign 0.0020 seconds 0.0006 seconds
test_local_scalar_assign 0.0031 seconds 0.0010 seconds
test_local_string_assign 0.0078 seconds 0.0025 seconds
test_maxget 0.9734 seconds 0.3113 seconds
test_md5 0.0040 seconds 0.0014 seconds
test_microtime 0.0163 seconds 0.0043 seconds
test_mt_rand 0.0016 seconds 0.0005 seconds
test_numfields 2.5441 seconds 0.7369 seconds
test_numrows 2.5617 seconds 0.7237 seconds
test_ord 0.1501 seconds 0.0443 seconds
test_ordered_functions 0.0234 seconds 0.0101 seconds
test_ordered_functions_references 0.0228 seconds 0.0098 seconds
test_page1a 0.2641 seconds 0.0792 seconds
test_page1b 0.2585 seconds 0.0781 seconds
test_page1c 0.2621 seconds 0.0779 seconds
test_page1d 0.2613 seconds 0.0781 seconds
test_page1e 0.2598 seconds 0.0781 seconds
test_page2a 0.7814 seconds 0.2352 seconds
test_page2b 0.7866 seconds 0.2332 seconds
test_page2c 0.8034 seconds 0.2333 seconds
test_page2d 0.7826 seconds 0.2341 seconds
test_page2e 0.7810 seconds 0.2342 seconds
test_page3a 1.1535 seconds 0.3559 seconds
test_page3b 1.1828 seconds 0.3559 seconds
test_page3c 1.1847 seconds 0.3560 seconds
test_page3d 1.1614 seconds 0.3560 seconds
test_page3e 1.1867 seconds 0.3562 seconds
test_page4a 1.5888 seconds 0.4892 seconds
test_page4b 1.5672 seconds 0.4886 seconds
test_page4c 1.5672 seconds 0.4895 seconds
test_page4d 1.5980 seconds 0.4899 seconds
test_page4e 1.5838 seconds 0.4891 seconds
test_preg_match 0.0111 seconds 0.0028 seconds
test_rand 0.0015 seconds 0.0005 seconds
test_references 0.0004 seconds 0.0002 seconds
test_rowcount 0.5033 seconds 0.1234 seconds
test_sha1 0.0073 seconds 0.0016 seconds
test_sort 4.1689 seconds 1.2160 seconds
test_sort2 4.1101 seconds 1.3251 seconds
test_sort3 4.2083 seconds 1.2172 seconds
test_string_append 0.0058 seconds 0.0021 seconds
test_strlen 0.0010 seconds 0.0003 seconds
test_sumcolumn 1.0162 seconds 0.3223 seconds
test_switch 0.0070 seconds 0.0034 seconds
test_time 0.0016 seconds 0.0005 seconds
test_unordered_functions 0.0266 seconds 0.0112 seconds
test_variable_variables 0.0032 seconds 0.0009 seconds
test_while 0.0091 seconds 0.0056 seconds
test_write 0.6625 seconds 0.1705 seconds
test_write2 0.7029 seconds 0.1888 seconds
test_write3 0.7162 seconds 0.1961 seconds
test_write_cleanup 0.0103 seconds 0.0040 seconds
Score(higher is better) 144 484

树莓派1和树莓派2的性能对比(5):Real World PHP & MySQL BenchMark

2015年3月22日 没有评论

系列文章:

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

树莓派1和树莓派2的性能对比(2):Synthetic MySQL BenchMark

树莓派1和树莓派2的性能对比(3):Synthetic Read Write BenchMark

树莓派1和树莓派2的性能对比(4):Real World PHP BenchMark

上次树莓派1和Cubieboard对比的地址为:

树莓派和Cubieboard对比测试(6) – Real World PHP & MySQL BenchMark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Real World PHP & MySQL BenchMark
test_page1a 2.3365 seconds 0.7525 seconds
test_page1b 2.3499 seconds 0.7534 seconds
test_page1c 2.3339 seconds 0.7531 seconds
test_page1d 2.3447 seconds 0.7529 seconds
test_page1e 2.3353 seconds 0.7529 seconds
test_page2a 6.4310 seconds 1.8929 seconds
test_page2b 6.3900 seconds 1.8923 seconds
test_page2c 6.4243 seconds 1.8913 seconds
test_page2d 6.4153 seconds 1.8927 seconds
test_page2e 6.4204 seconds 1.8924 seconds
test_page3a 9.0395 seconds 2.6444 seconds
test_page3b 9.3039 seconds 2.6462 seconds
test_page3c 8.9621 seconds 2.6440 seconds
test_page3d 8.9731 seconds 2.6467 seconds
test_page3e 8.9627 seconds 2.6429 seconds
test_page4a 12.5272 seconds 3.7309 seconds
test_page4b 12.3040 seconds 3.7344 seconds
test_page4c 12.7825 seconds 3.7329 seconds
test_page4d 12.3229 seconds 3.7370 seconds
test_page4e 12.4328 seconds 3.7291 seconds
Score(higher is better) 198 665

树莓派1和树莓派2的性能对比(4):Real World PHP BenchMark

2015年3月22日 没有评论

系列文章:

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

树莓派1和树莓派2的性能对比(2):Synthetic MySQL BenchMark

树莓派1和树莓派2的性能对比(3):Synthetic Read Write BenchMark

上次树莓派1和Cubieboard对比的地址为:

树莓派和Cubieboard对比测试(5) – Real World PHP BenchMark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Real World PHP BenchMark
test_1_small_page 1.1907 seconds 0.5099 seconds
test_1b_small_page 1.1620 seconds 0.3424 seconds
test_1c_small_page 1.1608 seconds 0.3422 seconds
test_1d_small_page 1.1648 seconds 0.3435 seconds
test_1e_small_page 1.1701 seconds 0.3411 seconds
test_2_medium_page 3.2147 seconds 1.0279 seconds
test_2b_medium_page 3.2330 seconds 1.0329 seconds
test_2c_medium_page 3.3178 seconds 1.0358 seconds
test_2d_medium_page 3.3654 seconds 1.0369 seconds
test_2e_medium_page 3.3518 seconds 1.0372 seconds
test_3_large_page 9.9856 seconds 3.1942 seconds
test_3b_large_page 10.2158 seconds 3.1947 seconds
test_3c_large_page 9.9806 seconds 3.1957 seconds
test_3d_large_page 10.2136 seconds 3.1958 seconds
test_3e_large_page 10.2217 seconds 3.1928 seconds
test_4_huge_page 15.8610 seconds 4.9444 seconds
test_4b_huge_page 15.5103 seconds 4.9461 seconds
test_4c_huge_page 15.8390 seconds 4.9671 seconds
test_4d_huge_page 15.6031 seconds 4.9714 seconds
test_4e_huge_page 15.6240 seconds 4.9754 seconds
Score(higher is better) 297 941

树莓派1和树莓派2的性能对比(3):Synthetic Read Write BenchMark

2015年3月22日 没有评论

系列文章:

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

树莓派1和树莓派2的性能对比(2):Synthetic MySQL BenchMark

上次树莓派1和Cubieboard对比的地址为:

树莓派和Cubieboard对比测试(4) – Synthetic Read/Write BenchMark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Synthetic Read Write BenchMark
test_1_create_dir 0.0014 seconds 0.0010 seconds
test_2_create_tempfile 0.0015 seconds 0.0009 seconds
test_3_write 0.2340 seconds 0.1246 seconds
test_4_append 0.1555 seconds 0.0863 seconds
test_4b_append 0.1521 seconds 0.0840 seconds
test_5_fileinfo 0.4854 seconds 0.2825 seconds
test_6_read_1024 4.3047 seconds 1.2699 seconds
test_6b_read_512 4.4377 seconds 1.1854 seconds
test_6c_read_256 6.0634 seconds 1.7323 seconds
test_6d_read_128 9.6558 seconds 2.6062 seconds
test_6e_read_64 14.4697 seconds 4.5069 seconds
test_6f_read_32 24.8038 seconds 7.7512 seconds
test_6g_read_16 52.2430 seconds 15.5660 seconds
test_7_read_8 74.0824 seconds 21.8323 seconds
test_9_readdir 2.4713 seconds 1.0116 seconds
test_del_file 0.0014 seconds 0.0008 seconds
test_del_tempdir 0.0010 seconds 0.0004 seconds
Score(higher is better) 124 413

树莓派1和树莓派2的性能对比(2):Synthetic MySQL BenchMark

2015年3月22日 没有评论

系列文章:

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

上次树莓派1和Cubieboard对比的地址为:

树莓派和Cubieboard对比测试(3) – Synthetic MySQL BenchMark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Synthetic MySQL BenchMark
test_db_setup 1.3504 seconds 0.4811 seconds
test_distinctcolumn 6.0972 seconds 2.0539 seconds
test_fetcharray 3.4702 seconds 1.0954 seconds
test_fetchassoc 3.1557 seconds 1.0263 seconds
test_fetchlength 3.1741 seconds 1.0148 seconds
test_fetchrow 3.1540 seconds 1.2152 seconds
test_fieldflags 13.0071 seconds 3.5117 seconds
test_maxget 2.8478 seconds 0.8929 seconds
test_numfields 8.9720 seconds 2.2549 seconds
test_numrows 10.1692 seconds 2.2571 seconds
test_rowcount 1.0088 seconds 0.2399 seconds
test_sort 15.3296 seconds 4.1467 seconds
test_sort2 16.1388 seconds 4.1016 seconds
test_sort3 15.2947 seconds 4.1456 seconds
test_sumcolumn 2.8440 seconds 0.9381 seconds
test_write 1.3475 seconds 0.3367 seconds
test_write2 1.3922 seconds 0.3848 seconds
test_write3 1.4473 seconds 0.3876 seconds
test_write_cleanup 0.0107 seconds 0.0044 seconds
Score(higher is better) 145 524

树莓派1和树莓派2的性能对比(1):Synthetic PHP BenchMark

2015年3月22日 没有评论

两代树莓派硬件的主要区别是,主频高了一些,cpu变成了4核,ram变成了1GB。

上次树莓派1和Cubieboard对比的地址为:树莓派和Cubieboard对比测试(2) – Synthetic PHP BenchMark

Pi Pi2
PHP version 5.6.6
MySQL version 5.5.5-10.0.17-MariaDB-log
Server Software Apache/2.4.12 (Unix) PHP/5.6.6
Synthetic PHP BenchMark
test_arithmetic 0.2261 seconds 0.1105 seconds
test_array_operators 0.2856 seconds 0.1700 seconds
test_bitwise 0.0383 seconds 0.0216 seconds
test_casting 1.3268 seconds 0.3272 seconds
test_chr_fixed 1.8898 seconds 0.5745 seconds
test_chr_hardcoded 0.4025 seconds 0.1578 seconds
test_chr_var 1.8833 seconds 0.5317 seconds
test_comment_loop 0.1064 seconds 0.0676 seconds
test_compare 0.1038 seconds 0.0417 seconds
test_compare_false 0.0056 seconds 0.0033 seconds
test_compare_invert 0.0084 seconds 0.0041 seconds
test_compare_strict 0.0084 seconds 0.0052 seconds
test_compare_unstrict 0.0307 seconds 0.0145 seconds
test_constants 0.1514 seconds 0.0500 seconds
test_crc32 0.1210 seconds 0.0352 seconds
test_do_while 0.4012 seconds 0.2534 seconds
test_do_while_break 0.0931 seconds 0.0541 seconds
test_empty 0.0057 seconds 0.0038 seconds
test_empty_loop 0.1062 seconds 0.0676 seconds
test_foreach 1.9737 seconds 0.8063 seconds
test_get_class 0.1385 seconds 0.0381 seconds
test_global_scalar_assign 0.0477 seconds 0.0266 seconds
test_global_string_assign 0.3587 seconds 0.1446 seconds
test_if_constant 0.0131 seconds 0.0090 seconds
test_increment 0.1622 seconds 0.0494 seconds
test_is_array 0.0365 seconds 0.0123 seconds
test_is_object 0.0396 seconds 0.0124 seconds
test_is_type 0.1358 seconds 0.0442 seconds
test_isset 0.0076 seconds 0.0045 seconds
test_line 0.0099 seconds 0.0065 seconds
test_local_array_assign 0.8565 seconds 0.3604 seconds
test_local_boolean_assign 0.0727 seconds 0.0316 seconds
test_local_float_assign 0.0731 seconds 0.0319 seconds
test_local_hash_assign 0.0685 seconds 0.0314 seconds
test_local_integer_assign 0.1053 seconds 0.0319 seconds
test_local_object_assign 0.0809 seconds 0.0280 seconds
test_local_scalar_assign 0.1006 seconds 0.0448 seconds
test_local_string_assign 0.2859 seconds 0.1169 seconds
test_md5 0.1953 seconds 0.0662 seconds
test_microtime 0.6788 seconds 0.2107 seconds
test_mt_rand 0.0649 seconds 0.0216 seconds
test_ord 6.4353 seconds 2.2288 seconds
test_ordered_functions 1.0930 seconds 0.4972 seconds
test_ordered_functions_references 0.9427 seconds 0.4826 seconds
test_preg_match 0.4483 seconds 0.1258 seconds
test_rand 0.0735 seconds 0.0223 seconds
test_references 0.0108 seconds 0.0072 seconds
test_sha1 0.2715 seconds 0.0810 seconds
test_string_append 0.2736 seconds 0.0996 seconds
test_strlen 0.0459 seconds 0.0127 seconds
test_switch 0.3535 seconds 0.1650 seconds
test_time 0.0618 seconds 0.0256 seconds
test_unordered_functions 1.1314 seconds 0.5539 seconds
test_variable_variables 0.1076 seconds 0.0407 seconds
test_while 0.4435 seconds 0.2794 seconds
Score(higher is better) 410 1082

启用Raspberry树莓派的i2c总线

2015年3月20日 没有评论

其实我是在看mono的i2c接口程序,发现我的/dev里面没有i2c-0和i2c-1这两个设备,于是查了一下。发现按照国内大部分教程为linux添加i2c-dev的驱动以后,并没有解决问题。翻墙找了找,如果单纯添加驱动不能解决问题的话,就需要修改/boot/config.txt了。

修改/boot/config.txt方法:

找到 device_tree_param=i2c_arm=on 和 device_tree_param=i2c_vc=on ,然后将其前面的注释去掉。

树莓派应该是有两条i2c总线?我不确定。不过一般情况在,/dev中会有i2c-0和i2c-1两个设备,上面两条如果只取消注释一条的话,那么只会出现一个i2c设备。i2c_arm对应的是i2c-1,i2c_vc对应的是i2c-0。

修改/etc/modules-load.d/raspberrypi.conf方法:

最后面添加i2c-dev。

这时候重启应该就可以看到/dev里面的i2c设备了。

再往下可以安装i2c-tools来查看工作状态了。这个自行搜索怎么用吧,我也没研究呢。

题外话:

  • 从上面的试验可以看出,config.txt的优先级要比linux内核驱动的优先级高,可以直接关闭设别,这样驱动也就无效了。
  • config.txt里面有i2c的速率设置方式,相应模块也有速率设置的方式,这两个优先级没有测试。
  • 有的linux发布上还有blacklist的设置,还需要从黑名单中去掉i2c设备。ArchLinuxARM这个是空的。
  • 目前是在Pi 1 B+上进行的测试。在Pi 1 B和Pi 2 B上还没有测试。根据文档看,貌似有区别,但是中说纷纭,有待测试。
  • DS1307硬时钟是i2c接口的,所以在使用DS1307前,需要保证i2c正常。