QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1186|回复: 4

熟悉armboot的请指点(Dragonfly老大请帮忙)

[复制链接]
发表于 2004-7-26 09:25:04 | 显示全部楼层 |阅读模式
在board.c,里有一段:

/*
* Begin and End of memory area for malloc(), and current "brk"
*/
static ulong mem_malloc_start = 0;
static ulong mem_malloc_end = 0;
static ulong mem_malloc_brk = 0;

static void mem_malloc_init (ulong dest_addr)
{
mem_malloc_start = dest_addr;
mem_malloc_end = dest_addr + CONFIG_MALLOC_SIZE;
mem_malloc_brk = mem_malloc_start;

memset ((void *)mem_malloc_start, 0, mem_malloc_end - mem_malloc_start);
}

它的意思是:
将mem_malloc_start到mem_malloc_end这一段内存初始化,以用作malloc分配区。但是,程序在运行调用malloc的时候,是根据什么一定会在这段内存区分配空间。
在linuxforum上也发了帖子,可是没有人回啊,是不是我问的问题太菜了啊?!
发表于 2004-7-26 11:24:21 | 显示全部楼层
我建议你看一下memset函数
用命令man memset,上面说的很清楚的
回复

使用道具 举报

 楼主| 发表于 2004-7-27 09:16:28 | 显示全部楼层
memset只是对指定的空间进行初始化。而我想知道的是malloc它是具体在哪一段区域分配空间,man memset只是给出了很少的信息啊。
回复

使用道具 举报

发表于 2004-7-27 10:46:46 | 显示全部楼层
hehe, sorry. i do not know what is armboot.

but since u have question about malloc, why not read the malloc code?
回复

使用道具 举报

 楼主| 发表于 2004-7-27 11:15:51 | 显示全部楼层
它是不同于Libc里的一个版本。
ftp://gee.cs.oswego.edu/pub/misc/malloc.c
但是,极度郁闷的是从源代码里我竟然没有知道malloc的实现。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-22 03:05 , Processed in 0.122834 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表