1、第二章第二章 操作系统用户界面操作系统用户界面2.1 2.1 简介简介2.2 2.2 作业的基本概念作业的基本概念2.3 2.3 作业的建立作业的建立2.4 2.4 用户接口用户接口2.5 2.5 系统调用系统调用2.6 Linux 2.6 Linux 和和WindowsWindows的系统调用实例的系统调用实例12.1 2.1 简介简介p 操作系统用户界面用户与计算机硬件交互的操作系统用户界面用户与计算机硬件交互的接口接口p 操作系统用户类型:命令使用用户和程序编程接口用户操作系统用户类型:命令使用用户和程序编程接口用户p 命令控制界面操作系统的操作命令界面命令控制界面操作系统的操作命令界面
2、p 程序编程界面操作系统为编程人员提供的接口程序编程界面操作系统为编程人员提供的接口2操作系统为用户提供的接口类型操作系统为用户提供的接口类型操作系统为用户提供两种接口操作系统为用户提供两种接口 命令接口命令接口 普通用户和管理员用户界面普通用户和管理员用户界面 系统调用接口系统调用接口 编程人员用户界面编程人员用户界面341.操作系统提供给程序员的接口是操作系统提供给程序员的接口是()进程进程系统调用系统调用库函数库函数系统调用和库函数系统调用和库函数ABCD提交单选题2分2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念1 1、作业(从用户角度)、作业(从用户角度)(1 1)
3、编程过程)编程过程编程编程输入输入调试调试链接链接编译编译执行执行输出输出目标程序目标程序段段目标目标程序程序52 2、作业与作业步作业与作业步(1 1)作业概念:在一次应用业务处理过程中,从输入开始到)作业概念:在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所作的有关该次业务处理的全部输出结束,用户要求计算机所作的有关该次业务处理的全部工作称为一个工作称为一个作业作业。(2 2)作业步概念:)作业步概念:在一个作业的处理过程中,计算机所作的在一个作业的处理过程中,计算机所作的相对独立的工作。作业由不同顺序的作业步组成。相对独立的工作。作业由不同顺序的作业步组成。2.2 2.2
4、 作业(作业(JOBJOB)的基本概念)的基本概念63 3、作业(从系统角度)作业(从系统角度)(1 1)作业)作业=程序程序+数据(作业体)数据(作业体)+作业说明书(作业控制作业说明书(作业控制语言)语言)(2 2)在批处理系统中,)在批处理系统中,作业作业是抢占内存的基本单位,即以是抢占内存的基本单位,即以作业为单位将程序和数据调入内存。作业为单位将程序和数据调入内存。2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念74 4 作业说明书作业说明书体现用户的控制意图体现用户的控制意图它由作业控制语言它由作业控制语言(JCL)(JCL)编写编写内容组成内容组成 作业基本情况、
5、作业控制、作业资源要求的描述作业基本情况、作业控制、作业资源要求的描述2.2 作业(作业(JOB)的基本概念)的基本概念89作业是由 填空1、填空2 和 填空3 组成的。作答正常使用填空题需3.0以上版本雨课堂填空题3分5 5、作业内容组成、作业内容组成 (1)(1)作业基本情况作业基本情况 用户名、作业名、编程语言、最大处理时间等用户名、作业名、编程语言、最大处理时间等 (2)(2)作业控制描述作业控制描述 作业控制方式、作业步的操作顺序、作业执行出错处理作业控制方式、作业步的操作顺序、作业执行出错处理 (3)(3)作业资源要求描述作业资源要求描述 处理时间、优先级、内存空间、外设类型和数量
6、、库函数或实用程处理时间、优先级、内存空间、外设类型和数量、库函数或实用程序等序等2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念1011用户在一次解题或一个事务处理过程中要求计算机系用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合称为统所做工作的集合称为 填空填空1。作答正常使用填空题需3.0以上版本雨课堂填空题2分2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念6 6、作业控制语言、作业控制语言 用户用于描述批处理作业处理过程控制意图的一种特殊用户用于描述批处理作业处理过程控制意图的一种特殊程序程序 书写作业说明书的语言称为作业控制语言(书写作
7、业说明书的语言称为作业控制语言(JCLJCL)例如:批处理文件或例如:批处理文件或shellshell12用户用户作业录入作业录入提交提交收容收容完成完成运行运行就绪就绪阻塞阻塞等待等待I/OI/O完成完成进程进程作业调度作业调度执行执行作业调度作业调度调度调度7 7 作业的处理过程及状态作业的处理过程及状态2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念13 作业提交:作业提交:作业的输入;作业的输入;作业收容(后备状态)作业收容(后备状态):作业在外存处于等待状态:作业在外存处于等待状态 作业执行:作业执行:先到先到 就绪就绪,经调度,经调度 运行运行,有,有I/OI/O请
8、求请求 等待等待,I/OI/O完成到完成到 就绪就绪 作业完成:作业完成:作业的输出;作业的输出;8 8、作业的处理过程及状态作业的处理过程及状态2.2 2.2 作业(作业(JOBJOB)的基本概念)的基本概念14 2.3 2.3 作业的建立作业的建立1 1、作业控制块(、作业控制块(JCB)JCB)一个作业的全部程序和数据输入到外存且在系统中建立了相一个作业的全部程序和数据输入到外存且在系统中建立了相应的作业控制块应的作业控制块(job control blockjob control blockJCBJCB)(1 1)JCBJCB作用:系统感知作业存在的唯一静态实体作用:系统感知作业存在的
9、唯一静态实体 (2 2)作业建立过程二个部分)作业建立过程二个部分 作业的输入、作业控制块的建立作业的输入、作业控制块的建立152.2.作业的输入作业的输入 概念:将作业的程序、数据和作业说明书从输入设备输入概念:将作业的程序、数据和作业说明书从输入设备输入到外存,并形成有关初始信息。到外存,并形成有关初始信息。2.3 2.3 作业的建立作业的建立162 2 作业输入方式作业输入方式(1 1)联机输入方式联机输入方式:外围设备和主机直接连接,又称预输入:外围设备和主机直接连接,又称预输入方式方式输入设备输入设备I/O适适配配器器CPU外存外存 2.3 2.3 作业的建立作业的建立172 2 作
10、业输入方式作业输入方式(1 1)联机输入方式联机输入方式 单台输入设备和主机连接时,单台输入设备和主机连接时,I/OI/O与作业处理与作业处理不能并不能并行;行;降低了降低了CPUCPU效率效率 。多台外设同时联机输入多台外设同时联机输入SPOOLINGSPOOLING系统系统 2.3 2.3 作业的建立作业的建立182 2、作业输入方式作业输入方式(2 2)脱机输入方式脱机输入方式 利用低档个人计算机作为外围处理机进行输入处理。利用低档个人计算机作为外围处理机进行输入处理。在个人机上,用户通过联机方式将作业输入到后援存储器,在个人机上,用户通过联机方式将作业输入到后援存储器,然后将装有输入数
11、据的后援存储器拿到主机的高速外设上与主然后将装有输入数据的后援存储器拿到主机的高速外设上与主机连接。机连接。2.3 2.3 作业的建立作业的建立192 2 作业输入方式作业输入方式(2 2)脱机输入方式脱机输入方式 特点:特点:解决了主机解决了主机CPUCPU的浪费,以牺牲个人机为代价的浪费,以牺牲个人机为代价 灵活性差,需人工干预介质传送,不安全灵活性差,需人工干预介质传送,不安全 2.3 2.3 作业的建立作业的建立20第二章 用户接口与作业管理卡片:程序、数据、作业说明书卡片:程序、数据、作业说明书IBM1401IBM7094磁带机磁带机卡片阅读机卡片阅读机输出磁带输出磁带卫星机人工传输
12、磁带机磁带机输入设备输入设备磁盘磁盘主机人工完成人工完成2122何谓脱机I/O和联机I/O?作答正常使用主观题需2.0以上版本雨课堂主观题10分2 2 作业输入方式作业输入方式(3 3)直接耦合方式)直接耦合方式 将主机和外围低档机通过一个公用的大容量外存直接耦合将主机和外围低档机通过一个公用的大容量外存直接耦合主机主机公用存储器公用存储器低档个人机低档个人机I/O设备设备低档个人机低档个人机I/O设备设备 2.3 2.3作业的建立作业的建立232 2 作业输入方式作业输入方式(3 3)直接耦合方式直接耦合方式 特点特点 保留了脱机方式快速的优点,克服了其人工干预的缺点保留了脱机方式快速的优点
13、,克服了其人工干预的缺点 需要大容量公用存储器和多台低档机,成本高需要大容量公用存储器和多台低档机,成本高 2.3 2.3 作业的建立作业的建立242 2 作业输入方式作业输入方式 (4 4)网络输入方式网络输入方式 当用户需要在计算机网络中某一台主机上输入的信息传送到当用户需要在计算机网络中某一台主机上输入的信息传送到同一网络中的另一台主机上进行操作或执行时,即构成网络输同一网络中的另一台主机上进行操作或执行时,即构成网络输入方式。入方式。2.3 2.3 作业的建立作业的建立252 2、作业输入方式作业输入方式(5 5)SPOOLINGSPOOLING系统(重点)系统(重点)假脱机假脱机(S
14、imultaneously Peripheral Operation On Line同时同时外围设备联机操作外围设备联机操作)1 1)系统把作业处理的全过程划分为相对独立的三个部分)系统把作业处理的全过程划分为相对独立的三个部分-输输入流入流、处理流处理流和和输出流输出流2 2)组成模块:输入程序模块、输出程序模块、作业调度程)组成模块:输入程序模块、输出程序模块、作业调度程序序 2.3 2.3作业的建立作业的建立263.外围设备类型外围设备类型(1)虚拟设备)虚拟设备如:如:SPOOLING系统系统(2)独占型设备)独占型设备 数量有限,成为系统中的数量有限,成为系统中的“瓶颈瓶颈”资源,使
15、进程处于阻塞资源,使进程处于阻塞状态;设备利用率比较低状态;设备利用率比较低 2.3 2.3 作业的建立作业的建立274 4、SPOOLINGSPOOLING系统系统(1 1)概念)概念 通过通过共享型设备来模拟独占型设备的动作,使独占型设备共享型设备来模拟独占型设备的动作,使独占型设备成为共享型设备成为共享型设备,提高设备的利用率和系统的效率,这种,提高设备的利用率和系统的效率,这种设备被称为虚拟设备。设备被称为虚拟设备。2.3 2.3 作业的建立作业的建立284 4、SPOOLINGSPOOLING系统系统(2 2)结构图)结构图输入装置输入装置输入装置输入装置通通道道通通道道外外 存存输
16、入井输入井 输出井输出井输出装置输出装置输出装置输出装置通通 道道主机系统主机系统输入管理输入管理模块模块输出管理输出管理模块模块 2.3 2.3 作业的建立作业的建立29在系统在系统输入模块输入模块收到作业输入请求信号后,输入管理模收到作业输入请求信号后,输入管理模块中的读过程将信息从输入装置读入缓冲区块中的读过程将信息从输入装置读入缓冲区;当缓冲区满时,由写过程将信息写到当缓冲区满时,由写过程将信息写到外存输入井外存输入井中。读中。读过程和写过程反复循环,直到一个作业输入完毕。过程和写过程反复循环,直到一个作业输入完毕。4 4、SPOOLINGSPOOLING(3 3)工作过程)工作过程
17、2.3 2.3 作业的建立作业的建立30 当读过程读到一个硬件结束标志之后,系统再次驱动写过当读过程读到一个硬件结束标志之后,系统再次驱动写过程把最后一批信息写入外存,并调用中断处理程序结束该程把最后一批信息写入外存,并调用中断处理程序结束该次输入。次输入。上述上述3 3步为步为作业的输入过程。作业的输入过程。2.3 2.3 作业的建立作业的建立31 4 4、SPOOLINGSPOOLING(3 3)工作过程)工作过程 然后,系统为该作业建立然后,系统为该作业建立作业控制块作业控制块JCBJCB,从而使输入井,从而使输入井中的作业进入作业等待队列,等待作业调用程序选中后进中的作业进入作业等待队
18、列,等待作业调用程序选中后进入内存。入内存。2.3 2.3 作业的建立作业的建立32 4 4、SPOOLINGSPOOLING(3 3)工作过程)工作过程4.SPOOLING4.SPOOLING系统系统(4 4)作业和进程状态转换)作业和进程状态转换数据数据数据数据源程序源程序作业作业说明书说明书输入设备输入设备输输入入井井输出设备输出设备输输出出井井运行运行就绪就绪等待等待进程进程调度调度输输入入程程序序输输出出程程序序在高速共享设备在高速共享设备上上作作业业调调度度在高速共享设在高速共享设备上备上作业控制进程作业控制进程进入状态进入状态退出状态退出状态后备状态后备状态运行状态运行状态 2.
19、3 2.3 作业的建立作业的建立334 SPOOLING4 SPOOLING系统系统(5 5)工作原理)工作原理 作业执行前用慢速设备将作业预先输入到后援存储器(如磁盘、作业执行前用慢速设备将作业预先输入到后援存储器(如磁盘、磁鼓,称为输入井)中,称为磁鼓,称为输入井)中,称为预输入;预输入;作业运行后,使用数据时,从输入井中取出;作业运行后,使用数据时,从输入井中取出;作业执行不必直接启动外设输出数据,只需将这些数据写入作业执行不必直接启动外设输出数据,只需将这些数据写入输输出井出井中;中;2.3 2.3 作业的建立作业的建立344.SPOOLING4.SPOOLING系统系统(5 5)工作
20、原理)工作原理 作业全部运行完毕,再由外设输出全部数据和信息,称为作业全部运行完毕,再由外设输出全部数据和信息,称为缓缓输出输出 实现了对作业输入、组织调度和输出的统一管理实现了对作业输入、组织调度和输出的统一管理 使外设在使外设在CPUCPU直接控制下,与直接控制下,与CPUCPU并行工作(假脱机)并行工作(假脱机)2.3 2.3 作业的建立作业的建立35假设系统中打印机采用了虚拟设备技术(即假设系统中打印机采用了虚拟设备技术(即SpoolingSpooling技术),当某进程要技术),当某进程要求打印输出时,输出求打印输出时,输出SpoolingSpooling并不是将某台打印机分配给该进
21、程,并不是将某台打印机分配给该进程,而是在而是在某共享设备(磁盘)上的输出井,为其分配一块存储区某共享设备(磁盘)上的输出井,为其分配一块存储区,同时为该进程,同时为该进程的输出数据建立一个文件,该进程的输出数据实际上并未从打印机上输的输出数据建立一个文件,该进程的输出数据实际上并未从打印机上输出,只是以文件形式输出,并输出存放在输出井中。出,只是以文件形式输出,并输出存放在输出井中。4 4、SPOOLINGSPOOLING系统系统(6 6)SpoolingSpooling技术举例技术举例 2.3 2.3 作业的建立作业的建立36这个输出文件实际相当于虚拟的打印机。这些输出井中的文件形成了这个
22、输出文件实际相当于虚拟的打印机。这些输出井中的文件形成了一个输出队列,然后调度输出。一个输出队列,然后调度输出。1)1)用户进程并未真正分到打印机,用户进程并未真正分到打印机,2)2)用户进程被分配的只是共享设备中的一个存储区用户进程被分配的只是共享设备中的一个存储区3)3)在在SPOOLINGSPOOLING系统中,为了弥补独享设备与共享设备间数据传输系统中,为了弥补独享设备与共享设备间数据传输速度的差异,使用缓冲区技术。速度的差异,使用缓冲区技术。2.3 2.3作业的建立作业的建立37 3、SPOOLING系统(6 6)SpoolingSpooling技术举例技术举例能够将独占设备虚拟为共
23、享设备能够将独占设备虚拟为共享设备4 4、SPOOLINGSPOOLING系统系统(7 7)SpoolingSpooling作用作用 2.3 2.3 作业的建立作业的建立3839下列关于SPOOLing技术的叙述中,哪一个是错误的?批处理系统常采用SPOOLing技术实现ASPOOLing技术是一种用磁盘空间换取时间的技术B作业的输入输出工作通常由SPOOLing系统完成(错选)CSPOOLing是一种独占设备技术D提交单选题1分40SPOOLING系统结构图以及作用。作答正常使用主观题需2.0以上版本雨课堂主观题10分5 5、JCBJCB的建立的建立JCBJCB是在作业建立时系统根据作业说明
24、书建立的是在作业建立时系统根据作业说明书建立的;作业的建立过程作业的建立过程 作业的输入和作业作业的输入和作业JCBJCB的建立的建立 JCBJCB是系统对作业进行是系统对作业进行管理管理的必要信息。的必要信息。2.3 2.3 作业的建立作业的建立41JCBJCB内容如下:内容如下:p 作业名作业名p 估计执行时间估计执行时间p 优先数(用于调度)优先数(用于调度)p 作业说明书文件名作业说明书文件名p 程序类型(需调用的系统程序)程序类型(需调用的系统程序)p 资源要求:(静态,或中间可以随作业步变化)资源要求:(静态,或中间可以随作业步变化)p 作业状态:提交、后备、执行、完成作业状态:提
25、交、后备、执行、完成 2.3 2.3 作业的建立作业的建立422.4 2.4 用户接口用户接口1 1、程序级接口(系统调用)、程序级接口(系统调用)系统为用户在程序一级提供有关服务而设置,由一组系统为用户在程序一级提供有关服务而设置,由一组系统调用系统调用命令命令组成组成 负责管理和控制运行的程序负责管理和控制运行的程序 在这些程序与系统控制的资源和提供的服务间实现交互作用在这些程序与系统控制的资源和提供的服务间实现交互作用 用汇编语言:在程序中直接用系统调用命令用汇编语言:在程序中直接用系统调用命令 用高级语言:可在编程时使用过程调用语句用高级语言:可在编程时使用过程调用语句432 2、命令
26、接口、命令接口 根据是否直接连接主机分为根据是否直接连接主机分为(1)(1)脱机方式:用户通过脱机方式:用户通过JCLJCL编写作业控制程序编写作业控制程序提交给系统,提交给系统,系统执行过程中用户无法干预;系统执行过程中用户无法干预;(2)(2)联机方式:系统为用户提供操作命令,用户通过命令与系联机方式:系统为用户提供操作命令,用户通过命令与系统对话,控制程序执行和管理计算机系统。统对话,控制程序执行和管理计算机系统。2.4 2.4 用户接口用户接口4445下列选项中,操作系统提供的给应用程序的接口是()。系统调用A中断B库函数C原语D提交单选题1分46用户在程序中试图读某文件的第用户在程序
27、中试图读某文件的第100个逻辑块,使用个逻辑块,使用操作系统的(操作系统的()接口)接口系统调用系统调用图形用户接口图形用户接口原语原语键盘命令键盘命令ABCD提交单选题2分2 2、操作级接口、操作级接口 联机控制方式的命令种类联机控制方式的命令种类 环境设置:改变终端用户所在位置、执行路径等;环境设置:改变终端用户所在位置、执行路径等;执行权限管理:控制用户访问系统和操作文件的权限;执行权限管理:控制用户访问系统和操作文件的权限;系统管理:系统维护、开机关机、增加或减少终端用户、系统管理:系统维护、开机关机、增加或减少终端用户、计时收费等;计时收费等;2.4 2.4 用户接口用户接口472
28、2、操作级接口、操作级接口 联机控制方式的命令种类联机控制方式的命令种类:文件管理:管理和控制终端用户的文件;文件管理:管理和控制终端用户的文件;编辑、编译、链接装配和执行编辑命令;编辑、编译、链接装配和执行编辑命令;通信:主机通信:主机远程终端、主机远程终端、主机主机主机 资源要求:用户向系统申请资源。资源要求:用户向系统申请资源。2.4 2.4 用户接口用户接口482 2、操作级接口、操作级接口 脱机与联机控制方式比较脱机与联机控制方式比较(1)(1)联机方式:用户直接参与控制作业执行联机方式:用户直接参与控制作业执行(2)(2)脱机方式:批处理(传统的脱机方式、命令文件)脱机方式:批处理
29、(传统的脱机方式、命令文件)2.4 2.4 用户接口用户接口492 2、命令级接口、命令级接口 命令行接口与图形用户接口对比命令行接口与图形用户接口对比 在命令行方式下,用户与操作系统的交互要求用户在命令行方式下,用户与操作系统的交互要求用户记忆命令格式记忆命令格式。在图形用户接口方式下,用户可利用鼠标对屏幕上的在图形用户接口方式下,用户可利用鼠标对屏幕上的图标进行操图标进行操作作,完成与操作系统的交互,从而减少记忆内容,方便用户使用。,完成与操作系统的交互,从而减少记忆内容,方便用户使用。它的技术基础是它的技术基础是高分辩显示器和鼠标高分辩显示器和鼠标。2.4 2.4 用户接口用户接口505
30、1用户可以通过(用户可以通过()两种方式来使用计算机。)两种方式来使用计算机。命令方式和函数方式命令方式和函数方式命令方式和系统调用方式命令方式和系统调用方式命令方式和文件管理方式命令方式和文件管理方式设备管理方式和系统调用方式设备管理方式和系统调用方式ABCD提交单选题2分图形用户接口图形用户接口(Linux)2.4 2.4 用户接口用户接口52(文本命令界面接口文本命令界面接口)(Linux文字)文字)2.4 2.4 用户接口用户接口53图形用户接口(资源管理器)图形用户接口(资源管理器)(Linux图形)图形)2.4 2.4 用户接口用户接口54Windows图形用户接口(资源管理器)图
31、形用户接口(资源管理器)图标图标2.4 2.4 用户接口用户接口552.4 2.4 用户接口用户接口56Windows图形用户接口(资源管理器)图形用户接口(资源管理器)图标图标对话框对话框2.4 2.4 用户接口用户接口57Windows图形用户接口(资源管理器)图形用户接口(资源管理器)窗口窗口菜单菜单2.4 2.4 用户接口用户接口58Windows图形用户接口(资源管理器)图形用户接口(资源管理器)鼠标菜单鼠标菜单2.4 2.4 用户接口用户接口59Windows图形用户接口(资源管理器)图形用户接口(资源管理器)60命令接口和图形用户接口分别有什么优缺点?命令接口和图形用户接口分别有
32、什么优缺点?作答正常使用主观题需2.0以上版本雨课堂主观题10分2.5 2.5 系统调用系统调用1 1、系统调用的功能、系统调用的功能 存储管理:存储管理:内存的申请和释放内存的申请和释放 系统管理:系统管理:设置和读取时间、读取用户和主机标识等设置和读取时间、读取用户和主机标识等 GtimeGtime 读取时间读取时间 Stime设置时间设置时间 Getuid读取用户标识读取用户标识6162所谓系统调用,就是用户在程序中调用所谓系统调用,就是用户在程序中调用 填空填空1 所提供的所提供的一些子功能。一些子功能。作答正常使用填空题需3.0以上版本雨课堂填空题1分1 1、系统调用的功能、系统调用
33、的功能系统调用接口可使用系统调用接口可使用系统命令系统命令,即在程序中调用,即在程序中调用命令接口命令接口来完成系统调用。来完成系统调用。C语言里的语言里的system()函数可调用函数可调用shell来完成命令来完成命令 如如 UNIX系统:系统:system(cp-r doc/tmp)2.5 2.5 系统调用系统调用63系统调用举例系统调用举例MOVE DX,OFFSETBUFFMOVE CX,BYTEMOVE BX,HANDLEMOVE AH,3FHINT 21H2.5 2.5 系统调用系统调用64系统调用的实现是由硬件提供的系统调用的实现是由硬件提供的(机器指令),但其(机器指令),但
34、其所调用所调用的功能是操作系统提供的。的功能是操作系统提供的。每种机器的机器指令集中都有一每种机器的机器指令集中都有一条系统调用指令。条系统调用指令。652 2、系统调用的实现过程、系统调用的实现过程.系统调用系统调用.用户程序用户程序陷入处理机构陷入处理机构1)1)保护处理保护处理机现场机现场2)2)取系统调取系统调用功能号并用功能号并寻找子程序寻找子程序入口入口3)3)恢复处理恢复处理机现场并返机现场并返回回入口地址表入口地址表A0A0A2A2AiAi.AnAn系统子程序系统子程序sub 0A0sub 1A1sub nsub nAnsub iAi.陷入指令陷入指令663 3、系统调用实现过
35、程图、系统调用实现过程图 引起原因不同引起原因不同陷入通常由处理机正在执行的现行指令引起,陷入通常由处理机正在执行的现行指令引起,中断是由与现行指令无关的中断源引起的中断是由与现行指令无关的中断源引起的 服务对象不同服务对象不同陷入处理程序提供的服务为当前进程所用,陷入处理程序提供的服务为当前进程所用,中断处理程序提供的服务则不是为当前进程的中断处理程序提供的服务则不是为当前进程的4 4、中断和系统调用(陷入、中断和系统调用(陷入 )的区别)的区别2.5 2.5 系统调用系统调用6768简述系统调用的实现过程。作答正常使用主观题需2.0以上版本雨课堂主观题10分 响应时机不同响应时机不同CPU
36、CPU在执行完一条指令之后,下一条指令开始之前响应中断在执行完一条指令之后,下一条指令开始之前响应中断在一条指令执行中也可以响应陷入。如非法指令执行时,在一条指令执行中也可以响应陷入。如非法指令执行时,尽管被执行的非法指令不能执行结束,但尽管被执行的非法指令不能执行结束,但CPUCPU仍可对其进行仍可对其进行处理。处理。3、中断和系统调用(陷入、中断和系统调用(陷入 trap)的区别)的区别2.5 2.5 系统调用系统调用694 4、系统调用与函数(过程)调用、系统调用与函数(过程)调用 相同点相同点 改变指令流程改变指令流程 重复执行和公用重复执行和公用 改变指令流程后需要返回原处改变指令流
37、程后需要返回原处2.5 2.5 系统调用系统调用704 4、系统调用与函数(过程)调用、系统调用与函数(过程)调用 不同点不同点 系统调用是系统调用是动态调用动态调用,而普通过程调用方式是,而普通过程调用方式是静态调用静态调用 执行状态不同执行状态不同 进入方式不同进入方式不同2.5 2.5 系统调用系统调用71(1)系统调用是动态调用,而函数调用方式是静态调用;)系统调用是动态调用,而函数调用方式是静态调用;系统调用是动态调用,系统调用是动态调用,程序中不包含被调用代码程序中不包含被调用代码,好处:,好处:1)用用户户程序长度程序长度缩短缩短;2)当当OS升级升级时,调用方不必改变时,调用方
38、不必改变系统调用指令中不包含调用地址,只包含系统调用指令中不包含调用地址,只包含功能号功能号,是按功能,是按功能号(在可执行目标程序中)调用的。号(在可执行目标程序中)调用的。注意:函数调用如采用动态链接库方式,也属于动态调用。注意:函数调用如采用动态链接库方式,也属于动态调用。2.5 2.5 系统调用系统调用4、系统调用与函数调用异同、系统调用与函数调用异同72(2)执行状态不同)执行状态不同 调用和返回经历了调用和返回经历了不同的系统状态不同的系统状态。通常核心和应用程序的。通常核心和应用程序的代码分别运行在代码分别运行在CPU的不同的状态下(系统态的不同的状态下(系统态/核心态核心态/管
39、态和管态和用户态用户态/目态),所用目态),所用地址空间也不同地址空间也不同核心的代码可以直接核心的代码可以直接访问应用进程的地址空间,反之不然。访问应用进程的地址空间,反之不然。4 4、系统调用与函数调用异同、系统调用与函数调用异同2.5 2.5 系统调用系统调用7374当当CPU执行操作系统代码时,称处理机处于(执行操作系统代码时,称处理机处于()。)。执行态执行态目态目态管态管态就绪态就绪态ABCD提交单选题2分75下列选项中,在用户态执行的是()。命令解释程序A缺页处理程序B进程调度程序C时钟中断处理程序D提交单选题1分进入方式不同进入方式不同 利用利用intint或或traptrap
40、指令进行系统调用;利用指令进行系统调用;利用callcall或或jmpjmp指令进入指令进入普通的函数(过程)调用;普通的函数(过程)调用;4、系统调用与函数调用异同、系统调用与函数调用异同2.5 2.5 系统调用系统调用76运行环境与系统开销不同运行环境与系统开销不同 函数调用属于过程调用,在用于空间运行,开销较少,一直在用户上函数调用属于过程调用,在用于空间运行,开销较少,一直在用户上下文环境执行;下文环境执行;系统调用在内核空间运行,需要切换到内核上下文环境,等调用完毕再系统调用在内核空间运行,需要切换到内核上下文环境,等调用完毕再切换到用户上下文环境,系统开销大。切换到用户上下文环境,
41、系统开销大。4、系统调用与函数调用异同、系统调用与函数调用异同2.5 2.5 系统调用系统调用77 与进程调度的关系不同与进程调度的关系不同 采用抢先式调度的系统,在系统调用返回时,要进行重新调采用抢先式调度的系统,在系统调用返回时,要进行重新调度的检查度的检查是否有更高优先级的任务就绪(创建或唤醒)。是否有更高优先级的任务就绪(创建或唤醒)。2.5 2.5 系统调用系统调用7879简述系统调用与函数调用简述系统调用与函数调用的的相同和不同点。相同和不同点。作答正常使用主观题需2.0以上版本雨课堂主观题10分2.6 Linux和和Windows的系统调用的系统调用1 1、LinuxLinux系
42、统调用举例文件复制系统调用举例文件复制copycopy编程人员可以使用不同的系统调用实现所需要的功能。编程人员可以使用不同的系统调用实现所需要的功能。80812 2、WindowsWindows系统调用系统调用 系统调用提供的编程界面系统调用提供的编程界面APIAPI;系统编程接口提供的系统编程接口提供的APIAPI达到几千个,主要分为达到几千个,主要分为五类五类 ,根据功能将其归并到不同的,根据功能将其归并到不同的DLLDLL中;中;WindowsWindows系统由多个系统由多个DLLDLL完成所有的功能。完成所有的功能。822.6 Linux和和Windows的系统调用的系统调用系统编程
43、接口调用实例创建文件系统编程接口调用实例创建文件 向创建文件写入字符,从该文件读取字符并通过向创建文件写入字符,从该文件读取字符并通过MessageBoxMessageBox函数输出。函数输出。832 2、WindowsWindows系统调用系统调用2.6 Linux和和Windows的系统调用的系统调用8485第二章第二章 小结小结1.1.操作系统的用户界面用户与计算机的接口操作系统的用户界面用户与计算机的接口2.2.操作系统用户界面类型命令接口和编程接口操作系统用户界面类型命令接口和编程接口3.3.操作系统用户界面从早期字符型转化为多媒体图形操作系统用户界面从早期字符型转化为多媒体图形化界面化界面4.4.系统调用是操作系统提供给编程用户唯一接口系统调用是操作系统提供给编程用户唯一接口865.作业组织和控制:脱机、联机(命令行)作业组织和控制:脱机、联机(命令行)6.系统调用:与普通过程调用的区别、与高级语言函数库的系统调用:与普通过程调用的区别、与高级语言函数库的区别、实现过程区别、实现过程7.图形用户接口图形用户接口(GUI):概述、:概述、X Window、MS Windows、事件驱动模式事件驱动模式(自学)自学)87第二章第二章 小结小结
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。