当前位置:文档之家› 第二章操作系统的基本原理

第二章操作系统的基本原理

第二章操作系统的基本原理
一、本章需要熟练掌握的内容
1、计算机四大系统资源的管理机制:处理器、存储器、外围设备和文件四大资源的管理。

注重对基本概念的理解:
2、进程
(1)、进程是指一个可并发执行的程序(或程序段)在给定的工作空间和数据集合上的一次执行过程。

它是操作系统进行资源分配和调度的一个独立或基本单位。

(2)、进程是动态的,它由操作系统创建并独立地执行,在执行过程中可能因某个条件不足而被暂时“阻塞”,当条件满足时又被“唤醒”并继续执行,直到任务完成而“撤销”。

因此,进程有生命期,并在不同的状态之间动态地转换。

(3)、进程的并发特征是指一个进程能和其它进程并行执行,但各进程在逻辑上又相对独立,同时各进程的执行速度是不可预知的、异步的。

因此,系统必须为进程提供同步机构,以确保进程能协调操作和共享资源。

(4)、一个进程至少要对应一个或多个程序。

不同的进程可以调用同一个程序,但该程序必须在不同的数据集合上执行。

(5)、程序和进程的关系在于:程序是指令的有序集合,是静态的。

程序的执行过程才是进程。

3、线程:在现代操作系统中,为了进一步提高进程的并发性,引入了线程(Thread)的概念。

简单地说,一个进程可以包含多个线程,此时线程成为处理器调度的基本单位。

4、页式存储:
页式存储基本原理是预先把内存物理空间分成大小相等的存储“块”,比如每块为1k字节,并编上号码,同时把要运行程序的逻辑地址空间分成与“块”大小相同的“页”,也编上号码。

当把程序调入内存时,恰好把程序的某一“页”装入内存某一“块”,而且可以见缝插针地将若干连续的页装入分散的不连续的块中。

由于页和块大小相等,所以除了最后一页可能小于块之外,其余都很合适,这样每一个内存碎片的大小不会超过一“块”的大小。

页式虚拟存储就是把内存和外存作为一个整体连续起来划分成块。

在一个进程运行前,不必将其所有页装入内存,而只需先装入当前要运行的若干页。

在运行过程中。

一旦发现所需要的程序页不在内存时,便请求系统分配存储块,然后将所需页从外存调入,并在页表中登录新调入的页号与对应的块号。

这一调度过程在操作系统控制下自动实现的,用户无须干预。

5、虚拟存储:
当所运行进程需要较大的内存空间,而内存空间又有限时,存储管理提供虚拟存储的功能,将内存和大容量外存有机地结合起来,建立虚拟内存(VM:Virtual Memory),从而大大地扩展程序可运行空间。

虚拟存储的概念可从两个角度来理解。

从逻辑存储空间角度看,程序的大小不定,经过编译连接后的目标程序地址多是从零地址开始的一维连续或二维段页式地址。

这是一种虚拟地址或逻辑地址,它们都不是程序运行时的真正物理地址。

我们把程序逻辑地址的全体所对应的存储器称为虚拟存储器,简称虚存。

虚存地址空间大小有可能会超过实际物理内存空间。

从程序设计者角度看,虚拟存储器就是把内存和外存作为一个整体连续起来划分,当内存空间不足时,参与当前运行的部分程序可以暂存在外存中,一旦需要及时调入内存,而已经在内存中的部分程序目前可能不再使用,可以保存到外存。

这样程序设计者不必忧虑内存是否够用,因为有巨大容量的外存可供使用。

虚拟存储管理的工作就是及时恰当地调入调出当前程序,为进程提供“透明”的存储空间。

6、段式存储管理:
段式存储把其地址空间在逻辑上划分成若干个段(segment),如代码段、数据段、共享段等,这时用户程序的逻辑地址空间可以看成二维空间,其中一维是段号,另一维是段内从0开始的地址。

利用连续可变分区或可重定位分区管理方式,为每一个段分配一个连续分区,而各段之间可以不连续。

“段”成为程序的逻辑单位,它是由程序设计人员规定的,其长度随程序的不同而不同。

在分段存储管理中对每个进程需要建立一个进程段表,记录该进程各段的段号与段起始地址的对应关系。

在硬件上需要设立段表地址寄存器来保存进程的段表在内存中的起始地址和段表长度,每个段都需要一个这样的段表地址寄存器。

7、段页式存储管理:段页式存储管理综合了段式和页式存储技术的特点。

在这种管理方式下,程序在地址空间中先分段,然后将每一段再分页,这样,同一段中的各页可以不连续存放,也不需要整段同时调入内存。

8、覆盖与交换:
所谓覆盖技术,就是使一个程序的若干个数据段或程序段按照时间先后占用内存空间的某一部分。

交换技术(swapping)是另外一种扩展内存空间的技术。

当多个程序并发执行时,将暂时不需要的程序送到外存中,剩余空间用来装载新的需要即将投入运行的程序。

9、设备的输入/输出方式:
(1)、程序查询方式
(2)、中断控制方式
(3)、直接存储器存取方式
(4)、通道处理方式
10、设备管理技术:
(1)、缓冲区技术
(2)、假脱机技术
(3)、设备虚拟化技术
11、设备的分配:
设备分配程序根据相应的分配策略或算法来为不同的进程分配设备。

为了高效利用外设资源,首先必须对所有外设有一个清楚的描述,包括它们的类型、标识、当前占用状况等,这就是设备分配时的数据结构,称为设备状态描述表列。

其次设备的分配必须遵循一定的分配原则和策略。

(1)、设备状态描述表列
(2)、设备的分配原则和策略
(3)、设备输入输出进程控制
12、文件结构:
文件是一个在逻辑上具有完整意义的一组相关信息的有序集合。

文件的结构即文件的组织形式,可分为逻辑结构和物理结构。

文件的逻辑结构从用户的角度看是独立于文件物理特性的一种组织形式,它又可分为记录式和流式。

文件的物理结构是指文件存放在外存储器(磁盘)中的组织形式。

13、目录结构:
(1)、单级目录结构
单级目录结构较简单,是一张线性表。

把系统中的所有文件属性信息都建立在一张单一的目录表中。

(2)、二级目录结构
从数据结构看,二级文件目录是一个树形结构,它由根(主目录)、结点(用户文件子目录)和叶(用户文件)所组成。

主目录存储了各子目录的名称、物理地址等,用户子目录则是与单级目录类似结构的文件目录。

(3)、多级目录结构
多级目录结构是现代操作系统最常用的目录结构,它是由主目录、用户子目录及子目录下的子目录等多级子目录组成的树型结构,它是二级目录的推广。

二、本章需要掌握的内容
1、Windows 2000操作系统的系统资源管理。

(1)、Windows 2000/XP的进程调度
Windows 2000/XP中的进程是系统资源分配的基本单位。

在一个进程内可能会出现若干个线程来分享进程得到的资源,因此处理器调度的最小对象是线程。

Windows 2000/XP提供一组控制进程对象的服务,通过读取进程对象的属性(如进程标识、资源访问令牌、优先级等)得到该进程状态,又通过向进程对象发送消息来控制进程对象。

在Windows 2000/XP中描述一个进程对象的基本信息包括:线程列表、进程地址空间列表、进程控制对象列表。

其中进程控制对象列表通过对象句柄列表控制进程,相当于进程控制块的作用。

而每一个线程都会分享得到进程地址空间的一部分资源,再加上对处理器的调度控制,让线程的状态得以在就绪、运行、等待、备用等状态之间转换,实现了对线程的控制。

(2)、Windows 2000/XP内存管理
Windows 2000/XP的内存管理是通过文件Ntoskrnl.exe中的内存管理器来实现的。

32
位的Windows 2000/XP可提供最大2GB的用户进程内存空间,特殊情况下可支持到3GB,其余的空间被系统进程占用。

对于用户内存空间的分配,Windows 2000/XP提供了三种方式:一是以页为单位来分配内存;二是以内存映射文件的方法来分配内存;三是以内存堆的方法来分配内存。

三种方式各有适用场合。

Windows 2000/XP还提供了内存保护机制,防止进程间的相互干扰或破坏。

如当用户态进程试图访问核心态进程页面时硬件会产生错误信息;对于共享的内存区域采用设置存取控制表(ACL)的方法进行权限限制等。

(3)、Windows 2000/XP主要支持FAT和NTFS两种文件系统。

相关主题