树莓派的基本操作Word格式.docx
《树莓派的基本操作Word格式.docx》由会员分享,可在线阅读,更多相关《树莓派的基本操作Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
![树莓派的基本操作Word格式.docx](https://file1.bdocx.com/fileroot1/2023-2/3/f62a8e04-5648-4140-8031-db8fc8f7e19c/f62a8e04-5648-4140-8031-db8fc8f7e19c1.gif)
日期:
年月日
一、课题背景
1.平台背景
在本次计算机组成原理大作业中,我选择了树莓派(raspberrypi)作为开发试验的平台。
树莓派只有信用卡大小的卡片式电脑,其系统基于Linux。
自从其问世以来深受计算机爱好者的喜爱。
其较小的外形使它拥有了便携,易于安装到其他设备上等特点。
在其较小的外表下隐藏着两大的功能:
●网卡:
10/100自适应网卡
●CPU:
BroadcomBCM2836900MHz4核ARMCortex-A7
●GPU:
支持OpenGLES2.0,OpenVG硬件加速,1080p30H.264高清解码,带宽1Gpixel/s,1.5Gtexel/sor24GFLOPsDMA纹理解析
●内存:
1GB
正是这些性价比较高的硬件支持,使得树莓派在开发者手中有不俗的表现。
作为计算机专业的学生,正好借此机会学习体验树莓派的强大功能,提升自己对计算机硬件方面的理解。
2.实验背景
本次实验主要是通过在树莓派官方的操作系统下实现对cpu频率,温度,内存及硬盘的使用情况的检测,以及对其进行超频并检测器性能上的变化。
二、课题目标
1.检测硬件信息
通过编写程序或使用系统调用来实现对树莓派硬件信息的实时监控,如cpu占用率,cpu温度,内存使用情况,cpu的频率以及cpu各个核的信息等。
2.超频操作及效果检测
对树莓派进行两次不同频率的超频操作,并在每次超频后对系统的功能进行测试分析,总结得出结论。
3.动态调整内存主频
将内存主频在CPU和GPU之间动态调整分配可提高CPU与内存之间的交互效率,使超频后的树莓派能更好的适应高频的CPU工作状态。
三、实验过程记录
1.建立连接
由于树莓派只是一个集成了许多芯片的开发板,并没有鼠标键盘显示器等外设,所以第一步就是将树莓派与本人的笔记本电脑进行连接以实现后续操作。
经过查询资料最终确定了使用ssh(安全外壳协议)连接的方法,采用PuTTY软件进行ssh连接。
由于本连接方法的限制,所以必须将树莓派和笔记本电脑接在一个局域网内(本实验采用接在同意路由器下),通过对树莓派的ip访问建立ssh连接。
图3-1使用PuTTY软件建立连接第一步
图3-2成功连接
在建立连接后为方便后续的实验操作,我还安装了生成图形界面投影到笔记本的软件vncserver。
通过在ssh连接的窗口中输入命令语句实现软件的安装与界面的生成。
由于树莓派的官方系统为debain系统,是基于linux的系统所以命令语句与在Ubuntu下的基本相同,操作起来比较习惯。
图3-3建立名为1的界面
图3-4将界面投影到笔记本
图3-5生成界面
2.硬件信息检测
1)CPU基本信息(静态信息)
通过系统调用来显示CPU的基本信息,具体结果如下:
●ARM四核
●每个核的MIPS均为38.4mHz
其他部分的信息经过查资料后只是能知道其名称,不太理解其具体的作用与含义,在此不做赘述。
图3-6CPU基本信息
2)动态信息
动态信息指的是cpu温度,cpu占用率,内存占用情况等信息。
本部分通过使用树莓派的默认开发语言python语言编写的程序来实现。
核心代码为:
importos
#ReturnCPUtemperatureasacharacterstring//CPU温度信息
defgetCPUtemperature():
res=os.popen('
vcgencmdmeasure_temp'
).readline()
return(res.replace("
temp="
"
"
).replace("
'
C\n"
))
#ReturnRAMinformation(unit=kb)inalist
#Index0:
totalRAM
#Index1:
usedRAM
#Index2:
freeRAM
defgetRAMinfo():
//获取内存信息
p=os.popen('
free'
)
i=0
while1:
i=i+1
line=p.readline()
ifi==2:
return(line.split()[1:
4])
#Return%ofCPUusedbyuserasacharacterstring//CPU使用率
defgetCPUuse():
return(str(os.popen("
top-n1|awk'
/Cpu\(s\):
/{print$2}'
).readline().strip()))
#Returninformationaboutdiskspaceasalist(unitincluded)
totaldiskspace
useddiskspace
remainingdiskspace
#Index3:
percentageofdiskused
defgetDiskSpace():
//硬盘空间
p=os.popen("
df-h/"
i=i+1
5])
#CPUinformatiom
CPU_temp=getCPUtemperature()
CPU_usage=getCPUuse()
#RAMinformation
#Outputisinkb,hereIconvertitinMbforreadability//内存信息
RAM_stats=getRAMinfo()
RAM_total=round(int(RAM_stats[0])/1000,1)//总内存
RAM_used=round(int(RAM_stats[1])/1000,1)//已用内存
RAM_free=round(int(RAM_stats[2])/1000,1)//剩余内存
#Diskinformation
DISK_stats=getDiskSpace()
DISK_total=DISK_stats[0]//总硬盘容量
DISK_used=DISK_stats[1]//已用硬盘容量
DISK_perc=DISK_stats[3]//硬盘容量占用率
if__name__=='
__main__'
:
//显示输出
print('
CPUTemperature='
+CPU_temp)
CPUUse='
+CPU_usage)
RAMTotal='
+str(RAM_total)+'
MB'
RAMUsed='
+str(RAM_used)+'
RAMFree='
+str(RAM_free)+'
)
DISKTotalSpace='
+str(DISK_total)+'
B'
DISKUsedSpace='
+str(DISK_used)+'
DISKUsedPercentage='
+str(DISK_perc))
运行结果为:
图3-7动态信息
●CPU温度为33.6度
●CPU占用率为0.9%
●总内存为948.0MB(官方信息为1GB)
●总硬盘容量为15GB(树莓派的硬盘是通过SD卡槽中的SD卡实现的硬盘连接,我所使用的SD卡容量为16GB)
3.超频操作
1)原主频
通过系统调用,在终端内显示配置文件内CPU的主频,结果如下:
图3-8CPU主频信息
系统默认的CPU主频为900mhz。
运行一个专门编写用于测试运算时间的程序,输出的运行时间为31.197秒,结果图为:
图3-9测试程序运行时间
2)第一次超频
通过系统自带的config修改程序进行超频操作,将频率提高5%即为950mhz
图3-10第一次超频后频率
运行测试程序的时间输出为29.576秒,结果图如下:
图3-11第一次超频后运行相同程序的时间
3)第二次超频
与上一步骤相同,本次选择主频为1000mhz
图3-11第二次超频后频率
运行相同的测试程序时间输出为28.427秒,结果图如下:
图3-12第二次超频后运行相同程序的时间
4.动态调整内存主频
通过修改config配置文件的方法,咋config.txt文件中加入以下声明文件:
gpu_mem_256=160
gpu_mem_512=316
cma_lwm=16//GPU最少用量
cma_hwm=32//GPU最多用量
当gpu的内存占用量小于最小值时从arm中获取,当gpu的内存占用量大于最大值时,将多余的内存给arm使用。
四、实验结论
表4-1实验结果
处理时间(s)
频率提升
处理时间提升
CPU温度
900mhz
31.197
0%
33.6
950mhz
29.576
5.5%
5.2%
37.7
1000mhz
28.427
11.1%
8.9%
43.2
结果表明,主频的提升基本和性能的提升成正比。
在不同的CPU主频下运行相同的测试程序得到的时间结果不同,主频越高处理时间越短,相对的CPU温度就越高。
所以CPU的主频不能盲目的提升。
五、实验中的问题
a)在本次试验中的第一次超频操作时在设置完新的主频之后进行重启时出现了问题。
在重启完后树莓派无法通过ssh连接了。
后来经过查资料得知树莓派在重启时会关闭默认开启的ssh连接端口,重启后需要手动打开,但是由于我是通过ssh连接才能操作树莓派而不是通过给树莓派连接外设的方法,所以无法连接就意味着无法操作,后来重新安装了系统才得以实现再次开机连接。
后来发现需要在关闭树莓派后重启电源才能正常的通过ssh连接。
b)温度的测量不够准确,由于受到室温的影响,以及每次测试前CPU状态的差异导致了CPU温度的测量不够准确,所以这方面的数据仅供参考价值。
不起决定性作用。
六、实验总结
本次的计算机组成原理大作业从选题到最后的结题都是由我个人完成,在实验的过程中我学习到了很多以前没有接触过的知识,比如何通过设置端口来进行远程的访问,可以在手机,计算机上通过网络来访问树莓派。
同时还学习了一些基础的python的操作。
另一方面,更重要的是我锻炼了自己的自学能力,与查询资料克服困难的能力。
在以后的学习生活中要更加注重自学的能力和解决问题的能力,自己才是自己最好的老师。
THANKS!
!
致力为企业和个人提供合同协议,策划案计划书,学习课件等等
打造全网一站式需求
欢迎您的下载,资料仅供参考