系统软件分析报告.doc

系统软件分析报告.doc

ID:52720262

大小:45.00 KB

页数:11页

时间:2020-03-29

系统软件分析报告.doc_第1页
系统软件分析报告.doc_第2页
系统软件分析报告.doc_第3页
系统软件分析报告.doc_第4页
系统软件分析报告.doc_第5页
资源描述:

《系统软件分析报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、系统软件分析报告A:函数分析一.函数名:traps.c程序二.功能描述traps.c程序主要包括一些在处理异常故障<硬件中断)的底层代码asm.s中调用的相应C函数。用于显示出错位置和出错号等调试信息。其中的die(>通用函数用于在中断处理中显示详细的出错信息,而代码最后的初始化函数trap_init(>是在前面init/main.c中被调用,用于硬件异常处理中断向量<陷阱门)的初始化,并设置允许中断请求信号的到来。b5E2RGbCAP三.代码注释程序:linux/kernel/traps.c1/*2*

2、linux/kernel/traps.c3*4*(C>1991LinusTorvalds5*/67/*8*'Traps.c'handleshardwaretrapsandfaultsafterwehavesavedsomep1EanqFDPw9*statein'asm.s'.Currentlymostlyadebugging-aid,willbeextendedDXDiTa9E3d10*tomainlykilltheoffendingprocess(probablybygivingitasignal,R

3、TCrpUDGiT11*butpossiblybykillingitoutrightifnecessary>.5PCzVD7HxA12*//**在程序asm.s11/11中保存了一些状态后,本程序用来处理硬件陷阱和故障。目前主要用于调试目的,*以后将扩展用来杀死遭损坏的进程<主要是通过发送一个信号,但如果必要也会直接杀死)。*/13#include//字符串头文件。主要定义了一些有关字符串操作的嵌入函数。jLBHrnAILg1415#include//he

4、ad头文件,定义了段描述符的简单结构,和几个选择符常量。xHAQX74J0X16#include//调度程序头文件,定义了任务结构task_struct、初始任务0的数据,LDAYtRyKfE//还有一些有关描述符参数设置和获取的嵌入式汇编函数宏语句。17#include//内核头文件。含有一些内核常用函数的原形定义。Zzz6ZB2Ltk18#include//系统头文件。定义了设置或修改描述符/中断门等的嵌入式汇

5、编宏。dvzfvkwMI119#include//段操作头文件。定义了有关段寄存器操作的嵌入式汇编函数。rqyn14ZNXI20#include//输入/输出头文件。定义硬件端口输入/输出宏汇编语句。EmxvxOtOco21//以下语句定义了三个嵌入式汇编宏语句函数。有关嵌入式汇编的基本语法见列表后或参见附录。//取段seg中地址addr处的一个字节。//用圆括号括住的组合语句<花括号中的语句)可以作为表达式使用,其中最后的__res是其输出值。22#d

6、efineget_seg_byte(seg,addr>({23registerchar__res。24__asm__("push%%fs。mov%%ax,%%fs。movb%%fs:%2,%%al。pop%%fs"SixE2yXPq525:"=a"(__res>:""(seg>,"m"(*(addr>>>。6ewMyirQFL26__res。}>2711/11//取段seg中地址addr处的一个长字<4字节)。28#defineget_seg_long(seg,addr>({29registe

7、runsignedlong__res。30__asm__("push%%fs。mov%%ax,%%fs。movl%%fs:%2,%%eax。pop%%fs"kavU42VRUs31:"=a"(__res>:""(seg>,"m"(*(addr>>>。y6v3ALoS8932__res。}>33//取fs段寄存器的值<选择符)。34#define_fs(>({35registerunsignedshort__res。36__asm__("mov%%fs,%%ax":"=a"(__res>:>。

8、37__res。}>38//以下定义了一些函数原型。39intdo_exit(longcode>。//程序退出处理。(kernel/exit.c,102>M2ub6vSTnP4041voidpage_exception(void>。//页异常。实际是page_fault(mm/page.s,14>0YujCfmUCw42//以下定义了一些中断处理程序原型,代码在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。