操作系统 第12章教学课件.pptx

上传人:春哥&#****71; 文档编号:87376524 上传时间:2023-04-16 格式:PPTX 页数:40 大小:13.27MB
返回 下载 相关 举报
操作系统 第12章教学课件.pptx_第1页
第1页 / 共40页
操作系统 第12章教学课件.pptx_第2页
第2页 / 共40页
点击查看更多>>
资源描述

《操作系统 第12章教学课件.pptx》由会员分享,可在线阅读,更多相关《操作系统 第12章教学课件.pptx(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、操作系统 第12章教学课件第第1212章章 Windows Windows和和LinuxLinux简介简介目录目录C C O O N N T T E E N N T T S S12.112.112.212.2WindowsWindows操作系统操作系统LinuxLinux操作系统操作系统WindowsWindows操作系统12.112.112.1 WindowsWindows操作系统操作系统WindowsWindows是是MicrosoftMicrosoft公司研发的公司研发的,一种具有可视化图形用户界面的多任务操作系统。它为用户提供了风格统一的由窗口、菜单、工具栏等界面元素所构成的多任务环境

2、。比起从前的指令操作系统,如DOS,更为人性化。Windows操作系统是目前世界上使用最广泛的操作系统之一。20092009年年1010月,月,Windows 7Windows 7正式发布正式发布,是目前最新的Windows操作系统版本。Windows 7有多个版本,搜索和使用信息更加简单,它把数据保护和管理扩展到外围设备,改进了基于角色的计算方案和用户账户管理,增强移动工作能力,灵活计算基础设施,提高了屏幕触控支持和手写识别,支持虚拟硬盘,改善多核心处理器的运作效率、开机速度和内核。Windows系统发展的主要趋势是:功能更强大、安全性更高、使用更方便。计算方案用户账户管理12.1.112.

3、1.1 WindowsWindows的发展的发展12.1.212.1.2 WindowsWindows的构成的构成WindowsWindows采采用用面面向向对对象象的的技技术术来来设设计计系系统统,提出了一种客户机/服务器系统结构,该结构在纯微内核结构的基础上做了一些扩展,它融合了分层操作系统和微内核操作系统的设计思想。它利用硬件机制实现了核心态和用户态两个特权级别,对操作系统性能影响很大的组件放在内核下运行,而其他一些功能则在内核外实现。这种结构的主要优点是模块化程度高、灵活性大、便于维护、系统性能好。Windows主要由核心态组件和用户态组件构成。12.1.212.1.2 Windows

4、Windows的构成的构成基本内核基本内核。基本内核提供了一组严格定义的、可预测的、使得操作系统得以工作的基础设施,这为执行体的高级组件提供了必需的低级功能接口。内核除了执行线程调度外,几乎将所有的策略制订留给了执行体。执行体执行体。Windows的执行体是实现高级结构的一组例程和基本对象,执行体包含的组件有:进程和线程管理器、虚拟内存管理器、安全引用监视器、I/O系统、高速缓存管理器。硬件抽象层硬件抽象层。硬件抽象层(hardware abstraction layer,HAL)将内核、设备驱动程序以及执行体同硬件分隔开来,使它们可以适应多种平台,一般做得比较小,当在不同的硬件平台上使用时,

5、只需更改HAL即可。设备和驱动程序设备和驱动程序。设备驱动程序是可加载的核心态模块,它们是I/O系统和相关硬件的接口,包括文件系统和硬件设备驱动程序等,其中硬件设备驱动程序将用户的I/O函数调用转换为对特定硬件设备的I/O请求。1)1)核心态组件核心态组件窗口和图形系统窗口和图形系统。窗口和图形系统包含了实现图形用户界面的基本函数。12.1.212.1.2 WindowsWindows的构成的构成系系统统支支持持进进程程。系统支持进程主要有Idle进程、系统进程、会话管理器SMSS、Win32子系统CSRSS、WINLOGON的进程、本地安全身份验证服务器LSASS、服务控制器SERVICES

6、及其相关的服务进程。在Windows中,Idle进程的ID总是0,而不管进程的名称。一般的进程都有它们的映像名标识,Idle(以及进程ID2,名称是System)不是运行在真正的用户态。如果在一个处理机上没有可运行的进程,Windows会调度相应处理机对应的空闲进程。服务进程。服务进程。WindowsWindows中提供的服务进程主要有如下几个。中提供的服务进程主要有如下几个。spoolsv.exe:管理缓冲池中的打印和传真作业。service.exe:管理启动和停止服务。winmgmt.exe:在Windows中是作为一个服务来运行的,通过Windows管理规范(Windows Manage

7、ment Instrumentation,WMI)处理来自应用端客户的请求。svchost.exe:svchost.exe文件对那些从动态链接库中运行的服务来说是一个普通的主机进程名。2)2)用户态组件用户态组件12.1.212.1.2 WindowsWindows的构成的构成支持Win32、Windows 3.1、MSDOS、POSIX(UNIX操作系统接口的国际标准)和OS/21.2等5种操作系统的应用。Windows有3种环境子系统:POSIX、OS2(只能用于x86系统)和Win32。在这3个子系统中,Win32子系统比较特殊,必须始终处于运行状态。如果没有它,Windows就不能运行

8、,其他两个子系统只是在需要时才被启动。服务进程和应用进程不能直接调用操作系统服务,必须通过 子 系 统 动 态 链 接 库(subsystem DLLs)和Windows系统交互才能进行。2)2)用户态组件用户态组件用户应用用户应用环境子系统环境子系统子系统动态链接库子系统动态链接库12.1.312.1.3 WindowsWindows进程管理进程管理WindowsWindows包括包括3 3个层次的执行对象:个层次的执行对象:进程、线程和作业。其中作业是从Windows开始新引进的概念,是共享一组配额限制和安全性限制的进程的集合;进程是相应于一个应用的实体,它拥有自己的资源,如主存、打开的文

9、件等;线程是顺序执行的工作调度单位,它可以被中断,使CPU能转向另一线程执行。Windows进程设计的目标是提供对不同操作系统环境的支持,具有多任务(多进程)、多线程、支持SMP、采用了C/S模型、能在任何可用CPU上运行操作系统等特点。WindowsWindows中中进进程程对对象象的的属属性性有有进进程程标标识识符符(PIDPID)、资源访问令牌(access token)、进程的基本优先级(basic priority)和默认亲处理器集合(processor affinity)等。Windows是一个基于对象的操作系统,在系统中,用对象来表示所有的系统资源。主要定义了以下两类对象。1)W

10、indows1)Windows的执行对象的执行对象12.1.312.1.3 WindowsWindows进程管理进程管理执执行行体体对对象象。是由执行体的各种组件实现的对象,具体包括进程、线程、区域、文件、事件、事件对、文件映射、互斥、信号量、计时器、对象目录、符号连接、关键字、端口、存取令牌和终端等。如果把这些对象进一步分类,那么执行体创建事件对象、互斥对象、信号量对象、文件对象、文件映射对象、进程对象、线程对象和管道对象等。1)Windows1)Windows的执行对象的执行对象12.1.312.1.3 WindowsWindows进程管理进程管理内内核核对对象象。内核对象是由内核实现的一

11、种更原始的对象集合,包括内核过程对象、异步过程调用对象、延迟过程调用对象、中断对象、电源通知对象、电源状态对象、调度程序对象等。它们对用户态代码是不可见的,仅在执行体内创建和使用,许多执行体对象包含一个或多个内核对象,而内核对象能提供仅能由内核来完成的基本功能。WindowsWindows通通过过对对象象管管理理器器为为执执行行体体中中的的各各种种内内部部服服务务提提供供一一致致的的和和安安全全的的访访问问手手段段,它是一个用于创建、删除、保护和跟踪对象的执行体组件,提供了使用系统资源的公共和一致的机制。对象管理器接收到创建对象的系统服务后,要完成以下工作:为对象分配主存;为对象设置安全描述体

12、,以确定谁可使用对象及访问对象者被允许执行的操作;创建和维护对象目录表;创建一个对象句柄并返回给创建者。1)Windows1)Windows的执行对象的执行对象12.1.312.1.3 WindowsWindows进程管理进程管理就绪状态(就绪状态(readyready):线程已获得除处理机外的所需资源,正等待调度执行。备备用用状状态态(standby):已选择好线程的执行处理机,正等待描述表切换,以进入运行状态。系统中每个处理机上只能有一个处于备用状态的线程。运运行行状状态态(running):已完成描述表切换,线程进入运行状态。线程会一直处于运行状态,直到被抢先、时间片用完、线程终止或进入

13、等待状态。等等待待状状态态(waiting):线程正等待某对象,以同步线程的执行。当等待事件出现时,等待结束,并根据优先级进入运行或就绪状态。转转换换状状态态(transition):转换状态与就绪状态类似,但线程的内核堆栈位于外存。当线程等待事件出现而它的内核堆栈处于外存时,线程进入转换状态;当线程内核堆栈被调回内存时,线程进入就绪状态。终终止止状状态态(terminated):线程执行完就进入终止状态,如果执行体有一个指向线程对象的指针,可将处于终止状态的线程对象重新初始化,并再次使用。初始化状态初始化状态(initialized):线程创建过程中的线程状态。WindowsWindows的

14、线程是内核线程,系统的处理机调度对象为线程。的线程是内核线程,系统的处理机调度对象为线程。WindowsWindows把线程状态分成把线程状态分成7 7种状态。种状态。12.1.312.1.3 WindowsWindows进程管理进程管理Windows处理机调度的对象是线程,所以处理机的调度也称为线程调度。其调度方式采用严格的抢占式动态优先级调度,并依据优先级的高低和分配给线程的时间配额来进行线程调度。通常线程可在任何可用处理通常线程可在任何可用处理器上运行器上运行,但可限制某线程只能在某处理器上运行,亲和处理器集合(由应用进程预先通过系统调用请求的运行处理器集)允许用户线程通过Win32调度

15、函数选择它偏好的处理器。每个优先级的就绪线程排成一个先进先出队每个优先级的就绪线程排成一个先进先出队列列;当一个线程状态变成就绪时,它可能立即运行或排到相应优先级队列的尾部,Windows实现了一个基于优先级抢占式的多处理器调度系统,系统总是运行优先级最高的就绪线程。当一个线程当一个线程被调度进入运行状态时,它可运行一个被称为时间配额的时间片。2)Windows2)Windows的调度算法的调度算法一个线程进入就绪状态,如一个刚创建的新线程或一个刚刚结束等待状态的线程。一个线程由于时间配额用完而从运行状态转入退出状态或等待状态。一个线程由于调用系统服务而改变优先级或被Windows系统本身改变

16、其优先级。一个正在运行的线程改变了它的亲和处理器集合。这些触发事件出现时,系统必须选择下一个要运行的线程。当选择一个新线程进入运行状态时,将执行一个线程上下文切换以使新线程进入运行状态。线程上下文是指保存正在运行线程的相关运行环境,加载另一个线程的相关运行环境,并开始新线程执行的过程。线程时间配额处理器集合12.1.312.1.3 WindowsWindows进程管理进程管理线程调度的触发事件有以下线程调度的触发事件有以下4 4种。种。12.1.312.1.3 WindowsWindows进程管理进程管理在在WindowsWindows中提供了互斥对象中提供了互斥对象、信号量对象和事件对象3种

17、同步对象和相应的系统调用,用于进程和线程同步。从本质上讲,这组同步对象的功能是相同的,它们的区别在于适用场合和效率会有所不同。对象状态可分成可用和不可对象状态可分成可用和不可用两种用两种。对象可用表示该对象目前不被任何线程使用或所有,是可以使用的,对象不可用表示该对象被某线程使用,目前不能使用。对象名称是由用户给出的字符串。不同进程中用同样的名称来创建或打开对象,从而获得该对象在本进程的句柄。互锁变量访问是最基本的互斥手段,其他的互斥和共享机制都是以它为基础的。3)Windows3)Windows的进程通信的进程通信12.1.412.1.4 WindowsWindows内存管理内存管理Wind

18、ows的内存管理器是执行体中的虚虚拟拟存存储储管管理理(virtual memory manager,VUM)程序的一个组件,位于Ntoskrnl.exe 文件中,是Windows的基本存储管理系统。它实现内存的一种管理模式虚拟内存,为每个进程提供一个受保护的、大而专用的地址空间。系统支持的面向不同应用环境子系统的存储管理也都基于VMM程序。基于32位x86体系结构的Windows的虚拟地址布局如表12-1所示。系系统统服服务务和和应应用用程程序序是通过虚拟地址来操作内存的,访问之前需要将虚拟地址映射到实际的物理内存地址,内存管理器利用页表来进行地址转换。页表存储在系统地址空间中,每个虚拟地址

19、都和一个页表入口相关。和大多数现代操作系统一样,Windows采用“请求分页”虚存管理技术,运行于386以上的机器上,提供32位虚地址,每个进程都有多达4GB的虚地址空间。由于操作系统使用了虚拟内存,这就给应用程序造成了一个假象,以为计算机安装的内存远远超过自己所需要的数量。应用程序中超过物理内存的部分以页面文件的形式保存在磁盘上。进程4GB的地址空间被分成两部分:高地址的2GB保留给操作系统使用,称为系统部分,低地址的2GB是用户存储区,可被用户态和核心态线程访问,称为进程部分进程部分。工作集管理器工作集管理器(优先级为16)内核创建的系统线程每秒钟调用一次。当空闲内存低于某一界限时,便启动

20、所有的内存管理策略,如工作集的修整、老化和已修改页面的写入等。进程堆栈交换程序进程堆栈交换程序(优先级为23)完成进程和内核线程堆栈的换入和换出操作。当需要进行换入和换出操作时,系统线程将唤醒该线程。已修改页面写入器已修改页面写入器(优先级为17)将修改链表上的“脏”页写回适当的页文件。当需要减小修改链表的大小时,此线程将被唤醒。映射页面写入器映射页面写入器(优先级为17)将映射文件中的脏页写回磁盘。当或映射文件中某些页面在修改链表中超过了5分钟时,映射页面写入器将被唤醒。废弃段线程废弃段线程(优先级为18)负责系统高速缓存和页面文件的扩大和缩小。例如,如果没有虚拟地址空间满足分页缓冲池的增加

21、,该线程将减小系统高速缓存的大小。零页线程零页线程(优先级为0)将空闲链表中的页面清零,以便有足够的零页面满足将来的零页需求。12.1.412.1.4 WindowsWindows内存管理内存管理完成上述功能的几个关键组件如下。完成上述功能的几个关键组件如下。高效快速地进行I/O处理。使用标准的安全机制保护共享的资源。满足Win32、OS/2和POSIX子系统指定的I/O服务的需要。允许用高级语言编写驱动程序。根据用户的配置或者系统中硬件设备的添加和删除,能在系统中动态地添加或删除相应的设备驱动程序。为包括FAT、CDROM文件系统(CDFS)、UDF文件系统和Windows文件系统(NTFS

22、)的多种可安排的文件系统提供支持。允许整个系统或者单个硬件设备进入和离开低功耗状态,这样可以节约能源。12.1.512.1.5 WindowsWindows输入输入/输出系统输出系统1)Windows1)Windows输入输出系统的设计目标输入输出系统的设计目标12.1.512.1.5 WindowsWindows输入输入/输出系统输出系统WindowsWindows输输入入/输输出出系系统统主主要要负负责责创创建建代代表表I/OI/O请请求求的的IRPIRP和和引引导导通通过过不不同同驱驱动动程程序序的的包包,在完成I/O时向调用者返回结果。I/O管理器通过使用I/O系统对象来定位不同的驱动

23、程序和设备,这些对象包括驱动程序对象和设备对象。内部的Windows I/O系统以异步操作方式获得高性能,并且向用户态应用程序提供同步和异步I/O功能。设设备备驱驱动动程程序序不不仅仅包包括括传传统统的的硬硬件件设设备备驱驱动动程程序序,还包括文件系统、网络和分层过滤器驱动程序。通过使用公用机制,所有驱动程序都具有相同的结构,并以相同的机制在彼此之间或与I/O管理器通信。因此,它们可以分层,即把一层放在另一层上来达到模块化,并可以减少在驱动程序之间的复制。同样,所有的Windows设备驱动程序都应设计成能够在多处理器系统下工作。2 2)WindowsWindows输入输入/输出系统的功能输出系

24、统的功能用户态即插即用组件:用户态即插即用组件:用于控制和配置设备的用户态API。I/OI/O管理器:管理器:把应用程序和系统组件连接到各种虚拟的、逻辑的和物理的设备上,并且定义了一个支持设备驱动程序的基本构架。负责驱动I/O请求的处理,为设备驱动程序提供核心服务。它把用户态的读写转化为I/O请求包IRP。设备驱动程序:设备驱动程序:为某种类型的设备提供一个I/O接口。设备驱动程序从I/O管理器接受处理命令,当处理完毕后通知I/O管理器。设备驱动程序之间的协同工作也通过I/O管理器进行。即插即用(即插即用(plug and playplug and play,PnPPnP)管理器:)管理器:通

25、过与I/O管理器和总线驱动程序的协同工作来检测硬件资源的分配,并且检测相应硬件设备的添加和删除。电源管理器:电源管理器:通过与I/O管理器的协同工作来检测整个系统和单个硬件设备,完成不同电源状态的转换。12.1.512.1.5 WindowsWindows输入输入/输出系统输出系统3 3)WindowsWindows输入输入/输出系统的组成输出系统的组成WindowsWindows管理规范(管理规范(Windows management instrumentationWindows management instrumentation,WMIWMI):):也叫做Windows驱动程序模型(Wi

26、ndows driver model,WDM),允许驱动程序使用WMI作为媒介,与用户态运行的WMI服务通信。即插即用即插即用WDMWDM接口:接口:I/O系统为驱动程序提供了分层结构,这一结构包括WDM驱动程序、功能驱动程序层和设备对象。WDM驱动程序可以分为3类:总线驱动程序、驱动程序和过滤器驱动程序。每一个设备都含有两个以上的驱动程序层,用于支持它所基于的I/O总线的总线驱动程序,用于支持设备的功能驱动程序,以及可选的对总线、设备或设备类的I/O请求进行分类的过滤器驱动程序。注册表:注册表:作为一个数据库,存储基本硬件设备的描述信息以及驱动程序的初始化和配置信息。硬件抽象层(硬件抽象层(

27、HALHAL):):I/O访问例程把设备驱动程序与多种多样的硬件平台隔离开来,使它们在给定的体系结构中是二进制可移植的,并在Windows支持的硬件体系结构中是源代码可移植的。12.1.512.1.5 WindowsWindows输入输入/输出系统输出系统3 3)WindowsWindows输入输入/输出系统的组成输出系统的组成传统的FAT文件系统根据其发展历程,可分为可分为FAT16FAT16和和FAT32FAT32。FAT16是Microsoft较早推出的文件系统,具有高度兼容性,目前仍然广泛应用于个人计算机,尤其是移动存储设备中。FAT表是FAT16用来记录磁盘数据区簇链结构的。FAT将

28、磁盘空间按一定数目的扇区为单位进行划分,这样的单位称为簇。通常情况下,每扇区512字节的原则是不变的。簇的大小一般是2n(n为整数)个扇区的大小,如512B、1KB、2KB、4KB、8KB、16KB、32KB、64KB等。实际中通常不超过32KB。之所以用簇为单位而不以扇区为单位进行磁盘的分配,是因为当分区容量较大时,采用512B的扇区管理会增加FAT表的项数,存取大文件时消耗增加,文件系统效率不高。文件系统发展历程簇链结构12.1.612.1.6 WindowsWindows文件系统文件系统1)FAT1)FAT文件系统文件系统12.1.612.1.6 WindowsWindows文件系统文件

29、系统2)NTFS2)NTFS文件系统文件系统NTFSNTFS(new technology file systemnew technology file system)是Windows NT以及之后的Windows 2000、Windows XP、Windows Server 2003、Windows Server 2008、Windows Vista和Windows 7的标准文件系统。NTFS取代了FAT文件系统,作为Microsoft的Windows系列操作系统的文件系统。NTFSNTFS中所有存放的数据均在一个叫做主文件表中所有存放的数据均在一个叫做主文件表(master file ta

30、ble,MFT)的文件中。而MFT则由文件记录(file record)数组构成。文件记录的大小一般是固定的,通常情况下均为1 KB,这个概念相当于Linux中的inode。文件记录在MFT文件中物理上是连续的,且从0开始编号。NTFSNTFS除了克服除了克服FATFAT系统在容量上的不足外系统在容量上的不足外,主要出发点是立足于设计一个服务器端适用的文件系统,在保持向后兼容性的同时,还要求有较好的容错性和安全性。可恢复性:可恢复性:NTFS提供了基于事务处理模式的文件系统恢复,并支持对重要文件系统信息的冗余存储,满足了用于可靠的数据存储和数据访问的要求。安全性:安全性:NTFS利用操作系统提

31、供的对象模式和安全描述体来实现数据安全性。文件加密:文件加密:加密文件系统(encrpyting file system,EFS)能对NTFS文件先进行加密再存储到磁盘上。数据冗余和容错:NTFS借助于分层驱动程序模式提供容错磁盘,RAID技术允许借助于磁盘镜像技术,或通过奇偶校验和跨磁盘写入来实现数据冗余和容错。大磁盘和大文件:大磁盘和大文件:NTFS采用64位分配簇,从而大大扩充了磁盘卷容量和文件长度。多数据流:多数据流:在NTFS中,每一个与文件有关的信息单元,如文件名、所有者、时间标记、数据等,都可以作为文件对象的一个属性,所以NTFS文件可包含多数据流。这项技术为高端服务器应用程序提

32、供了增强功能的新手段。12.1.612.1.6 WindowsWindows文件系统文件系统NTFSNTFS具有以下的特性。具有以下的特性。基于基于UnicodeUnicode的文件名:的文件名:NTFS采用16位的Unicode字符来存储文件名、目录和卷,适用于各个国家与地区,每个文件名可以长达255个字符,且可以包括Unicode字符、空格和多个句点。通用的索引机制:通用的索引机制:NTFS的体系结构被组织成允许在一个磁盘卷中索引文件属性,从而可以有效地定位匹配各种标准文件。在Windows中,这种索引机制被扩展到其他属性,如对象ID。对属性(如基于OLE上的复合文件)的本地支持,包括对这

33、些属性的一般索引支持。属性作为NTFS流在本地存储,允许快速查询。动态添加卷磁盘空间:动态添加卷磁盘空间:增加了不需要重新引导就可以向NTFS卷中添加磁盘空间的功能。动态坏簇重映射:动态坏簇重映射:可加载的NTFS容错驱动程序可以动态地恢复和保存坏扇区中的数据。磁盘配额:磁盘配额:NTFS可以针对每个用户指定磁盘配额,从而提供限制使用磁盘存储器的能力。12.1.612.1.6 WindowsWindows文件系统文件系统NTFSNTFS具有以下的特性。具有以下的特性。稀疏文件:稀疏文件:用户能够创建文件,并且在扩展这些文件时不需要分配磁盘空间就能将这些文件扩展为更大。另外,磁盘的分配将推迟至指

34、定写入操作之后。压缩技术:压缩技术:能对文件数据和目录进行压缩,节省了存储空间。文本文件可压缩50%,可执行文件可压缩的40%。分布式链接跟踪:分布式链接跟踪:NTFS支持创建、指定和保留文件或目录的唯一ID。通过使用唯一的ID实现分布式链接跟踪。这一功能将改进当前的文件引用存储方式(如在OLE 链接或桌面快捷方式中)。重命名目标文件的过程将中断与该文件的链接。重命名一个目录将中断此目录中的所有文件链接及此目录下所有文件和目录的链接。POSIXPOSIX支持:支持:如支持区分大小写的文件名、链接命令、POSIX时间标记等。在Windows中,还允许实现符号链接的重解析点、仲裁文件系统卷的装配点

35、和分层存储管理(HSM)。12.1.612.1.6 WindowsWindows文件系统文件系统NTFSNTFS具有以下的特性。具有以下的特性。LinuxLinux操作系统12.212.212.2 LinuxLinux操作系统操作系统LinuxLinux是是在在日日益益普普及及的的互互联联网网上上迅迅速速形形成成和和不不断断完完善善的的操操作作系系统统。Linux操作系统高效、稳定,适应多种硬件平台,而最具有魅力的是它遵循GNU(GNUs not UNIX)通用公共许可协议(general public license,GPL),整个系统的源代码可以自由获取,并且在GPL许可的范围内自由修改、

36、传播。12.2.112.2.1 LinuxLinux系统的发展系统的发展 LinuxLinux是是在在UNIXUNIX的的基基础础上上发发展展而而来来的的。1991年,一个名叫Linus Torvalds的芬兰赫尔辛基大学的大学生想要设计一个代替Minix(是由一位名叫Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有UNIX操作系统的全部功能,因而开始了Linux雏形的设计。现现在在LinuxLinux内内核核GNU/LinuxGNU/Linux附附同同GNUGNU工工具具已已经经占占据据了

37、了UNIX UNIX 50%50%的的市市场场。一些公司正在把内核和一些应用程序同安装软件打包在一起,生产出Linux的Distribution(发行版本),这些公司包括Red Hat和Calera Prominent公司。现在的GNU/Linux已经备受注目,得到了Sun、IBM、SGI等公司的支持。12.2.212.2.2 LinuxLinux进程管理进程管理在Linux系统中,进程被称为任任务务。Linux是一个典型的多用户、多任务的操作系统。多用户是指多个用户可以在同一时间使用计算机系统;多任务是指Linux可以同时执行几个任务,它可以在还未执行完一个任务时又执行另一个任务。存放在磁盘

38、上的可执行文件的代码和数据的集合称为可执行映象(executable image)。当它被装入系统中运行时,就形成了一个进程。12.2.212.2.2 LinuxLinux进程管理进程管理正文段(text)是存放了程序代码的数据,假如机器中有数个进程运行同一个程序,那么它们就可以使用相同的正文段,正文段具有只读的属性。用 户 数 据 段(user segment)是进程在运行过程中处理数据的集合,它们是进程直接进行操作的所有数据(包括全部变量在内),以及进程使用的进程堆栈。系 统 数 据 段(system segment)存放进程的控制信息,即进程控制块(PCB)。Linux中进程控制块是名字

39、为task_struct的数据结构,它称为任务结构体。任务结构体是进程存在的唯一标志,其中包括了一个进程的所有信息,是系统对进程进行管理和控制的有效手段,是系统实现进程调度的主要依据。LinuxLinux进程由正文段、用户数据段和系统数据段进程由正文段、用户数据段和系统数据段3 3个部分组成。个部分组成。正文段正文段用户数据段用户数据段系统数据段系统数据段进程运行时能访问的存储空间只是它的虚拟内存空间进程运行时能访问的存储空间只是它的虚拟内存空间。对当前进程而言只有属于它的虚拟内存是可见的。进程的虚拟内存包含进程本身的程序代码、数据,以及操作系统内核。LinuxLinux把进程的虚拟内存分成内

40、核空间和用户空间两个部分把进程的虚拟内存分成内核空间和用户空间两个部分。在Linux中,每个用户进程都可以访问4 GB的线性虚拟内存空间。其中0(3 GB-1)的虚存地址是用户空间,用户进程可以直接访问。3 GB(4 GB-1)的虚存地址为内核空间,存放供操作系统内核访问的代码和数据,用户态进程不能访问。所有进程3 GB(4 GB-1)的虚拟空间都是一样的,Linux以此方式让内核进程共享代码段和数据段。进程虚拟内存数据段12.2.312.2.3 LinuxLinux内存管理内存管理12.2.312.2.3 LinuxLinux内存管理内存管理vma在虚存中的起始地址和终止地址。vma段内容来

41、源,如磁盘文件由其inode指示。一系列对vma操作的例程。同一进程的vma段的vm_area_struct结构通过vm_next指针连接组成链表。系统以虚拟内存地址的降序排列vm_area_struct结构。这样建立了文件的逻辑地址到虚拟线性地址的映射。LinuxLinux用数据结构用数据结构vm_area_structvm_area_struct描述了虚存段的属性,它主要包括以下几部分。描述了虚存段的属性,它主要包括以下几部分。12.2.412.2.4 LinuxLinux设备管理设备管理LinuxLinux设备管理的主要任务是控制设备完成输入设备管理的主要任务是控制设备完成输入/输出操作

42、输出操作,所以又称输入/输出(I/O)子系统。它的任务是把各种设备硬件的复杂物理特性的细节屏蔽起来,提供一个对各种不同设备使用统一方式进行操作的接口。在在LinuxLinux系统中设备都是按照系统中设备都是按照文件的方式命名的文件的方式命名的,每一个设备是一个特殊类型的文件,从用户使用的角度看,对设备的访问也等同于对文件的访问,具体的设备操作由文件系统根据情况映射到具体的设备驱动程序来完成。设备管理是设备管理是LinuxLinux操作系统管理中最复杂的部分操作系统管理中最复杂的部分。在Linux系统中,I/O软件和文件系统是紧密联系的,文件系统提供了用户访问设备、进行数据I/O操作的一致性接口

43、,这个部分是设备独立的,用户可以采用统一的方式访问不同的设备,从而将硬件设备的特性及管理细节对用户隐藏起来,文件系统实现了设备管理的设备无关性。所有的设备都采用和文件相同的访问权限控制方法,这种访问权限控制和用户联系在一起,有效地实现了设备的保护和设备数据的保密。缓冲区管理和设备分配也由文件系统完成。12.2.512.2.5 LinuxLinux文件系统文件系统LinuxLinux的最重要特征之一就是支持多种类型的文件系统的最重要特征之一就是支持多种类型的文件系统。这样它更加灵活并可以和许多其他种操作系统共存。Linux的虚拟文件系统(VFS)屏蔽了各种文件系统的差别,为处理各种不同文件系统提

44、供了统一的接口。在在一一般般操操作作系系统统的的文文件件系系统统中中,目录项由文件名和属性、位置、大小、建立或修改时间、访问权限等文件控制信息组成。Linux继承了UINX的文件管理方法,把文件名和文件控制信息分开管理,文件控制信息单独组成一个称为i节点(inode)的结构体。LinuxLinux文件系统采用了多级目录的树型层次结构管文件系统采用了多级目录的树型层次结构管理文件理文件,树型结构的最上层是根目录,用表示。在根目录之下是各层目录和文件。在每层目录中可以包含多个文件或下一级目录。每个目录和文件都有由多个字符组成的目录名或文件名。LinuxLinux有有5 5种基本文件类型:种基本文件类型:普通文件、目录文件、设备文件、管道文件和链接文件,可用file命令来识别。在Linux系统下,用户的密码文件存储在etc/passwd中。VFSVFS的主要功能如下。的主要功能如下。(1)记录可用的逻辑文件系统类型。(2)对逻辑文件系统的数据结构进行抽象,以一种统一的数据结构进行管理。(3)接受进程一些面向文件的通用操作。(4)接受内核其他子系统的操作请求。(5)支持多种逻辑文件系统之间的相互访问。系统类型通用操作相互访问12.2.512.2.5 LinuxLinux文件系统文件系统习题习题1 1)选择题)选择题2 2)填空题)填空题3 3)解答题)解答题感感 谢谢 观观 看看

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

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁