第4章 存储器管理

4.1 存储器管理引言(P98)

 * 内存:CPU能直接存取指令和数据的存储器,

         由字或字节构成的一维数组。

 * 内存在计算机系统中的地位:

   CPU—内存—I/O系统—显示器、打印机。

4.1.1 存储器的层次

外存
存取慢
例如80GB

——→

←——

内存
例如512MB

——→

←——

高速缓存器
存取快
例如512KB

能与内存交换程序和数据

能与CPU交换程序和数据

4.1.2 用户程序的主要处理阶段(P99)

用户

编辑
程序

编译
程序

连接
程序

装入
程序

进程
运行

用vi编辑
源文件
file1.c

编译源文件
cc file1.c
得到
目标文件
file1.o

连接目标文件
ld file1.o
得到
可执行文件
myprog.exe

把可执行文件
myprog.exe
装入内存

执行内存中
可执行文件

 4.装入阶段(P101)

  * 相对地址(逻辑地址)

    用户程序经编译后的目标模块以0为基地址顺序编排的地址。

  * 绝对地址(物理地址)

    内存中各物理存储单元的地址从统一的基地址顺序编排的地址。

  * 重定位

    把逻辑地址转变为内存的物理地址的过程。

4.1.3 重定位(P101)

  * 逻辑地址空间(地址空间)

    由程序逻辑地址组成的地址范围。

  * 物理空间(绝对空间)

    由内存中一系列存储单元所限定的地址范围。

 * 程序A装入内存时的情况(P102)

地址空间

内存空间

0

 

0

 

100

LOAD 1,500

5000

 

 

 

500

12345

5100

LOAD 1,5500

 

 

700

 

5500

12345

 

5700

 

 * 地址100号单元的指令LOAD 1,500。

   把500号单元数据12345装到寄存器1。

 * 程序装入内存后进行了地址变换。

   地址5100号单元的指令LOAD 1,500。

   把5500号单元数据12345装到寄存器1。

 1.静态重定位

   由装入程序把程序的逻辑地址都改成实际的内存地址,

   装入时一次完成。

 2.动态重定位

   由硬件地址变换机构在程序执行期间

   每次访问内存之前进行重定位。

0

 

重定位
寄存器
5000

0

 

100

LOAD 1,500

—→

相对地址
500

—→

+

5000

 

 

|

 

500

12345

|

5100

LOAD 1,5500

 

|

 

700

 

—→

5500

12345

 

5700

 

4.2 存储管理基本技术

4.2.1 分区法(P104)

 1.固定分区法

   内存中分区的个数和分区的大小固定不变。

 2.动态分区法

   内存中的分区在作业进入内存时建立,其大小适应作业大小。

4.2.2 可重定位分区分配(P107)

 * 碎片:内存中容量太小、无法被利用的小分区。

 * 紧缩:集中已分配区,留出空闲区。

4.2.3 对换技术(P110)

 * 对换技术:

   在多道程序环境中,内存中保留多个进程。

   系统把内存中暂时不能运行的进程换出到外存上,

   把具备运行条件的进程从外存换到内存中。

4.3 分页存储管理技术

4.3.1 虚拟存储器的概念(P111)

 * 虚拟存储器(Virtual Memory)

   扩充内存物理的地址空间,把程序当前不使用的部分放在磁盘上。

 * 虚拟存储器的基本特征

   虚拟扩充、部分装入、离散分配、多次对换。

4.3.2 分页的概念

 1.分页存储管理的基本概念(P114)

   分页存储管理的基本方法

 (1)逻辑空间分页:将进程的逻辑地址空间划分成大小相等的页面。

 (2)内存空间分块:把内存划分成与页面相同大小的内存块。

 (3)逻辑地址表示

31

12

11

0

页号(p):1M个页面

页内地址(d):4KB地址

  * 逻辑地址的页号p和页内地址d的计算公式

    页号p=INT[A/L]

    页内地址d=[A] MOD L

    其中:A为逻辑地址,L为页面大小。

  已知:A=3456   L=1KB

  求:页号p、页内地址d

逻辑地址A

0

1024

2048

3072

3456

页号p

 

p=1

p=2

p=3

页内地址d=384

  (4)内存分配原则(P115)

    进程的页分别装入物理上不相邻的内存块中。

地址空间
作业1

页表
页号   块号

内存空间

块号

0页

—→

0

3

     

 

0

1页

—→

1

5

 

1

3页

—→

2

6

 

2

4页

—→

4

10

作业1,0页

3

 

 

 

 

4

 

 

 

作业1,1页

5

 

 

 

作业1,2页

6

  2.分页系统中的地址映射(P116)

  * 把页号对应页表中的物理块号f装入物理寄存器,

    页内地址d送入物理地址寄存器的块内地址字段。

逻辑地址

物理地址

内存空间

┌—
↓     

——————

———

—┐
    ↓

 

CPU

——→

页号p

页内地址d

块号f

页内地址d

——→

 


|  

页表
页号   块号

 ↑
 |

 

|  

0

3

 |

 

|  

1

5

 |

 

|  

 

 

 |

 

└——

———→

p

f

—┘

 

自测题(P140)

  3.名词解释(P281)

   物理地址、逻辑地址、逻辑地址空间、内存地址、重定位、

   静态重定位、动态重定位、碎片、紧缩、可重定位地址。

 8.在分页系统中页面大小由谁决定?页表的作用是什么?

   如何将逻辑地址转换成物理地址?(P282)

10.已知:每页为1kB,页号(0、1、2、3)

              对应的块号(5、10、4、7),

   求:逻辑地址0A5C(H)对应的物理地址?(P115)

13.已知:段表

   求:逻辑地址对应的物理地址。(P126)

 

第5章 文件系统

5.1 概述

5.1.1 文件及其分类(P143)

 1.文件

   文件(file):被命名的数据的集合体。

 2.文件类型

   按用途分类:系统文件、库文件、用户文件。

   按数据形式分类:源文件、目标文件、可执行文件。

   按存取权限分类:只读文件、读写文件、可执行。

   按保存时间分类:临时文件、永久文件。

   按文件构造和处理方式分类:普通文件、目录文件、特别文件。

5.1.2 文件系统的功能(P145)

 * 文件系统:操纵和管理文件,实现文件的共享和保护,按名存取。

 * 文件系统功能:文件管理、目录管理、文件存储空间的管理、

   文件的共享和保护、提供方便的接口。

5.2 文件的逻辑组织和物理组织

5.2.1 文件的逻辑组织(P146)

 1.有结构文件

   定长记录文件、变长记录文件。

 2.无结构文件

   有序字符流,如源程序、可执行程序、库函数。

5.2.2 用户对文件的存取方法(P147)

 * 顺序或随机存取方法。

5.2.3 文件的物理组织(P149)

 * 连续文件、串连文件、索引文件、多重索引文件。

5.3 目录文件

5.3.1 文件控制块和文件目录(P153)

 1.文件控制块

   文件名、文件类型、位置、大小、保护信息、使用计数、时间。

 2.文件目录

   文件名——外存物理位置映射。

5.3.2 目录结构(P154)

 * 单级和二级目录结构

 * 树形目录:绝对路径、相对路径。

5.4 文件存储空间的管理(P159)

 * 空闲空间表法、空闲块链接法、位示图法。

5.5 文件的共享和文件系统的安全性

5.5.2 文件的存取控制(P167)

文件主 同组用户 其他用户
读r 写w 执行x 读r 写w 执行x 读r 写w 执行x
1 1 1 1 1 0 1 0 0
可以读写执行 可以读写 可以读

5.6 UNIX文件的主要操作及其命令

5.6.1 普通文件的操作

 2.文件显示命令(P171)

   cat显示或连接文件,如 $ cat a.c

   more分屏显示文件,如 ls -l |more

   head显示文件前几行,默认10行,如 head a.c

   tail显示文件后几行

   pr向屏幕输出,如 pr a.c

 2.文件的复制、删除和移动(P172)

   cp复制,如 cp a.c b.c

   mv移动或重命名,如 mv a.c d.c

   rm删除文件或目录,如 rm d.c

5.6.2 目录文件的操作

 2.目录的创建和删除(P174)

   mkdir, rmdir

 3.目录的显示、复制和改变工作目录

   ls, copy, cd,

 4.改变文件存取权限(P175)

  * 符号方式

    格式:chmod 用户身份 操作符号 权限 文件名

    举例:chmod o + r file1

    说明:使其他用户对文件file1有读权限。

  * 绝对方式

    格式:chmod 权限数字 文件名

    举例:chmod 754 file1

    说明:将文件file1的存取权限置为754,即rwxr-xr--。

 

自测题(P184)

 2.一般说来,文件系统应具备哪些功能?(P283)

 4.什么是文件的逻辑组织和物理组织?文件的逻辑组织有几种形式?

   (P283)

 5.文件的物理组织形式主要有哪几种?各有什么优缺点?(P284)

 7.什么是文件控制块?它与文件有何关系?(P284)

 

第6章 设备管理

6.1 设备管理概述

6.1.1 设备分类和标识(P186)

 1. 设备分类:

    存储设备用于存储信息。

    输入/输出设备用于输入/输出信息。

 2. 设备标识:

    设备绝对号是系统为设备指定的惟一代号。

    设备相对号是用户自己规定的设备序号。

6.1.2 缓冲技术(P187)

 1.缓冲技术的引入

   缓冲技术的目的:

 (1)缓和CPU与外设间速度不匹配的矛盾。

 (2)提高CPU与外设之间的并行性。

 (3)减少对CPU的中断次数。

 2.缓冲区的设置

   缓冲由硬件或软件来实现。有单缓冲、双缓冲、多缓冲。

6.1.3 I/O系统的结构(P189)

 1.主机I/O系统

   主机I/O系统的四级结构:主机、通道、控制器和外部设备。

   控制器:交替控制几台同类设备的电子部件。

   通道:专门处理I/O操作的机构。

 2.微型机I/O系统

   利用总线I/O系统结构连接CPU、内存、控制器和I/O设备。

6.1.4 设备管理的功能(P190)

 1.设备管理的目标:

   使用方便、与设备无关、效率高、管理统一。

 2.设备管理的功能:

   监视设备状态、进行设备分配、完成I/O操作、

   缓冲管理与地址转换。

6.2 设备分配技术

6.2.1 设备分配技术(P192)

 1.与设备分配相关的因素

   设备的固有属性、分配算法、防止死锁、设备无关。

 2.设备分配技术:

   独占分配:分配独占设备(如打印机)。

   共享分配:分配共享设备(如磁盘机)。

   虚拟分配:

  分配虚拟设备,使用SPOOLing系统(同时外围联机操作)。

    利用共享设备模拟独占设备。

 3.设备分配算法:

   先来先服务法:以申请时间先后为序。

   优先级高的优先服务:以优先级高低为序。

6.3 输入输出管理

6.3.1 处理输入输出请求的步骤(P196)

 1.用户进程发出I/O请求

 2.转去执行操作系统的核心程序

 3.设备驱动程序是控制设备动作的核心模块

 4.I/O完成后,由通道或设备产生中断信号

6.3.2 设备驱动程序功能

 接受I/O请求,分配相应设备,启动设备工作,处理设备中断。

6.4 UNIX常用设备安装和管理

6.4.1 打印机的安装和管理(P199)

 1.打印机的安装

   端口设置:串口COM1,主并口设备名/dev/lp0。

   添加打印机到系统中,打印机配置。

6.4.2 终端的安装和管理(P205)

 1.终端的安装

   连接终端,设置终端,开启终端。

 2.终端的管理(P206)

   终端配置文件,改变串行线特性,设置终端类型,

   改变主控台,禁用终端。

 

自测题(P209)

 1.什么是存储设备?什么是输入/输出设备?

   UNIX系统中对设备怎样分类?(P286)

 2.UNIX系统中主次设备号各表示什么含义?(P286)

 3.为什么要引入缓冲技术?设置缓冲区的原则是什么?(P286)

 4.操作系统中设备管理的功能是什么?(P286)

 8.设备驱动进程主要执行什么功能?(P287)