(转)海思平台HI35XX系列内存设置
海思平台的内存分为两部分,一部分给系统使用,另外的一部分给多媒体使用。可以通过cat /proc/meminfo查看系统内存和cat /proc/media-mem 查看多媒体内存使用情况。
/proc # cat /proc/meminfo
MemTotal: 255192 kB
MemFree: 103232 kB
Buffers: 25328 kB
Cached: 36888 kB
SwapCached: 0 kB
Active: 74936 kB
Inactive: 56008 kB
Active(anon): 68900 kB
Inactive(anon): 272 kB
Active(file): 6036 kB
Inactive(file): 55736 kB
Unevictable: 0 kB
Mlocked: 0 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 255192 kB
LowFree: 103232 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 4320 kB
Writeback: 0 kB
AnonPages: 68748 kB
Mapped: 7032 kB
Shmem: 444 kB
Slab: 9440 kB
SReclaimable: 5632 kB
SUnreclaim: 3808 kB
KernelStack: 1000 kB
PageTables: 748 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 127596 kB
Committed_AS: 648944 kB
VmallocTotal: 761856 kB
VmallocUsed: 57556 kB
VmallocChunk: 688216 kB
多媒体内存:
/proc # cat /proc/media-mem
+---ZONE: PHYS(0x90000000, 0x9FFFFFFF), GFP=0, nBYTES=262144KB, NAME="anonymous"
|-MMB: phys(0x90000000, 0x90000FFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="SYS_DCI_coef"
|-MMB: phys(0x90001000, 0x90003FFF), kvirt=0x (null), flags=0x00000000, length=12KB, name="SYS_scale_coef"
|-MMB: phys(0x90004000, 0x90006FFF), kvirt=0x (null), flags=0x00000000, length=12KB, name="SYS_scale_coef"
|-MMB: phys(0x90007000, 0x90086FFF), kvirt=0x (null), flags=0x00000000, length=512KB, name="TDE_MemPool"
|-MMB: phys(0x90087000, 0x900D7FFF), kvirt=0x (null), flags=0x00000000, length=324KB, name="VGS_NodeBuf"
|-MMB: phys(0x900D8000, 0x90128FFF), kvirt=0x (null), flags=0x00000000, length=324KB, name="VGS_VpssNodeBuf"
|-MMB: phys(0x90129000, 0x9012BFFF), kvirt=0x (null), flags=0x00000000, length=12KB, name="RgnModInfo"
|-MMB: phys(0x9012C000, 0x90134FFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="vpss_drv_queue"
|-MMB: phys(0x90135000, 0x9013DFFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="RgnModInfo"
|-MMB: phys(0x9013E000, 0x90146FFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="RgnModInfo"
|-MMB: phys(0x90147000, 0x90169FFF), kvirt=0x (null), flags=0x00000000, length=140KB, name="RgnModInfo"
|-MMB: phys(0x9016A000, 0x9018CFFF), kvirt=0x (null), flags=0x00000000, length=140KB, name="RgnModInfo"
|-MMB: phys(0x9018D000, 0x901AFFFF), kvirt=0x (null), flags=0x00000000, length=140KB, name="RgnModInfo"
|-MMB: phys(0x901B0000, 0x901D2FFF), kvirt=0x (null), flags=0x00000000, length=140KB, name="RgnModInfo"
|-MMB: phys(0x901D3000, 0x901DBFFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="VoCoef"
|-MMB: phys(0x901DC000, 0x901E3FFF), kvirt=0x (null), flags=0x00000000, length=32KB, name="RgnModInfo"
|-MMB: phys(0x901E4000, 0x901EBFFF), kvirt=0x (null), flags=0x00000000, length=32KB, name="RgnModInfo"
|-MMB: phys(0x901EC000, 0x901F3FFF), kvirt=0x (null), flags=0x00000000, length=32KB, name="RgnModInfo"
|-MMB: phys(0x901F4000, 0x909DCFFF), kvirt=0x (null), flags=0x00000000, length=8100KB, name="hifb_layer0"
|-MMB: phys(0x909DD000, 0x90B71FFF), kvirt=0x (null), flags=0x00000000, length=1620KB, name="hifb_layer1"
|-MMB: phys(0x90B72000, 0x90B91FFF), kvirt=0x (null), flags=0x00000000, length=128KB, name="hifb_layer2"
|-MMB: phys(0x90B92000, 0x90B96FFF), kvirt=0x (null), flags=0x00000000, length=20KB, name="RgnModInfo"
|-MMB: phys(0x90B97000, 0x90BCBFFF), kvirt=0x (null), flags=0x00000000, length=212KB, name="IVE_QUEUE"
|-MMB: phys(0x90BCC000, 0x90BCCFFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="IVE_TEMP_NODE"
|-MMB: phys(0x90BCD000, 0x92BD6FFF), kvirt=0x (null), flags=0x00000000, length=32808KB, name="VbPool"
|-MMB: phys(0x92BD7000, 0x94BE0FFF), kvirt=0x (null), flags=0x00000000, length=32808KB, name="VbPool"
|-MMB: phys(0x94BE1000, 0x95A1DFFF), kvirt=0x (null), flags=0x00000000, length=14580KB, name="VbPool"
|-MMB: phys(0x95A1E000, 0x9685AFFF), kvirt=0x (null), flags=0x00000000, length=14580KB, name="VbPool"
|-MMB: phys(0x9685B000, 0x96D34FFF), kvirt=0x (null), flags=0x00000000, length=4968KB, name="VbPool"
|-MMB: phys(0x96D35000, 0x96D35FFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Grp RgnLuma buf"
|-MMB: phys(0x96D36000, 0x96D36FFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Chn RgnLuma buf"
|-MMB: phys(0x96D37000, 0x96D39FFF), kvirt=0x (null), flags=0x00000000, length=12KB, name="model buf"
|-MMB: phys(0x96D3A000, 0x96EA9FFF), kvirt=0x (null), flags=0x00000000, length=1472KB, name="Ref&Mad buf"
|-MMB: phys(0x96EAA000, 0x96EAAFFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Dci buf"
|-MMB: phys(0x96EAB000, 0x9701AFFF), kvirt=0x (null), flags=0x00000000, length=1472KB, name="Ref&Mad buf"
|-MMB: phys(0x9701B000, 0x9701BFFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Dci buf"
|-MMB: phys(0x9701C000, 0x9701CFFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Grp RgnLuma buf"
|-MMB: phys(0x9701D000, 0x9701DFFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="Chn RgnLuma buf"
|-MMB: phys(0x9701E000, 0x97020FFF), kvirt=0x (null), flags=0x00000000, length=12KB, name="model buf"
|-MMB: phys(0x97021000, 0x97022FFF), kvirt=0x (null), flags=0x00000000, length=8KB, name="AI(0) DMABuf"
|-MMB: phys(0x97023000, 0x9707CFFF), kvirt=0x (null), flags=0x00000000, length=360KB, name="AI(0) FrmBuf"
|-MMB: phys(0x9707D000, 0x97244FFF), kvirt=0x (null), flags=0x00000000, length=1824KB, name="[VOU]VSD(2)"
|-MMB: phys(0x97245000, 0x97408FFF), kvirt=0x (null), flags=0x00000000, length=1808KB, name="h264e0_Str"
|-MMB: phys(0x97409000, 0x9740DFFF), kvirt=0x (null), flags=0x00000000, length=20KB, name="h264e0_Ct"
|-MMB: phys(0x9740E000, 0x976B4FFF), kvirt=0x (null), flags=0x00000000, length=2716KB, name="h264e0_RcnVb"
|-MMB: phys(0x976B5000, 0x976BFFFF), kvirt=0x (null), flags=0x00000000, length=44KB, name="RgnPinPon"
|-MMB: phys(0x976C0000, 0x976D3FFF), kvirt=0x (null), flags=0x00000000, length=80KB, name="RgnPinPon"
|-MMB: phys(0x976D4000, 0x976EAFFF), kvirt=0x (null), flags=0x00000000, length=92KB, name="RgnPinPon"
|-MMB: phys(0x976EB000, 0x976F3FFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="RgnPinPon"
|-MMB: phys(0x976F4000, 0x976FCFFF), kvirt=0x (null), flags=0x00000000, length=36KB, name="RgnPinPon"
|-MMB: phys(0x976FD000, 0x97704FFF), kvirt=0x (null), flags=0x00000000, length=32KB, name="RgnPinPon"
|-MMB: phys(0x97705000, 0x9770AFFF), kvirt=0x (null), flags=0x00000000, length=24KB, name="RgnPinPon"
|-MMB: phys(0x9770B000, 0x97747FFF), kvirt=0x (null), flags=0x00000000, length=244KB, name="AENC(0)StrmBuf"
|-MMB: phys(0x97748000, 0x9774FFFF), kvirt=0x (null), flags=0x00000000, length=32KB, name="AENC(0) CirBuf"
|-MMB: phys(0x97750000, 0x97750FFF), kvirt=0x (null), flags=0x00000000, length=4KB, name="DevCutPower"
---MMZ_USE_INFO:
total size=262144KB(256MB),used=122180KB(119MB + 324KB),remain=139964KB(136MB + 700KB),zone_number=1,block_number=55
/proc #
我的DDR是512M的,256M分配给了系统使用,256M分配给了多媒体。
系统内存设置:
系统内存分配,也就是分配给linux系统使用的,也包括用户的应用程序,这部分的参数设置是在uboot中完成,然后uboot传递给kernel。如下命令,mem设置的就是系统内存。
setenv bootargs 'mem=256M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1M(boot),4M(kernel),8M(rootfs),4M(app&data),4M(data),2M(parameter),8M(updatefs)'
多媒体内存设置:
多媒体内存是在海思平台用来编码解码操作是使用的内存,他的设置是在文件系统/lib/modules/driver_ko 目录下的load文件中完成。
####################Variables Definition##########################
AD_TYPE=6134 # ad type
mem_total=512; # 512M, total mem
mem_start=0x80000000; # phy mem start
os_mem_size=256; # 256M, os mem
mmz_start=0x90000000; # mmz start addr
mmz_size=256M; # 256M, mmz size
##################################################################
mmz_size 设置的就是多媒体内存。这里需要多注意一点,系统内存os_mem_size在这里是不能设置成功的,需要在到boot里面设置。系统内存+多媒体内存=物理内存。设置小了浪费内存,设置大了易出现异常。
————————————————
版权声明:本文为CSDN博主「li_wen01」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/li_wen01/article/details/86547859
(转)海思平台HI35XX系列内存设置的更多相关文章
- OpenCV开发笔记(七十四):OpenCV3.4.1+ffmpeg3.4.8交叉编译移植到海思平台Hi35xx平台
前言 移植opencv到海思平台,opencv支持对视频进行解码,需要对应的ffmpeg支持. Ffmpeg的移植 Ffmpeg的移植请参考之前的文章:<FFmpeg开发笔记(十): ...
- 海思平台服务器版软件V15.2产品发布
深度操作系统海思平台服务器版软件是武汉深之度科技有限公司发布的针对华为海思平台的TaiShan系列服务器发布的企业级服务器操作系统软件产品,主要面向企业级服务器应用场景,为用户在国产化平台上提供更具可 ...
- 用VS2013+VELT-0.1.4进行海思平台 Linux内核 的开发
快乐虾 http://blog.csdn.net/lights_joy/(QQ群:Visual EmbedLinux Tools 375515651) 欢迎转载,但请保留作者信息 本文仅适用于vs20 ...
- 【ARM-Linux开发】用VS2013+VELT-0.1.4进行海思平台 Linux内核 的开发
1.1 什么是VELT VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发.利用这个插件 ...
- cryptopp使用Qt mingw编译,以及海思平台交叉编译
编译工程生成,使用qmake生成qt工程文件(海思平台时,要用海思平台的qmake),将 TEMPLATE = app 修改为: TEMPLATE = lib 添加如下: win32:LIBS += ...
- 用vs2013+velt-0.1.4进行嵌入式开发 进行海思平台 UBOOT 开发
1.1 什么是VELT VELT的全称是Visual EmbedLinuxTools,它是一个与visual gdb类似的visual studio插件,用以辅助完成Linux开发.利用这个插件 ...
- libx264开发笔记(一):libx264介绍、海思平台移植编译
前言 在编译ffmpeg时,使用到h264编码时是需要依赖libx264的,本文章是将将libx264作为静态库移植到海思上. 相关博客 <Qt开发笔记之编码x264码流并封装mp4(一 ...
- 海思平台交叉编译curl支持SSL功能
1.准备工具 1).交叉编译工具 2).下载libcurl和openssl源代码,我使用的是(openssl-1.0.2o.tar,curl-7.59.0.tar) 3).查看cpu详细 ~ # ca ...
- 海思3519A 移植 Qt 5.5.1
源码下载 网址:qt-everywhere-opensource-src-5.5.1.tar.gz 配置生成MakeFile 文件 解压源码包,在源码包路径下生成配置 MakeFile : ./con ...
随机推荐
- 安装FeedReader添加RSS订阅
#0x1 FeedReader FeedReader是一款功能齐全,界面优美的GTK+ 3RSS阅读器客户端,用于在线RSS服务. FeedReader目前支持Feedbin,Feedly,Fresh ...
- 外部应用复制 表格 到word中 设置表格自适应
word 批量设置表格宽度自适应 描述 : 我们经常从 外部 如 excel,html 等其他文件 中复制的表格到word 文档 经常会出现在 word 中显示不全的问题 主要是源格式的表格 宽度比 ...
- 数据可视化之powerBI技巧(八)Power BI按多列排序的技巧
目前PowerBI的表格已经支持多列排序,但是矩阵依然还不支持按多个字段排序,虽然这个需求很普遍,这里利用DAX提供一个变通的实现方式. 模拟数据如下,有两个数据指标: 对类别首先按[指标一]进行排序 ...
- python 并发专题(十三):asyncio (二) 协程中的多任务
. 本文目录# 协程中的并发 协程中的嵌套 协程中的状态 gather与wait . 协程中的并发# 协程的并发,和线程一样.举个例子来说,就好像 一个人同时吃三个馒头,咬了第一个馒头一口,就得等这口 ...
- 集群多JVM分布式锁实现
基于数据库表乐观锁 (基本废弃) 要实现分布式锁,最简单的⽅方式可能就是直接创建⼀一张锁表,然后通过操作该表中的数据来实现了了. 当我们要锁住某个⽅法或资源时,我们就在该表中增加一条记录,想要释放锁的 ...
- How to start MySQL on Linux
启动MySQL数据库 service mysql start 查看MySQL进程 ps -ef |grep mysql 查看MySQL端口号 cd /etc/init.d/ netstat -atnp ...
- kafka 监控工具 eagle 的安装(内附高速下载地址)
简介 如图 kafka eagle 是可视化的 kafka 监视系统,用于监控 kafka 集群 环境准备: 需要的内存:1.5G+ 支持的 kafka 版本:0.8.2.x,0.9.x,0.10.x ...
- .clearfix 清除浮动,@import
我们知道,在网页的DIV+CSS布局中,很多时候要用到浮动. 既然有浮动,那就有清除浮动. 清除浮动有很多种方式,而在实际项目中,比较常用的是这一种. .clearfix:after { conten ...
- mysqldump导出表结构及数据
问题描述:有需要mysql某几张表的需求,某个数据库某几张表,导出先检查相应的数据库和表是否存在 数据泵用法:默认导出的是表结构以及表中的数据 mysqldump -uroot -p -S /data ...
- ES6面试
未完持续 概念 ECMAScript6(以下简称ES6)是 JavaScript 语言的下一代标准,前者是后者的规格,后者是前者的一种实现. ES6(新增的)一些特性 1.变.常量:let声明变量,c ...