推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

MIPS Linux异常中断代码分析

更新时间:2019-08-29 10:32:06 大小:4M 上传用户:sun2152查看TA发布的资源 标签:mipslinux异常中断 下载积分:1分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

本文拟以龙芯2E(兼容MIPSIII)为例,对内核的异常、中断系统作一个框架式的描述,将结合2.6.18的代码来说明。

A.概述

龙芯2E在高优先级异常出现时,在设置了某些寄存器后,会根据异常类型跳转到相应的固定地址处(高优先级异常服务入口),操作系统会将相应的异常处理程序,置于这些地址处。龙芯2E的高优先级异常有:冷启动、热重启、非屏蔽中断,TLB重填(32位模式),XTLB重填(64位模式),cache错误,其他异常。

龙芯2E之高优先级异常入口地址有以下五个:

当龙芯正常运行时,STATUS寄存器之BEV位为0,OXFFFFFFFF 80000000地址处不经TLB映射、但缓存;当龙芯启动时,STATUS寄存器之BEV位为1,OXFFFF FFFF BFCO

0200地址处龙芯不缓存、不经TLB映射。MIPS下TLB、Cache都要OS参与管理,在其启动时OS尚未接管系统,这个时候不采用TLB、Cache机制是很重要的。

注意,冷启动、热重启、非屏蔽中断的入口地址始终位于OXFFFF FFFF BFCO0000


部分文件列表

文件名 大小
MIPSLinux异常中断代码分析.pdf 4M

部分页面预览

(完整内容请下载后查看)

全部评论(0)

暂无评论