电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

系统调用:系统调用的实现


发布日期:2018/6/29
 

系统调用的实现

中断和陷入硬件机构

() 什么是中断和陷入

中断是指CPU对系统发生某事件时的这样一种响应CPU暂停正在执行的程序在保留现场后自动地转去执行该事件的中断处理程序执行完后再返回到原程序的断点处继续执行

() 中断和陷入向量

系统调用号和参数的设置

() 直接将参数送入相应的寄存器中

() 参数表方式

系统调用的处理步骤

首先将处理机状态由用户态转为系统态之后由硬件和内核程序进行系统调用的一般性处理即首先保护被中断进程的CPU环境将处理机状态字PSW程序计数器PC系统调用号用户栈指针以及通用寄存器内容等压入堆栈然后将用户定义的参数传送到指定的地方保存起来

其次是分析系统调用类型转入相应的系统调用处理子程序

最后在系统调用处理子程序执行完后应恢复被中断的或设置新进程的CPU现场然后返回被中断进程或新进程 继续往下执行

系统调用处理子程序的处理过程

进入Creat的处理子程序后核心将根据用户给定的文件路径名Path 利用目录检索过程去查找指定文件的目录项查找目录的方式可以用顺序查找法也可用Hash查找法如果在文件目录中找到了指定文件的目录项表示用户要利用一个已有文件来建立一个新文件但如果在该已有(存)文件的属性中有不允许写属性或者创建者不具有对该文件进行修改的权限使认为是出错而做出错处理若不存在访问权限问题便将已存文件的数据盘块释放掉准备写入新的数据文件如未找到指名文件则表示要创建一个新文件核心便从其目录文件中找出一个空目录项并初始化该目录项包括填写文件名文件属性文件建立日期等然后将新建文件打开

——返回教材目录

了解更多计算机相关基础课程视频

上一篇:sleep与wakeup同步机制

下一篇:2013年4月自考操作系统试题[4]