操作系统设计与实作报告【免费】

操作系统设计与实作报告【免费】

ID:41071099

大小:222.00 KB

页数:10页

时间:2019-08-15

操作系统设计与实作报告【免费】_第1页
操作系统设计与实作报告【免费】_第2页
操作系统设计与实作报告【免费】_第3页
操作系统设计与实作报告【免费】_第4页
操作系统设计与实作报告【免费】_第5页
资源描述:

《操作系统设计与实作报告【免费】》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、操作系统设计与实作报告主题:Signal成员:吴正敏陈信瑜张简光哲郭闵嘉李俊岳卢颖志林胜尉一、背景UNIX中有几种历史悠久的处理程序间通讯机制(IPC、Inter-processcommunication),Signal是其中之一。系统核心利用Signal来通知处理程序某些事件发生了。使用者通常利用Signal来放弃执行某个处理程序或将交谈式的程序切换到某个状态。所以说Signal是softwareinterrupts。Signal很早就有了,像早期的Unix版本,不过那时有提供的Signal并不可靠(像Version7),直到4.3

2、BSD和SVR3做了一些改变,加入了reliablesignals。可惜的是两者彼此并不相容。但幸运的,POSIX.1有提供了标准化的signal函式。Signal的编号在不同的UNIX版本有不同的设定,表一是Linux的编号方式,大致是合乎POSIX的标准。表一:Signal表列SingalnameNumberFunctionSIGHUP1hangupSIGINT2interruptSIGQUIT3quitSIGILL4illegalinstructionSIGTRAP5tracetrapSIGABRT6abort(generate

3、dbyabort(3)routine)SIGIOT6Input/OutputTrap(obsolete)SIGBUS7buserrorSIGFPE8arithmeticexceptionSIGKILL9kill(cannotbecaught,blocked,orignored)SIGUSR110user-definedsignal1SIGSEGV11segmentationviolationSIGUSR212user-definedsignal2SIGPIPE13writeonapipeorothersocketwithnooneto

4、readitSIGALRM14alarmclockSIGTERM15softwareterminationsignalSIGTKFLT16SIGCHLD17childstatushaschangedSIGCONT18continueafterstopSIGSTOP19stop(cannotbecaught,blocked,orignored)SIGTSTP20stopsignalgeneratedfromkeyboardSIGTTIN21backgroundreadattemptedfromcontrolterminalSIGTTOU

5、22backgroundwriteattemptedtocontrolterminalSIGURG23urgentconditionpresentonsocketSIGXCPU24cputimelimitexceeded(seegetrlimit(2))SIGXFSZ25filesizelimitexceeded(seegetrlimit(2))SIGVTALRM26virtualtimealarm(seegetitimer(2))SIGPROF27profilingtimeralarm(seegetitimer(2))SIGWINC

6、H28windowchanged(seetermio(4)andwin(4S))SIGIO,SIGPOLL29I/Oispossibleonadescriptor(seefcntl(2V))SIGPWR30PowerFailure(forUPS)SIGUNUSED31一、数据结构structtask_struct{/*thesearehardcoded-don'ttouch*/volatilelongstate;/*-1unrunnable,0runnable,>0stopped*/longcounter;longpriority;u

7、nsignedlongsignal;unsignedlongblocked;/*bitmapofmaskedsignals*/unsignedlongflags;/*perprocessflags,definedbelow*/interrno;longdebugreg[8];/*Hardwaredebuggingregisters*/structexec_domain*exec_domain;/*variousfields*/structlinux_binfmt*binfmt;structtask_struct*next_task,*

8、prev_task;structtask_struct*next_run,*prev_run;unsignedlongsaved_kernel_stack;unsignedlongkernel_stack_page;in

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

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

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