




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3.3.1 进程管理应用程序设计进程管理应用程序设计3.3.2 存储管理应用程序设计存储管理应用程序设计3.3.3 设备管理应用程序设计设备管理应用程序设计3.3.4 文件管理应用程序设计文件管理应用程序设计3.3.5 用户接口程序设计用户接口程序设计第第3 3章章 操作系统及相关程序设计操作系统及相关程序设计3.2.1 进程管理进程管理3.2.2 存储管理存储管理3.2.3 设备管理设备管理3.2.4 3.2.5 用户接口用户接口第1页3.1.1 操作系统的发展操作系统的发展和类型和类型3.1.2 常用操作系统简常用操作系统简介介编辑ppt第第2 2页页 3.1 操作系统概述计算机中的各种程
2、序和数据共同组成软件资源,软件的运行以硬件的支持为基础,又对硬件在性能方面进行扩充和完善。通常计算机内部的数是用0和1两个二进制数字来表示的,其中硬件内部时常需要进行诸如数据传送、算术逻辑运算、程序控制和输入输出等基本操作,为了完成这些操作,需要用户与硬件设备进行复杂的交互,这些工作如果完全由手工来操作是非常困难的事情,还有可能造成CPU的运行效率下降或产生差错。操作系统正好可以担当此任,它在计算机系统中占据着非常重要的位置,是构建在硬件系统之上的系统软件,具有管理各种硬件和软件资源的功能。操作系统可定义为管理计算机中的硬件和软件资源,合理组织计算机的工作流程,为用户提供功能丰富、使用方便的运
3、行环境的一种系统软件,在用户和计算机间起到桥梁作用。编辑ppt第第3 3页页3.1.1 3.1.1 操作系统的发展和类型操作系统的发展和类型1 1无操作系统方式无操作系统方式2. 2. 单道批处理方式单道批处理方式早期的计算机并没有配置专门的操作系统,操作人员需要直接操作各种机械和电气设备以控制计算机的运行。随着像汇编语言这样的一些低级计算机语言的出现,从而能够通过穿孔纸带将程序输入到计算机,并进行编译和运行最终得到计算结果。这个时期,一个程序独占整个计算机,而CPU时常处于空闲等待状态,较慢的人工操作过程形成瓶颈,提出了设备和程序等资源共享的新问题。“单道”代表着一次只能处理一个程序,“批处
4、理”代表着将零散的单一任务合并作为集中式批量任务来一次性进行处理,从而大大简少了人工干预的次数,节省了程序的运行时间。随着批处理控制管理程序的出现,又进一步实现了程序运行的自动化管理。编辑ppt第第4 4页页3.1.1 3.1.1 操作系统的发展和类型操作系统的发展和类型3 3多道程序系统多道程序系统4. 4. 分时操作系统分时操作系统为了提高系统的处理能力和资源的利用率,计算机需要同时处理系统中运行着的多个程序,系统资源不再由某个程序所独占,而为多个程序所共享,共享资源的状态由多个程序的活动性质所共同决定,系统各部分的工作方式由简单的串行改为并发执行,这就是多道程序系统方式。分时操作系统把计
5、算机与许多终端用户连接起来,将CPU时间与内存空间按一定的时间间隔,轮流地切换给各终端用户的程序使用。分时操作系统能使一台计算机同时为几个、几十个甚至几百个用户服务。由于时间间隔很短,每个用户的感觉就像独占计算机一样。编辑ppt第第5 5页页3.1.1 3.1.1 操作系统的发展和类型操作系统的发展和类型6 6微机微机操作系统操作系统7. 7. 单道批处理方式单道批处理方式新一代微机操作系统具有图形用户界面(GUI)、多用户和多任务、虚拟存储管理、网络通信支持、数据库支持、多媒体支持、应用编程API支持等功能。有了图形界面就有了字符界面操作系统和图形界面操作系统之分;有了多用户、多任务就有了单
6、用户操作系统、多用户操作系统、单任务操作系统、多任务操作系统之分;能提供和使用网络服务就是网络操作系统。分布式操作系统是为分布式计算机系统配置的操作系统。它与网络操作系统相比更注重于任务的分布性,即把一个大任务分为若干个可以并行执行的子任务,分派到不同的处理站点上去执行。集群是指一组高性能计算机通过高速网络连接起来,在工作中像一个统一的资源,所有节点使用单一界面的计算系统。嵌入式操作系统(Embedded Operating System)是运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。编辑ppt第第6 6页页3.1.2
7、 3.1.2 常用操作系统简介常用操作系统简介1 1Windows Windows 操作系统操作系统(1)Windows NT(New technology)系列操作系统的体系结构(2)Windows应用程序的一般界面(3)Windows编程的一些重要概念编辑ppt第第7 7页页3.1.2 3.1.2 常用操作系统简介常用操作系统简介2 2UbuntuUbuntuUbuntu,中文名为乌班图,是一个以桌面应用为主的开源的Linux操作系统,它基于Debian GNU/Linux发行版内核和GNOME桌面环境,支持x86、amd64和ppc架构。Ubuntu的目标是一个最新的、相当稳定的由自由软
8、件构建而成的操作系统,因此Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。当前版本为14.04,除了桌面版之外,也推出了服务器版。麒麟操作系统中文版(Ubuntu Kylin 14.04 LTS)也已经推出。2013年1月3日,Ubuntu正式发布面向智能手机的移动操作系统,并宣布将很快提供适用于Galaxy Nexus 的刷机包,并将在 2014 年初推出手机硬件。2014年2月20日,乌班图正式宣布与国产手机厂商魅族合作推出乌班图版MX3。编辑ppt第第8 8页页3.1.2 3.1.2 常用操作系统简介常用操作系统简介3 3AndroidAndroid编辑ppt第第9 9页页
9、 3.2 操作系统的资源管理实际应用中,很多问题不适合用线性数据结构来表示。传统上的操作系统具有五大功能,即进程管理、存储管理、设备管理、文件管理和用户接口,各功能之间并非完全独立,而是相互依赖的。编辑ppt第第1010页页3.2.1 3.2.1 进程管理进程管理1 1程序的执行方式程序的执行方式(1)顺序执行l 顺序性,即程序指令的执行次序是预先设定好的,包括分支、循环或跳转等;l 封闭性,即程序在执行过程中独占全部资源,最终的输出结果仅仅依赖于输入变量的值,计算机的状态完全由该程序的控制逻辑所决定,而与计算机本身和环境无关;l 可再现性,即程序可以反复执行多次,而不管计算机的速度如何,同样
10、的输入必然得到同样的输出结果。(2)并发执行l 间断(异步)性,处理器交替执行多个程序,每个程序都是以“走走停停”的方式执行,无法预知每次执行和暂停的时间长度,也失去了原有的时序关系;l 失去封闭性,由于多个程序共享同一个计算机系统的多种资源,因此每个程序的执行都会受其它程序的控制逻辑的影响;l 失去可再现性,程序每次执行的环境可能在程序的两次执行期间发生变化从而导致执行结果的不同,失去原有的可重复特征。编辑ppt第第11 11页页3.2.1 3.2.1 进程管理进程管理2 2进程进程(1)进程的特点进程具有以下六个特点:动态性,并发性,独立性,异步性,结构性,制约性。(2)进程的状态一般把进
11、程划分为以下三个状态:就绪状态,运行状态,等待状态。(3)进程的结构PCB主要包括四个方面的信息:进程描述信息,进程控制信息,资源占用信息,CPU现场保护结构。(4)进程的调度进程调度是为了执行用户程序。它不仅涉及选择哪一个就绪进程进入运行状态,还涉及何时启动一个进程的执行。进程调度的算法包括先来先服务法、最短作业优先法、时间片轮转法、优先级法、多级队列法等。编辑ppt第第1212页页3.2.1 3.2.1 进程管理进程管理3 3进程与程序的区别进程与程序的区别进程是动态的,进程是程序的执行,它通常不可以在计算机之间迁移;程序是静态的,是有序代码的集合,通常对应着文件并可以复制。进程是暂时的,
12、是一个状态变化的过程;程序是永久的,可以永久保存。进程与程序的组成不同,进程的组成包括程序、数据和PCB。进程与程序可以相互转化。通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。一个(父)进程可创建其它(子)进程,而一个程序并不能形成新程序。进程是程序代码的执行过程,但并不是所有代码执行过程都从属于某个进程。编辑ppt第第1313页页3.2.2 3.2.2 存储管理存储管理1 1存储管理的主要任务存储管理的主要任务(1)内存空间的分配与释放(2)内存空间的地址变换(3)内存空间的分区保护(4)内存空间的扩充(1)单一连续存储管理(2)分区式存储管理(3)页式存储管理
13、(4)段式存储管理(5)虚拟存储管理2 2存储管理的主要方法存储管理的主要方法编辑ppt第第1414页页3.2.2 3.2.2 存储管理存储管理3 3WindowsWindows的存储管理的存储管理Windows的主存管理采用请求调页簇式的页式虚存管理。32位的Windows XP上的虚拟地址空间最多可达4GB,每个用户进程可以占有2GB的私有地址空间,操作系统占有剩下的2GB空间。Windows为每个进程分配的是虚拟内存空间,每个虚拟地址并不直接对应着物理地址,而是由一种称为物理内存管理器的机制来转译,由它来按页管理内存,并在页的映像结构中保存一张虚拟地址表,利用这张表将虚拟地址映射为相应的
14、物理地址。当程序申请的内存空间超出实际可用的物理空间容量时,会将那些处于非活动状态的页数据交换并保存到磁盘中的一个页文件之中。为了减少交换的次数,每个进程在建立时就在物理内存中具有了最小的页数量,且物理内存管理器同时使用最近最少等优化管理措施。编辑ppt第第1515页页3.2.3 3.2.3 设备管理设备管理1 1设备的分类设备的分类 2 2设备的输入设备的输入/ /输出控制方式输出控制方式3 3设备管理的方式设备管理的方式按使用方式可分为独占设备和共享设备;按处理速度可分为慢速设备和快速设备;按数据组织和存取方式可分为字符设备和块设备;按通信方式可分为串行设备和并行设备;按应用范围可分为通用
15、设备和专用设备;按隶属关系可分为系统设备和用户设备;按实体程序可分为真实设备和虚拟设备等。(1)程序直接控制方式。(2)中断控制方式。(3) DMA(direct memory access,直接存储器访问)控制方式。(4)通道控制方式。(1) I/O设备的固有属性。(2) I/O设备分配算法。(3)设备分配中的安全性。(4)与设备无关性。编辑ppt第第1616页页3.2.3 3.2.3 设备管理设备管理4 4设备分配的步骤设备分配的步骤5 5设备驱动程序设备驱动程序6 6WindowsWindows的设备管理的设备管理1)根据进程提出的物理设备名检索系统设备表SDT,从中找到该物理设备的设备
16、控制表DCT。2)根据DCT中的状态信息,了解该设备是否忙。3)当设备分配给请求I/O的进程后,从该设备的设备控制表(DCT)中与该设备相连的控制器表指针一栏可知与此设备相连的控制器控制表(COCT,Controller Control Table)。4)检查该控制器控制表中的状态信息来判断控制器是否忙。5)通过控制器控制表中的通道表指针,检查与此控制器相连的通道的状态。当某进程在请求I/O后,设备分配程序就为此进程分配了设备及相应的控制器和通道,然后在设备驱动程序的作用下实现真正的I/O操作。一个设备驱动程序一般处理相同类的所有设备,它由许多子程序所组成,这些子程序与设备的特性有关。Wind
17、ows采用分层驱动程序的思想,只有最底层的硬件设备驱动程序访问硬件设备,高层驱动程序都是进行高级I/O请求到低级I/O请求的转换工作,各层驱动程序间的I/O请求通过I/O管理器进行。Windows设备驱动程序的类型包括:文件系统驱动程序、文件系统过滤器驱动程序、类驱动程序、端口驱动程序、小端口驱动程序和硬件设备驱动程序等。编辑ppt第第1717页页3.2.4 3.2.4 文件管理文件管理1 1文件系统的功能文件系统的功能1)分配文件的存储空间。2)实现从逻辑文件到物理文件间的转换,即“按名存取”外存上的文件。3)建立文件目录。提供按名存取的有效手段和保证文件安全的机构。4)提供合理的存取方法以
18、适应各种不同应用。5)实现文件的共享、保护和保密。不同用户能在系统的控制下共享其它用户的文件。6)提供一组文件操作,完成对文件的建立、删除、更名、复制、移动、打开、读、写和关闭等操作。文件的结构可分为逻辑结构和物理结构两种。文件的逻辑结构是指文件的外部组织形式,即从用户角度看到的文件组织形式,用户以这种形式存取、检索和加工有关信息。物理结构又称存储结构,它是指文件在外存上的存储组织形式,与存储介质的存储特性有关。2 2文件结构文件结构编辑ppt第第1818页页3.2.4 3.2.4 文件管理文件管理3 3文件目录文件目录4 4DOSDOS的文件管理的文件管理文件存入文件存储空间后,用户要实现“
19、按名存取”,必须建立文件名与该文件在外存空间中的物理地址之间的对应关系体现这种对应关系的数据结构称为文件目录。目录可以看作是用户与文件系统的接口。在系统中建立一张表,表中存放系统中的所有文件的文件名、文件的物理地址和文件属性,此表即文件目录。(1)DOS的文件名MS-DOS中的每个文件都有唯一的标识,即“引用名”。一个文件的引用名一般由.等三部分组成。(2)DOS的文件目录(3) DOS文件的物理结构编辑ppt第第1919页页3.2.4 3.2.4 文件管理文件管理5 5WindowsWindows的文件管理的文件管理Windows主要采用FAT32和NTFS两种文件系统格式。FAT32可使卷
20、最大达到2TB,单个逻辑驱动器可以达到127GB,因此可以使用更大的磁盘空间。在文件分配表中,每个簇的登记项占4个字节(32位),每个文件的大小最大4GB。FAT32还支持长文件名,根目录下的文件数目不受最多256的限制。NTFS(New Technology ),即新型技术文件系统。NTFS以卷为基础,卷建立在磁盘分区之上,分区是磁盘的基本组成部分,是一个能够被格式化和单独使用的逻辑单元。当以NTFS格式来格式化磁盘分区时就创建了NTFS卷,而一个磁盘可以有多个卷,一个卷也可以由多个磁盘组成。编辑ppt第第2020页页3.2.5 3.2.5 用户接口用户接口1 1命令接口命令接口2 2程序接
21、口程序接口3 3图形接口图形接口为了便于用户直接或间接控制自己的作业,操作系统向用户提供了命令接口。命令接口是用户利用操作系统命令组织和控制作业的执行或管理计算机系统。命令是在命令输入界面上输入,由系统在后台执行,并将结果反映到前台界面或者特定的文件内。命令接口可以进一步分为联机用户接口和脱机用户接口。程序接口由一组系统调用命令组成,这是操作系统提供给编程人员的接口。用户通过在程序中使用系统调用命令来请求操作系统提供服务。每一个系统调用都是一个能完成特定功能的子程序。图形用户接口采用了图形化的操作界面,用非常容易识别的各种图标来将系统各项功能、各种应用程序和文件,直观、逼真地表示出来。用户可通
22、过鼠标、菜单、窗口、图标和位图和对话框等来完成对应程序和文件的操作。图形用户接口元素包括窗口、图标、菜单和对话框,图形用户接口元素的基本操作包括菜单操作、窗口操作和对话框操作等。编辑ppt第第2121页页 3.3 Windows操作系统应用程序设计本节对Windows操作系统之上的应用程序设计作一介绍。从操作层面来讲,可以通过鼠标、键盘、命令以及快捷方式来使用Windows及其之上的各种软件;从程序层面来讲,Windows提供了大量的应用程序编程接口(API)函数,通过这些API函数则可以编写完成各式各样任务的程序。API函数包括消息函数、网络函数、文件函数、打印函数、资源函数、硬件函数、系统
23、函数、控件函数和进程线程函数等。Visua C+ 还提供了微软基础类库(MFC),对大部分常用API函数进行了进一步的封装,使用起来更方便。使用Visual C+进行程序设计时,常常将MFC类库和Windows API函数库结合起来。但如果仅仅是获得操作系统方面的一些功能,则可以直接使用Windows API提供的相关函数。编辑ppt第第2222页页3.3.1 3.3.1 进程管理应用程序设计进程管理应用程序设计1 1进程管理程序设计进程管理程序设计【例3-1】编写程序,启动两个子进程“屏幕虚拟键盘”(osk)程序和“画图程序”(mspaint)程序。程序分析:程序分析:将主函数main中对子
24、函数child_process的调用参数代换为其它命令字符串,即可建立不同的进程,比如:Notepad为记事本,wordpad为写字板,calc为计算器,explorer为资源管理器,taskmgr为任务管理器等。编辑ppt第第2323页页3.3.1 3.3.1 进程管理应用程序设计进程管理应用程序设计1 1进程管理程序设计进程管理程序设计【例3-2】编程显示当前Windows操作系统中的所有进程的编号和名称。思考:思考:编写一个程序,使其只能执行一份,即仅建立一个进程(提示:在程序开始部分获取系统中的进程列表,判断其中有无执行文件名为当前执行文件的进程,如果有,则终止当前程序的执行(如调用e
25、xit(-1),否则继续执行)。编辑ppt第第2424页页3.3.1 3.3.1 进程管理应用程序设计进程管理应用程序设计2 2线程管理程序设计线程管理程序设计【例3-3】编写一个动态显示计算机时间的线程程序。【例3-4】编写模拟生产和消费的多线程程序。一个线程产生随机数,表示生产;另一个线程显示这个数,表示消费。两个线程独立运行,但消费完时才生产,有“产品”时才能消费。编辑ppt第第2525页页3.3.1 3.3.1 进程管理应用程序设计进程管理应用程序设计3 3定时器应用程序设计定时器应用程序设计【例3-5】使用定时器编写屏幕保护程序。具体要求:每隔500毫秒生成一个大小、位置和颜色都是随
26、机的实心圆,并显示到窗口中。程序分析:程序分析:若将“OnTimer”函数中的“pDC-Ellipse(x,y,x+r,y+r);”替换为“pDC-Rectangle(x,y,x+r,y+r);”则运行结果变为许多矩形;若将“OnTimer”函数的for循环体改为“pDC-SetPixel(rand()%800,rand()%600,RGB(rand()%256,rand()%256,rand()%256);”,则运行结果变为许多点。这些留作练习,请读者自行验证。编辑ppt第第2626页页3.3.2 3.3.2 存储管理应用程序设计存储管理应用程序设计1 1虚拟存储管理程序设计虚拟存储管理程序
27、设计【例3-6】使用动态申请的虚拟内存空间来编写一个计算任意数的阶乘的程序。解题步骤:解题步骤:1)从键盘输入n,它为要求阶乘的数。2)通过函数VirtualAlloc保留n*10240 的地址空间,并申请使用其中的n*1024 的地址空间;其中n*1024为的大致估算1000以内数的阶乘所需要的运算空间。而n*10240为预保留的10倍的空间。3)调用计算阶乘函数lfac。一位一位显示阶乘结果。4)通过函数VirtualFree 释放虚拟内存。编辑ppt第第2727页页3.3.2 3.3.2 存储管理应用程序设计存储管理应用程序设计2 2动态链接库的建立和使用动态链接库的建立和使用【例3-7】编写能够计算大数阶乘的动态链接库。解题步骤:解题步骤:1)建立一个空的Win32 Dynamic-Link Library工程,工程名为“fac”,然后分别添加fac.h、fac.cpp和fac.def文件,编译链接生成动态链接库文件fac.dll和fac.lib。2) 建立“Win32控制台工程”,工程名称为“Example3_7”。在工程中添加一个C+源程序文件,文件名称为“Example3_7.cpp”;3)将“fac.dll”和 “fac.lib”复制到工程的“Debug”子目录中,“fac.h”头文件复制到Example3_7工程文件下。4)在“Example3_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 和解针剂企业数字化转型与智慧升级战略研究报告
- 智能垃圾分类回收引导企业制定与实施新质生产力战略研究报告
- 智能桌面绿植养护灯行业深度调研及发展战略咨询报告
- 小学一年级科学探索活动方案
- 舞台搭建家具保障措施与方案
- 医疗服务项目实施进度计划示例
- 2025年秋季传染病防控工作计划
- 2025年铂族金属用络合物项目发展计划
- 电气工程在医疗设备中的应用研究范文
- 儿童疫苗接种管理工作计划
- HIV实验室SOP文件-新版
- 孤独症儿童评估填写范例(一表两图)
- 贺兰山东麓干红葡萄酒多酚组分与其抗氧化、抗癌活性的关联性研究
- 第15课+十月革命的胜利与苏联的社会主义实践【高效备课精研 + 知识精讲提升】 高一历史 课件(中外历史纲要下)
- (4.3.1)-3.3我国储粮生态区的分布
- 辽宁盘锦浩业化工“1.15”泄漏爆炸着火事故警示教育
- 2023年衡阳市水务投资集团有限公司招聘笔试题库及答案解析
- 110~750kV架空输电线路设计规范方案
- 北师大版五年级数学下册公开课《包装的学问》课件
- 北师大版英语八年级下册 Unit 4 Lesson 11 Online Time 课件(30张PPT)
- 浅析商业综合体的消防疏散
评论
0/150
提交评论