Linux操作系统下关于引导和初始化的问题
http://tech.ddvip.com 2007年07月10日 社区交流
内容摘要:Linux操作系统下关于引导和初始化的问题
960-KB–1-MB memory (BIOS Area) - System BIOS Area.
扩展内存区:由1M到4GB-1
— High BIOS area from 4 GB to 4 GB–2 MB
Intel 82875P Memory Controller Hub (MCH)
memery的监测和初始化:在对内存接口做操作前,必须初始化MCH DRAM寄存器.MCH必须配制成针对所安
装的内存的类型进行操作.对内存类型和大小的检测是通过ICH5上的System Management Bus (SMBus)来
完成.这个两线的总线通过DRAM DIMM上的Serial Presence Detect端口获得DRAM的类型和大小信息.
BIOS需要确定每行内存的大小和类型来配置MCH内存接口.
2.x86MPU 启动时的初始化
复位输入提供一种初始化的硬件手段.通过复位接口电路向mpu提供信号,Reset要保持1至少15个
CLK2周期,当返回0后,MPU启动内部初始化程序,进入实地址模式.初始化完成后,标志寄存器设为
0xUUUU0002(u代表未定义,实模式下9位标志可用,这里是奇偶标志为1);指令指针设为0x0000FFF0,CS
寄存器设为0xF000,DS,SS,ES,FS和GS寄存器都设为0x0000,指令队列清空.
实模式下地址的形成:段基址+指令指针偏移
MPU在识别出Reset信号后把数据总线设在高阻状态,地址线强行设为1.由于清空中断标志是初始化
的一部分,外部中断被禁止.因为代码段寄存器为0xF000,指令指针为0x0000FFF0,地址线A20-A31全部
是1,从而复位后实模式程序从地址0xFFFFFFF0开始(只用于实模式高地址位忽略,从地址0xFFFF0开始.
该地址处可以包含一条转移指令跳到启动程序处.
物理地址为0xfffffff0的代码将被执行.这个地址被存储在一个只读存储器(ROM)里.BIOS(基本
输入/输出系统)实际上是一段存储在ROM里的程序.它包含了一系列可以被某些操作系统调用,用于处理
责编:豆豆技术应用
- Linux/Unix 新闻
- Linux/Unix 入门
- Linux/Unix 命令
- Linux/Unix 安装
- Linux 嵌入式系统
- Linux/Unix 编程
- Linux/Unix 管理
- Linux/Unix 桌面
- Linux/Unix 内核
- Linux/Unix 软件
- SCO Unix
- NetBSD
- OpenBSD
- Redhat/Fedora Linux
- 手机
- Linux/Unix find 搜索命令
- Linux/Unix vi 命令
- Linux/Unix kde 桌面环境
- Linux/Unix GNOME 桌面环境
- Linux/Unix Make 命令
- Linux/Unix crontab 命令
- Linux/Unix ext3 文件系统
- Linux/Unix 文件系统详解
- Linux/Unix ADSL 拨号设置
- Linux/Unix GRUB 配置及应用
- Linux/Unix nfs配置
- Linux/Unix 硬件信息查看及管理
- Linux/Unix 优化
- Linux/Unix 交换分区Swap管理及应用
- Linux/Unix 用户管理
- Linux/Unix Ramdisk
- Linux/Unix 密码恢复管理
- Linux/Unix 文件删除恢复
- Linux/Unix fdisk分区
- Linux/Unix lvs负载均衡管理
- Linux/Unix root用户
- Linux/Unix 集群
- Linux/Unix 日志
- 更多Linux/Unix专题……