首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
中国IT实验室Linux频道
中国IT教育
首页 新手入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> 系统管理 >> 内核技术 >> 文章正文

linux内核启动过程的几个地址问题

文章来源中国IT实验室收集整理 作者佚名 更新时间2007-12-7 保存本文保存本文 推荐给好友推荐给好友 收藏本页收藏本页

  问题1:

    我查了网上说TEXT=0xC0008000是内核启动的虚拟地址,想问下在这里虚拟地址的概念是什么?虚拟地址是啥样的啊,为什么给出的是这个TEXT=0xC0008000啊?虚拟地址的设置和芯片有关吗?
 
  问题2:

    ZTEXTADDR和ZRELADDR 这两个是偏移地址 吗?我看我用的s3c2410的这里makefile定义的是 ZTEXTADDR =0x30008000 ZRELADDR = 0x30008000 好像不是虚拟地址的概念啊,应该是自解压代码的起始地址和内核解压后代码输出起始地址啊,可是为什么我从网上查的都说这两个是偏移地址呢
 
  问题3:

    还有,网上查的说“如果需要从flash中启动还需要设置 ZTEXTADDR地址。”是什么意思啊,是指存放内核压缩文件在FLASH中中吗,那个和ZTEXTADDR地址为什么需要对应呢,因为我看指定的ZTEXTADDR就是SDRAM的地址啊
 
  答复:根据自己的电路设置TEXT变量。
 
  ZRELADDR决定内核解压后数据输出的地址。
 
  ZTEXTADDR为bootloader的压缩内核文件烧入flash的起始地址,即从哪个位置开始执行bootloader,若启动时直接运行,则将其设为0;若自带bios可以跳到想要的地址,则可改为所要的位置。要根据自己的电路设置ZTEXTADDR和ZRELADDR变量。
 

【责编:Zenghui】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·Linux 安全管理
 ·Linux 下DNS服务器架设攻略
 ·Linux 下的路由的配置与应用
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 ·Linux常用命令全集
 ·GRUB 玩转任意操作系统多重启动引导
 ·想传就传 多平台随心所欲架设FTP
 ·网络圈地 建立企业web服务器专题
 ·Linux安装指南专题
 今日更新
 认证培训
 频道精选
 Windows频道导航