操作系统原理PPT电子课件教案-第三章 用户界面.ppt_第1页
操作系统原理PPT电子课件教案-第三章 用户界面.ppt_第2页
操作系统原理PPT电子课件教案-第三章 用户界面.ppt_第3页
操作系统原理PPT电子课件教案-第三章 用户界面.ppt_第4页
操作系统原理PPT电子课件教案-第三章 用户界面.ppt_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章 用户界面,(一) 用户工作环境 (二) 操作系统的用户界面 (三) 系统功能调用,2/51,(一) 用户工作环境,系统生成 系统生成是指在一台裸机上(或者安装新的操作系统)安装操作系统的过程。 一般情况下,系统生成的工作是由系统程序员来完成的,在系统生成的过程中涉及到机器的硬件配置和操作系统核心参数的设置。还涉及软件系统的版权的问题。,3/51,(一) 用户工作环境(续),系统初启 对于大、中、小型计算机来说,系统启动的工作是由系统程序员(或系统管理员来完成的),对于微机来说,是由用户自己完成。 pc初起过程:rom bios自检 运行装入系统盘中的主引导块 装入活动os引导块 装入os os初始化 用户界面,4/51,dos启动,引导程序 io.sys(i/o初始化) dos.sys(文件系统,简单内存初始化) command.com(简单任务管理) c:,5/51,unix系统初启,1、unix操作系统执行代码装入内存; 2、存储空间及其管理机构初始化; 3、与设备有关的初始化; 4、与文件系统有关的初始化; 5、创建0和1进程; 6、1进程创建各终端进程; 7、终端进程运行shell; 8、各用户终端上出现 login:,6/51,(一) 用户工作环境(续),作业与作业步 1. 作业 计算机系统按指定步骤对初始数据进行处理并得到计算结果的加工工作。 2. 作业步 加工工作中的一个步骤称为作业步。,7/51,一、作业与作业步(续),3. 作业处理步骤 (1) 编辑 建立一个新文件,或对已有的文件中的错误进行修改。 (2) 编译 将源程序翻译成浮动的目标代码。 (3) 连接 主程序和其他所需要的子程序和例行程序连接装配在一起,使之成为一个可执行的、完整的主存映像文件。 (4) 运行 将主存映像文件调入主存,并启动运行,最后得出计算结果。,8/51,一、作业与作业步(续),4. 作业步之间的关系 user.c user.obj user.exe 编辑 编译 连接 运行 第一个 第二个 第三个 第四个 作业步 作业步 作业步 作业步 每个作业步运行的结果产生下一个作业步所需要的文件; 一个作业步能否正确地执行,依赖于前一个作业步是否成功地完成。,9/51,(二)操作系统的用户界面,10/51,创建程序 执行程序 数据i/o 信息存取 通信服务 错误检测和处理 还具有另外一些功能:资源分配,统计, 保护。,操作系统提供的基本服务,11/51,(二)操作系统的用户界面(续),一、 操作系统用户界面的概念 1. 什么是操作系统的用户界面 操作系统的用户界面 (或称接口) 是操作系统提供给用户与计算机打交道的外部机制。用户能够借助这种机制和系统提供的手段来控制用户所在的系统。,12/51,一、 操作系统用户界面的概念(续),2. 操作系统提供的用户界面 (1) 操作界面(命令接口) 用户使用这个操作界面来组织工作流程和控制程序的运行 (2) 系统功能服务界面(程序接口) 用户程序在其运行过程中,使用系统功能调用来请求操作系统的服务,13/51,一、 操作系统用户界面的概念(续),3. 操作界面的分类与发展 作业控制语言 键盘命令 图形化用户界面,14/51,操作系统提供的用户界面的例子,ibm pc dos 键盘命令 系统功能调用 windows 98 图形用户界面 系统功能调用 unix系统(linux) 键盘命令/图形用户界面 系统功能调用,15/51,二、 操作命令,1. 操作命令与操作系统类型的关系 作业控制语言 批处理操作系统 键盘命令 分时操作系统 个人计算机操作系统 图形用户界面 分时操作系统 个人计算机操作系统,16/51,2. 作业控制语言,脱机方式下操作系统提供作业控制语言(jcl)。 (1) 什么是作业控制语言 是一种命令语言,包括了对作业处理的命令和资源请求命令。 (2) 批处理系统中作业的组织 作业申请:作业名、需用cpu时间,最迟完成时间、资源请求(主存、外部)等。 操作说明书:编辑命令、编译命令、连接命令、运行命令等。 程序与数据,17/51,18/51,/ harold job,wilson,msglevel=(2,0),prty=6,class=b / comp exec pgm=ieyfort / sysprint dd sysout=a / sysin dd* . . /* / go exec pgm=fortlink / sysprint dd sysout=a / ftotf001 dd unit=syscp / go sysin dd* . . /* /,ibm jcl的一个例子,19/51,3. 键盘命令,系统为联机用户(交互作业的用户)提供键盘命令。 (1) 什么是键盘命令 是操作系统为联机用户提供的一种操作命令,用户通过这组命令直接控制和干预程序的运行 。 (2) 键盘命令的功能 分时操作系统 用于注册、通信、注销的各类命令。 个人计算机操作系统 用于通信的各类命令。,20/51,dos系统键盘命令,文件管理 (copy、comp、type、del、ren) 磁盘管理 (format、chkdsk、diskcopy、diskcomp) 目录管理 (dir、cd、md、rd、tree) 日期、时间、系统设置(date、time、ver、vol) 应用程序 (masm、link、debug),21/51,ms-dos操作系统的批文件,testbat是查找某文件是否存在的批文件: echo off if exist %1 goto lab1 echo %1 not found! goto lab2 :lab1 echo %1 is found! :lab2 用户键入命令:test wpsexe 执行批文件,若找到 文 件 显 示 wpsexe is found! ;否 则 显 示 wps.exe not found!,22/51,三、图形用户界面,图形化用户界面是良好的用户交互界面,它将菜单驱动、图符驱动、面向对象技术等集成在一起,形成一个图文并茂的视窗操作环境。,23/51,三、图形用户界面(续),1. 菜单驱动方式 是面向屏幕的交互方式,它将键盘命令以屏幕方式来体现。 命令和系统能完成的操作,用菜单分类分窗口地在屏幕上列出; 用户像点菜一样选择命令或某种操作,以控制系统去完成指定的工作。 菜单系统的类型有多种,如下拉式菜单,上推式菜单和随机弹出式菜单。,24/51,三、图形用户界面(续),2. 图符驱动方式 是一种面向屏幕的图形菜单选择方式。 图符(icon)也称图标,是一个小小的图符符号。它代表操作系统中的命令、系统服务、操作功能、各种资源。 当需要启动系统命令、请求系统资源或操作功能时,可以选择代表它的图符,并借助标记输入设备(鼠标器),采用鼠标器的点击和拖拽功能,完成命令和操作选择及执行。,25/51,三、图形用户界面(续),3. 图形化的用户界面的特点 所有程序以统一的窗口形式出现 提供统一的菜单格式 系统资源、系统命令、操作功能以图标表示 统一的操作方法 microsoft公司的windows 98就是这种图形化用户界面的代表。,26/51,四、系统调用,1. 操作系统如何为用户程序提供服务 例如:应用程序如何使用屏幕显示字符串、读/写文件、使用打印机、申请内存?,27/51,四、系统调用(续),操作系统为用户提供系统调用也出于安全和效率考虑,使得用户态程序不能自由地访问内核关键数据结构或直接访问硬件资源。 每个操作系统都提供几百个系统调用,包括:外存文件与目录的读写,各种i/o设备的使用,在程序中启动另一个程序,查询和统计系统资源使用情况等等。,28/51,四、系统调用(续),2. 什么是系统调用 系统调用是用户在程序一级请求操作系统服务的一种手段,它不是一条简单的硬指令,而是带有一定功能号的“访管指令”。它的功能并非由硬件直接提供,而是由操作系统中的一段程序完成的,即由软件方法实现的。,29/51,2. 什么是系统调用(续),系统调用是操作系统提供给编程人员的唯一接口。利用系统调用,可动态请求和释放系统资源、完成与硬件相关的工作以及控制程序的执行等。,30/51,四、系统调用(续),3. 如何执行系统调用 不同的操作系统,系统调用实现的具体方法有所不同,但其实质是相同的: (1) 每个系统调用对应一个系统调用号; (2) 每个系统调用对应一个执行程序段; (3) 每个系统调用要求一定数量的输入参数和返回值;,31/51,3. 如何执行系统调用(续),访管指令: svc n svc表示机器访管指令的操作码记忆符 n为地址码(功能号) 当处理机执行到访管指令时就发生中断,该中断称为访管中断,它表示正在运行的程序对操作系统的某种需求。,32/51,系统调用执行过程示意图,33/51,系统调用的例子(1),汇编程序例子:打印5个字符。 调用dos功能 mov a, para1 mov b, para2 int 21h,34/51,系统调用的例子(2),高级语言例子:打印5个字符 char buff4=“abcde”; for(i=4;i=0;i-) print(buffi);,35/51,系统调用的例子(3),高级语言例子:读文件f1的第10到20个字节。 fd = open(“f1”,o_rdonly); seek(fd,10,0); read(fd,buff,11);,36/51,系统调用与库函数的区别,系统调用代码属于os,库函数由开发软件提供,由编译工具链入用户程序 系统调用代码的执行引起cpu状态的变化:用户态核心态 库函数的执行不会引起cpu状态的变化:用户态,37/51,38/51,linux系统调用系统调用,linux系统调用由两部分组成: 核心函数 是实现系统调用功能的(内核)代码。 接口函数 是提供给应用程序的api,以库函数形式存在linux的libc.a中。,39/51,linux系统调用入口程序entry.s,entry(sys-call-table) .long symbol-name(sys-ni-syscall) 0 .long symbol-name (sys-exit) 1 .long symbol-name (sys-fork) 2 .long symbol-name (sys-read) 3 .long symbol-name (sys-write) 4 .long symbol-name (sys-open) 5 .long symbol-name(sys-close) 6 .long symbol-name (sys-vfork ) 190,40/51,linux系统调用号就是系统调用入口表中位置序号,系统调用通过接口函数将调用号传给内核,内核转入系统调用控制程序再通过调用号位置来定位核心函数,linux内核的陷入由0x80(int80h)中断实现。,41/51,linux系统调用控制程序的功能,(1)取系统调用号,检验合法性; (2)建立调用堆栈,保护现场信息; (3)根据系统调用号定位核心函数地址; (4)根据通用寄存器内容,从用户栈中取入口参数; (5)核心函数执行,把结果返回应用程序; (6)执行退栈操作,判别调度程序scheduler是否要被执行。,42/51,unix系统调用,1. 系统调用入口表 系统调用入口表是系统调用处理程序入口地址表,表的下标为系统调用号: struct sysent int count; /* 参数的个数 */ int (*call)(); /* 执行程序入口地址 */ sysent;,43/51,44/51,有关进程管理的系统调用,fork 建立一个进程 exec 执行一个文件 wait 等待子进程 exit 进程中止 brk 改变用户数据区 大小 sleep 等待一段时间 kill 发送软中断,signal 设置软中断处理 程序 alarm 在指定时间后发 送软中断 pause 等待软中断 nice 改变进程优先数 计算结果 ptrace 跟踪子进程,45/51,与文件管理有关的系统调用,open 打开文件 close 关闭文件 read 读文件 write 写文件 lseek 修改读写指针 creat 建立并打开文件 mknod 建立目录或特别 文件 link 联结文件,unlink 删除文件 chdir 改变当前目录 chmod 改变文件属性 pipe 建立并打开管道文件 chown 改变文件主和用户组 mount 安装文件系统(卷) dup 产生一个文件描述符 umount 拆卸文件系统(卷),46/51,与系统状态有关的系统调用,getuid 取用户号 setuid 设置用户号 getgid 取用户组号 setgid 设置用户组号 time 取日历时间 stime 设置日历时间 times 取进程执行时间,gtty 读当前终端tty部 分信息 stty 设置当前终端tty 部分信息 stat 读取文件状态(i 节点) sync 使主存映像与磁 盘文件信息一致,47/51,unix系统中系统调用的实现,pdp 11:trap调用号trap处理程序 把要求的参数传送到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论