mortalask

mortalask

0个粉丝

1

问答

0

专栏

0

资料

mortalask  发布于  2016-04-19 14:22:00
采纳率 0%
1个问答
4191

HI3531 OS内存怎么扩增?

 
开发板有两块DDR,每块大小为512M字节,现在想给OS内存分配800M,MMZ分配剩下的内存,做法如下:
1、bootargs中设置“mem=800M”,
2、加载ko时设置insmod mmz.ko mmz=anonymous,0,0xd2000000,107M:jpeg,0,0xd8b00000,5M:ddr1,0,0xd9000000,111M anony=1 || report_error

完成后,运行一个很耗内存的程序时,运行一会自动崩溃,请教各位,有没有可能是OS内存分配超过了单片DDR容量导致的?如果是,怎样可以突破这个限制
?SDK建议配置如图:
我来回答
回答5个
时间排序
认可量排序

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-04-19 15:45:06
认可0
楼主的办法是不对的
mem=800M 意思是用0x80000000开始连续的800M, 而实际物理上只有512M(0x80000000-0x9FFFFFFF)后面512M地址(0xA0000000-0xBFFFFFFF)是空的,OS一旦读写到这地方必然崩

这个好办
首先 linux 可以支持使用不连续的内存
这个只要修改 bootargs中 mem参数, 比如

mem=400M@0x80000000 mem=400M@0xc0000000
这样一来 OS就用了两块400M的内存, 分别位于起始地址0x80000000, 0xc0000000

接着就是修改MMZ了
加载ko时设置insmod mmz.ko mmz=anonymous,0,0x99000000,107M:jpeg,0,0x9fb00000,5M:ddr1,0,0xd9000000,112M anony=1 || report_error
意思是 MMZ 分两部分
0x99000000-- 0x9fafffff  名字为anonymous
0x9fb00000 -- 0x9ffffffff 名字为jpeg
0xd9000000 -- 0xdfffffff  名字为ddr1

ngswfx

1个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-04-19 18:46:41
认可0
本帖最后由 ngswfx 于 2016-4-19 18:52 编辑

第一次知道,原来这2个内存地址还不连续,学习了

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-04-20 08:04:26
认可0
3531这个做法被吐嘈了, 到3531A就没这么笨了,直接一块连续的内存地址了

ppg

0个粉丝

0

问答

0

专栏

0

资料

ppg 2016-05-26 15:56:00
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=28718&ptid=11041]zhuangweiye 发表于 2016-4-19 15:45[/url]
楼主的办法是不对的
mem=800M 意思是用0x80000000开始连续的800M, 而实际物理上只有512M(0x80000000-0x9FF ...[/quote]

bootargs=mem=192M@0x80000000 mem=192M@0xC0000000 console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 mtdparts=hinand:1M(boot),15M(kernel),32M(rootfs),200M(nand)
为什么我这样设置完后,free只有192M

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-05-27 08:04:27
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=30680&ptid=11041]ppg 发表于 2016-5-26 15:56[/url]
bootargs=mem=192M@0x80000000 mem=192M@0xC0000000 console=ttyAMA0,115200 root=/dev/mtdblock2 rootfs ...[/quote]

把linux启动的log放上来看看
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区