第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)