软件开发技术基础第3章-操作系统及其相关程序设计课件

上传人:石磨 文档编号:182477681 上传时间:2021-05-14 格式:PPT 页数:31 大小:486KB
返回 下载 相关 举报
软件开发技术基础第3章-操作系统及其相关程序设计课件_第1页
第1页 / 共31页
软件开发技术基础第3章-操作系统及其相关程序设计课件_第2页
第2页 / 共31页
软件开发技术基础第3章-操作系统及其相关程序设计课件_第3页
第3页 / 共31页
软件开发技术基础第3章-操作系统及其相关程序设计课件_第4页
第4页 / 共31页
软件开发技术基础第3章-操作系统及其相关程序设计课件_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《软件开发技术基础第3章-操作系统及其相关程序设计课件》由会员分享,可在线阅读,更多相关《软件开发技术基础第3章-操作系统及其相关程序设计课件(31页珍藏版)》请在金锄头文库上搜索。

1、软件开发技术基础第3章-操作系统及其相关程序设计,3.1 操作系统概述,3.3 Windows 操作系统应用程序设计,3.2 操作系统的资源管理,3.3.1 进程管理应用程序设计 3.3.2 存储管理应用程序设计 3.3.3 设备管理应用程序设计 3.3.4 文件管理应用程序设计 3.3.5 用户接口程序设计,第3章 操作系统及相关程序设计,3.2.1 进程管理 3.2.2 存储管理 3.2.3 设备管理 3.2.4 文件管理 3.2.5 用户接口,第1页,3.1.1 操作系统的发展和类型 3.1.2 常用操作系统简介,软件开发技术基础第3章-操作系统及其相关程序设计,3.1 操作系统概述,计

2、算机中的各种程序和数据共同组成软件资源,软件的运行以硬件的支持为基础,又对硬件在性能方面进行扩充和完善。通常计算机内部的数是用0和1两个二进制数字来表示的,其中硬件内部时常需要进行诸如数据传送、算术逻辑运算、程序控制和输入输出等基本操作,为了完成这些操作,需要用户与硬件设备进行复杂的交互,这些工作如果完全由手工来操作是非常困难的事情,还有可能造成CPU的运行效率下降或产生差错。操作系统正好可以担当此任,它在计算机系统中占据着非常重要的位置,是构建在硬件系统之上的系统软件,具有管理各种硬件和软件资源的功能。操作系统可定义为管理计算机中的硬件和软件资源,合理组织计算机的工作流程,为用户提供功能丰富

3、、使用方便的运行环境的一种系统软件,在用户和计算机间起到桥梁作用。,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.1 操作系统的发展和类型,1无操作系统方式,2. 单道批处理方式,早期的计算机并没有配置专门的操作系统,操作人员需要直接操作各种机械和电气设备以控制计算机的运行。随着像汇编语言这样的一些低级计算机语言的出现,从而能够通过穿孔纸带将程序输入到计算机,并进行编译和运行最终得到计算结果。这个时期,一个程序独占整个计算机,而CPU时常处于空闲等待状态,较慢的人工操作过程形成瓶颈,提出了设备和程序等资源共享的新问题。,“单道”代表着一次只能处理一个程序,“批处理”代表着将零散的单

4、一任务合并作为集中式批量任务来一次性进行处理,从而大大简少了人工干预的次数,节省了程序的运行时间。随着批处理控制管理程序的出现,又进一步实现了程序运行的自动化管理。,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.1 操作系统的发展和类型,3多道程序系统,4. 分时操作系统,为了提高系统的处理能力和资源的利用率,计算机需要同时处理系统中运行着的多个程序,系统资源不再由某个程序所独占,而为多个程序所共享,共享资源的状态由多个程序的活动性质所共同决定,系统各部分的工作方式由简单的串行改为并发执行,这就是多道程序系统方式。,分时操作系统把计算机与许多终端用户连接起来,将CPU时间与内存空间

5、按一定的时间间隔,轮流地切换给各终端用户的程序使用。分时操作系统能使一台计算机同时为几个、几十个甚至几百个用户服务。由于时间间隔很短,每个用户的感觉就像独占计算机一样。,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.1 操作系统的发展和类型,6微机操作系统,7. 单道批处理方式,新一代微机操作系统具有图形用户界面(GUI)、多用户和多任务、虚拟存储管理、网络通信支持、数据库支持、多媒体支持、应用编程API支持等功能。有了图形界面就有了字符界面操作系统和图形界面操作系统之分;有了多用户、多任务就有了单用户操作系统、多用户操作系统、单任务操作系统、多任务操作系统之分;能提供和使用网络服

6、务就是网络操作系统。 分布式操作系统是为分布式计算机系统配置的操作系统。它与网络操作系统相比更注重于任务的分布性,即把一个大任务分为若干个可以并行执行的子任务,分派到不同的处理站点上去执行。 集群是指一组高性能计算机通过高速网络连接起来,在工作中像一个统一的资源,所有节点使用单一界面的计算系统。 嵌入式操作系统(Embedded Operating System)是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.2 常用操作系统简介,1Windows 操作系统,(

7、1)Windows NT(New technology) 系列操作系统的体系结构,(2)Windows应用程序的一般界面,(3)Windows编程的一些重要概念,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.2 常用操作系统简介,2Ubuntu,Ubuntu,中文名为乌班图,是一个以桌面应用为主的开源的Linux操作系统,它基于Debian GNU/Linux发行版内核和GNOME桌面环境,支持x86、amd64和ppc架构。Ubuntu的目标是一个最新的、相当稳定的由自由软件构建而成的操作系统,因此Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。当前版本为14.04

8、,除了桌面版之外,也推出了服务器版。麒麟操作系统中文版(Ubuntu Kylin 14.04 LTS)也已经推出。2013年1月3日,Ubuntu正式发布面向智能手机的移动操作系统,并宣布将很快提供适用于Galaxy Nexus 的刷机包,并将在 2014 年初推出手机硬件。2014年2月20日,乌班图正式宣布与国产手机厂商魅族合作推出乌班图版MX3。,软件开发技术基础第3章-操作系统及其相关程序设计,3.1.2 常用操作系统简介,3Android,软件开发技术基础第3章-操作系统及其相关程序设计,3.2 操作系统的资源管理,实际应用中,很多问题不适合用线性数据结构来表示。传统上的操作系统具有

9、五大功能,即进程管理、存储管理、设备管理、文件管理和用户接口,各功能之间并非完全独立,而是相互依赖的。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.1 进程管理,1程序的执行方式,(1)顺序执行 顺序性,即程序指令的执行次序是预先设定好的,包括分支、循环或跳转等; 封闭性,即程序在执行过程中独占全部资源,最终的输出结果仅仅依赖于输入变量的值,计算机的状态完全由该程序的控制逻辑所决定,而与计算机本身和环境无关; 可再现性,即程序可以反复执行多次,而不管计算机的速度如何,同样的输入必然得到同样的输出结果。 (2)并发执行 间断(异步)性,处理器交替执行多个程序,每个程序都是以“走走停

10、停”的方式执行,无法预知每次执行和暂停的时间长度,也失去了原有的时序关系; 失去封闭性,由于多个程序共享同一个计算机系统的多种资源,因此每个程序的执行都会受其它程序的控制逻辑的影响; 失去可再现性,程序每次执行的环境可能在程序的两次执行期间发生变化从而导致执行结果的不同,失去原有的可重复特征。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.1 进程管理,2进程,(1)进程的特点 进程具有以下六个特点:动态性,并发性,独立性,异步性,结构性,制约性。 (2)进程的状态 一般把进程划分为以下三个状态:就绪状态,运行状态,等待状态。 (3)进程的结构 PCB主要包括四个方面的信息:进程描

11、述信息,进程控制信息,资源占用信息,CPU现场保护结构。 (4)进程的调度 进程调度是为了执行用户程序。它不仅涉及选择哪一个就绪进程进入运行状态,还涉及何时启动一个进程的执行。进程调度的算法包括先来先服务法、最短作业优先法、时间片轮转法、优先级法、多级队列法等。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.1 进程管理,3进程与程序的区别,进程是动态的,进程是程序的执行,它通常不可以在计算机之间迁移;程序是静态的,是有序代码的集合,通常对应着文件并可以复制。 进程是暂时的,是一个状态变化的过程;程序是永久的,可以永久保存。 进程与程序的组成不同,进程的组成包括程序、数据和PCB。

12、 进程与程序可以相互转化。通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。一个(父)进程可创建其它(子)进程,而一个程序并不能形成新程序。进程是程序代码的执行过程,但并不是所有代码执行过程都从属于某个进程。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.2 存储管理,1存储管理的主要任务,(1)内存空间的分配与释放 (2)内存空间的地址变换 (3)内存空间的分区保护 (4)内存空间的扩充 (1)单一连续存储管理 (2)分区式存储管理 (3)页式存储管理 (4)段式存储管理 (5)虚拟存储管理,2存储管理的主要方法,软件开发技术基础第3章-操作系统及其相关

13、程序设计,3.2.2 存储管理,3Windows的存储管理,Windows的主存管理采用请求调页簇式的页式虚存管理。32位的Windows XP上的虚拟地址空间最多可达4GB,每个用户进程可以占有2GB的私有地址空间,操作系统占有剩下的2GB空间。Windows为每个进程分配的是虚拟内存空间,每个虚拟地址并不直接对应着物理地址,而是由一种称为物理内存管理器的机制来转译,由它来按页管理内存,并在页的映像结构中保存一张虚拟地址表,利用这张表将虚拟地址映射为相应的物理地址。当程序申请的内存空间超出实际可用的物理空间容量时,会将那些处于非活动状态的页数据交换并保存到磁盘中的一个页文件之中。为了减少交换

14、的次数,每个进程在建立时就在物理内存中具有了最小的页数量,且物理内存管理器同时使用最近最少等优化管理措施。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.3 设备管理,1设备的分类,2设备的输入/输出控制方式,3设备管理的方式,按使用方式可分为独占设备和共享设备;按处理速度可分为慢速设备和快速设备;按数据组织和存取方式可分为字符设备和块设备;按通信方式可分为串行设备和并行设备;按应用范围可分为通用设备和专用设备;按隶属关系可分为系统设备和用户设备;按实体程序可分为真实设备和虚拟设备等。 (1)程序直接控制方式。 (2)中断控制方式。 (3) DMA(direct memory ac

15、cess,直接存储器访问)控制方式。 (4)通道控制方式。 (1) I/O设备的固有属性。 (2) I/O设备分配算法。 (3)设备分配中的安全性。 (4)与设备无关性。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.3 设备管理,4设备分配的步骤,5设备驱动程序,6Windows的设备管理,1)根据进程提出的物理设备名检索系统设备表SDT,从中找到该物理设备的设备控制表DCT。 2)根据DCT中的状态信息,了解该设备是否忙。 3)当设备分配给请求I/O的进程后,从该设备的设备控制表(DCT)中与该设备相连的控制器表指针一栏可知与此设备相连的控制器控制表(COCT,Controll

16、er Control Table)。 4)检查该控制器控制表中的状态信息来判断控制器是否忙。 5)通过控制器控制表中的通道表指针,检查与此控制器相连的通道的状态。,当某进程在请求I/O后,设备分配程序就为此进程分配了设备及相应的控制器和通道,然后在设备驱动程序的作用下实现真正的I/O操作。一个设备驱动程序一般处理相同类的所有设备,它由许多子程序所组成,这些子程序与设备的特性有关。,Windows采用分层驱动程序的思想,只有最底层的硬件设备驱动程序访问硬件设备,高层驱动程序都是进行高级I/O请求到低级I/O请求的转换工作,各层驱动程序间的I/O请求通过I/O管理器进行。Windows设备驱动程序的类型包括:文件系统驱动程序、文件系统过滤器驱动程序、类驱动程序、端口驱动程序、小端口驱动程序和硬件设备驱动程序等。,软件开发技术基础第3章-操作系统及其相关程序设计,3.2.4 文件管理,1文件系统的功能,1)分配文件的存储空间。 2)实现从逻辑文件到物理文件间的转换,即“按名存取”外存上的文件。 3)建立文件目录。提供按名存取的有效手段和保证文件安全的机构。 4)提供合理的存取方法以适应各种不

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号