操作系统学习基本概念汇总

        操作系统又是一门计算机专业必学的专业课之中的一个。相同对于非常多考研统考的同学来说也是必考的课程。本篇帖子是我大学时期整理的操作系统的基本知识点。足以应付大学时代的期末考试。

1. 存储管理研究课题的四个方面:

 

(1) 存储分配问题:重点是研究存储共享和各种分配算法

(2) 地址再定位问题:研究地址变换机构,以及动态和静态再定位方法

(3) 存储保护问题:研究保护各类程序。数据区的方法

(4) 存储扩充问题:研究虚拟存储区和调度算法

 

2. 程序中由符号名组成的空间称为名空间。

3. 相对地址也叫逻辑地址或虚地址。把程序中由相对地址组成的空间叫做逻辑地址空间。逻辑地址空间通过地址再定位机构转换到绝对地址空间。

绝对地址空间也叫物理地址空间。

4. 一个逻辑地址空间的程序装入到物理地址空间时。因为两个空间不一致。就须要进行地址变换。或称地址映射。即地址的再定位。

5. 地址再定位两种方式:

 

(1) 静态再定位

(2) 动态再定位

 

6. 静态再定位是在程序运行之前进行地址再定位。

通常由装配程序完毕。

无需硬件支持。

7. 静态再定位缺点:

 

(1) 程序再定位后不能再移动。不能又一次分配内存。

(2) 存储空间仅仅能连续分配。不能分布在内存的不同区域。

(3) 用户非常难共享同一程序。

 

8. 动态地址再定位是在程序运行期间。在每次存储訪问之前进行的。要硬件支持。

9. 动态再定位长处:

 

(1) 程序在内存中能够移动。

(2) 程序不必连续存放,能够在内存的不同区域。

(3) 能够共享程序。

 

10. 自己主动覆盖:大作业程序在运行时。有一部分地址空间在主存,还有一部分在辅存。当訪问的信息不在主存时,由操作系统把它从辅存调入主存。

11. 虚拟存储器实际上是一个地址空间。

12. 一个虚存的最大容量由计算机的地址结构确定。

13. 虚存容量能够比实存大,也能够比实存小。

一个系统能够为每一个用户建立一个虚存,每一个用户能够在自己的地址空间(最大容量为虚存容量)内编程。

14. 早期的存储管理:

 

(1) 单一连续分配

(2) 分区分配

 

15. 页面:逻辑地址空间划分的相等的片。

16. 块:物理地址空间划分为相同大小的片。

17. 一个作业的逻辑地址空间的全部页面是邻接的,变换到物理存储空间的各块能够不邻接。

18. 地址变换机构:

 

(1) 动态地址变换机构 DAT

(2) 快速页面变换寄存器

(3) 联想寄存器(快表)

 

19. 页表在主存中。由操作系统管理。

每条指令的运行必须进行地址变换。

20. 在联想存储器中,存放正执行作业最经常使用的页号和对应块号。有并行查询能力。

21. 分页管理要建立的表格(数据结构):

 

(1) 作业表JT

(2) 存储分块表MBT

(3) 页面变换表PMT

 

22. 作业表。整个系统一张表,每一个作业在作业表中相应一个表目,包含作业的页表始址、页表长度和状态信息。

23. 存储分块表。整个系统一张表。一个表目相应一个存储块,记录该块是否分配。

24. 页面变换表:一个作业一张表。一个表目相应一个页面。

25. 分页存储管理没有解决存储扩充问题。当一个作业不能全然装入内存时,是不能执行的。

 

 

 

 

26. 虚页:作业地址划分的页

27. 实页:主存称为实存,实存中的块。

28. 请求分页存储管理:分页存储管理依据请求装入所需的页面。

29. 由硬件产生缺页中断。转入中断处理程序。

30. 当处理机要运行一条指令时,首先形成操作数的有效地址,然后计算页号,检查页表是否在实存中。如在。则进行地址变换。按变换后的地址取出操作数。完毕指令的功能,然后将继续下一条指令的运行。

如不在,引起缺页中断,进入中断处理程序。

31. 出页:某一页从实存移到辅存

32. 入页:某一页从辅存调入实存

33. 抖动,系统颠簸,重复进行出页和入页。浪费大量处理机时间。

34. 各种页面置换算法。做题!

35. 程序应具有较高的局部化程度。这样程序运行时可常常集中在几个页面上进行訪问。降低缺页中断次数。

36. 程序要有效的执行,它在主存中的页面数不应低于总页面数的一半。

37. 2次訪内:分页存储管理、请求分页存储管理、分段存储管理

38. 3次訪内:段页式存储管理

39. 了解分段存储管理、段页式存储管理

40. Windows NT使用了请求分页存储管理和FIFO的页面调度算法。

41. Windows NT的页面大小为4K。

42. Windows NT的虚拟存储管理程序是NT运行体的重要组成部分之中的一个。是Windows NT的基本存储管理系统。

43. Windows NT执行在32位的386以上的微机上。所以每一个进程都有4GB(2的32次)的虚拟地址空间。

44. 虚拟地址空间的4GB被分成两部分。

高地址的2GB保留给系统使用。而低地址的2GB才是用户的存储区,这个存储区可被用户态和核心态的线程訪问。

45. 系统区分为三部分:

 

(1) 最上部分的固定页面区。称为非页交换区,用于存放永不换出内存的页面。

(2) 第二部分是页交换区,存放很驻内存的系统代码和数据。

(3) 最后是直接映射区,由硬件直接交换。这些页面常驻内存永不失效。

 

46. 虚拟存储管理的实现包含两个方面:

 

(1) 地址变换机构

(2) 页面调度策略

 

 

 

 

 

 

 

1. 文件是一个具有符号名的一组相关联元素的有序序列。

2. 文件里的“元素”是可编址的最小信息项目(字或字节)。

3. 一个文件由若干个称为逻辑记录的最小单位组成。记录是一个有意义的信息集合,它是作为对文件进行存取操作的基本单位。

4. 一个文件的各个记录的长度能够相等也能够不相等。

5. 慢速字符设备也是一个文件。如键盘输入文件、打印机文件

6. 操作系统中负责管理和存取文件信息的软件机构称为文件管理系统,简称文件系统。

7. 文件系统三部分组成

 

(1) 与文件管理有关的软件

(2) 被管理的文件

(3) 实施文件管理所需的数据结构

 

8. 在操作系统中增设了文件管理部分后,为用户带来的优点:

 

(1) 使用的方便性:实现了按名存取。

(2) 数据的安全性:提供保护措施,防止有意无意的破坏文件。

(3) 接口的统一性:能够使用统一的广义指令或系统调用来存取各种介质上的文件。

 

9. 文件按性质和用途分为:

 

(1) 系统文件

(2) 库文件

(3) 用户文件

 

10. 系统文件:对用户不直接开放,仅仅能通过系统调用为用户服务。

11. 库文件:同意用户调用,但不同意用户改动。

12. 用户文件:由用户托付操作系统保存的文件。

 

13.用户文件依据使用情况分为:

 

 

(1) 暂时文件

(2) 档案文件

(3) 永久文件

 

13. 依据文件的保护形式分为:

 

(1) 仅仅读文件

(2) 读写文件

(3) 不保护文件

 

14. 按文件信息的流向分为:

 

(1) 输入文件:如键盘输入文件。仅仅能输入

(2) 输出文件:如打印机文件,仅仅能输出

(3) 输入输出文件:在磁盘、磁带上的文件。可读可写

 

15. 文件系统的重要作用就是在用户的逻辑文件和对应设备上的物理文件之间建立映射,实现二者之间的转换。

16. 文件的存取方法是由文件的性质和用户使用文件的要求决定的。

17. 文件的两种逻辑结构:

 

(1) 有结构的记录式文件

(2) 无结构的流式文件

 

18. 记录式文件分为:

 

(1) 定长记录文件

(2) 变长记录文件

 

19. 每一个块称为物理块。块中的信息称为物理记录。

20. 文件的物理结构

 

(1) 连续结构

(2) 串联结构

(3) 索引文件

(4) Hash文件

 

21. 若一个逻辑文件的信息存放在文件存储器上的相邻物理块中,称该文件为连续文件(又称顺序文件),这种结构是连续结构。

22. 串联结构也称链接结构。缺点是仅仅适合顺序存取,不便于直接存取。

23. 索引文件要求为每一文件建立一张索引表,当中每一表目指出文件逻辑记录所在的物理块号。

24. 索引表是在文件建立时由系统自己主动建立的,并与文件放在同一文件卷上。

25. 存放索引表的物理块称为索引表块。

26. 多个索引表块的组织方式:

 

(1) 串联文件方式

(2) 多重索引方式

 

27. UNIX文件的物理结构是多重索引结构。逻辑结构是流式文件。

28. Hash法,又称散列法、杂凑法

29. Hash法不同的键值在计算之后。可能会得到同样的键值,这样的现象称为“地址冲突”。

30. 解决地址冲突的办法叫做溢出处理技术。这是设计Hash文件主要考虑的问题。方法有:顺序探索法、二次散列法等。

31. 文件存取方法是指读写文件存储器上的一个物理块的方法。

32. 文件存取方法:

 

(1) 顺序存取法

(2) 直接存取法

(3) 按键存取法

 

33. 在提供记录式文件结构的系统中。顺序存取法就是严格按物理记录排列的顺序依次存取。

假设当前存取的记录是i,则下次要存取的记录自己主动为i+1

34. 直接存取法适合于索引表。

35. 按键存取法是按文件里各记录内容进行存取。

36. 文件的物理结构依赖于:

 

(1) 文件存储器的特性

(2) 存取方法

 

37. 假设採用直接存取法,索引文件效率最高、连续文件效率居中、串联文件效率最低。

38. 多级文件夹结构又称树形文件夹结构。

39. 在树形文件夹中,根节点称为根文件夹,枝节点称为子文件夹,叶子节点称为信息文件。

40. 根文件夹和子文件夹都是文件,称为文件夹文件。

41. 树形文件夹结构中,文件名称的两种表示方法:

 

(1) 绝对路径名

(2) 相对路径名

 

42. 绝对路径名总是从根文件夹開始的,而且是唯一的。

假设路径名的第一个字符是分隔符,那么这个路径就是绝对路径。

43. 注意“点”、“点点”表示法。

44. UNIX使用的文件夹结构中每一个文件夹项包括:一个文件名称和i节点号。

45. 位示图的基本思想是:用若干字节构成一张图,每一个字节中每一位相应文件存储器中的一个物理块。

46. 位示图能反映磁盘盘块的分配情况。也称为盘图。

47. 位示图保存在内存中。

48. 实现文件共享的方法:

 

(1) 同名共享

(2) 异名共享

 

49. 同名共享:各个用户使用同一文件名称(包含其路径)来訪问某一文件。

50. 异名共享:各个用户使用各自不同的文件名称来訪问某个文件。

51. 异名共享所採用的方法称为文件的勾连。

52. 实现勾连的两种方法:

 

(1) 基于索引节点的共享(硬连接)

(2) 基于符号链的共享(软连接)

 

53. 自己看书P155

54. 管道是一种特殊的文件,是一个特殊的打开文件。

55. 管道组成部分:

 

(1) 一个外存索引节点

(2) 对应的内存索引节点

(3) 两个系统打开文件表

 

56. 进程创建一个管道文件后,接着创建一个或几个子进程。

子进程把父进程的打开文件所有继承下来,于是父进程创建的管道文件就为父子进程所共享。

57. 管道文件是一个暂时文件,以磁盘为中介实现进程间的通信,与内存相比。通信速度较慢。仅仅适合父子进程间的通信。

58. 管道文件要解决的两个特殊问题:管道文件读写的同步和相互排斥。

59. 进程向管道中写入数据时。当写入的数据大于规定的长度时,就要使写进程挂起,等到数据被读进程取走后再唤醒进程。在读进程从管道中读数据时,当管道中的数据被读完后读进程也应挂起,待写进程再次向管道写数据时唤醒读进程。

60. 读写相互排斥时。防止几个进程同一时候对管道文件进行读写,实施操作前要先加锁。

61. 存取控制矩阵。在内存中。把文件的存取权限和用户的存取进行比較。假设不一致,则拒绝存取。

62. 文件系统为用户提供的系统调用:

 

(1) 建立/删除

(2) 打开/关闭

(3) 读/写文件

 

 

 

 

 

1. IO设备按使用特性分:

 

(1) 存储设备

(2) 输入输出设备

(3) 终端设备

(4) 脱机设备

 

2. IO设备按所属关系分:

 

(1) 系统设备:打印机、磁盘、时钟

(2) 用户设备

 

3. IO设备按资源分配角度分:

 

(1) 独占设备:多数的低速IO设备。打印机

(2) 共享设备:

(3) 虚拟设备:通过假脱机(spooling)技术把原来的独占设备改造成可为若干个进程所共享的设备。

 

4. IO设备按数据传输数量分

 

(1) 字符设备:数据传输以字节为单位。

打印机

(2) 块设备:数据传输以数据块为单位。

磁盘

 

5. 仅仅有一个盘片的磁盘称为软盘。

有若干个盘片组成的磁盘称为硬盘。

6. 磁盘两部分组成:

 

(1) 旋转体

(2) 读写笔

 

7. 磁道:存取臂移动到某一固定位置,相应的磁头就在磁盘上画的一个圆。

8. 每条磁道具有同样的扇区数,每一个扇区有同样的字节数。

9. 物理块的物理地址三部分组成:

 

(1) 柱面号

(2) 磁道号

(3) 物理记录号

 

10. 读写每一个扇区的时间是一样的。

11. IO控制方式:

 

(1) 循环IO測试方式

(2) 程序中断IO方式

(3) DMA方式

(4) 通道方式

 

12. 循环IO測试方式,CPU大量时间用在等待输入、输出和循环检測上,效率非常低。

13. 程序中断IO方式。仅当IO操作正常或异常结束时才中断CPU。实现了一定程度的并行性。

14. DMA方式,块设备都支持DMA方式。

15. 设备控制器三部分组成:

 

(1) 设备控制器与CPU的接口:数据线、地址线、控制线

(2) 设备控制器与设备的接口:数据信号、控制信号、状态信号

(3) IO逻辑

 

16. 具有通道结构的计算机系统。主存、通道、控制器、设备之间採用四级连接、三级控制。

17. 採用通道之后的IO操作过程:CPU在运行用户程序时,如遇到IO请求,则它用IO指令启动指定通道上选址的设备,一旦启动成功。通道開始控制设备进行操作。

当设备IO操作完毕后,由通道发出IO,结束中断,CPU停止当前工作,转向中断服务程序。

18. 通道按信息交换方式和连接设备不同分为三类:

 

(1) 字节多路通道

(2) 选择通道

(3) 数组多路通道

 

19. 字节多路通道:为连接大量慢速设备而设置的。以字节为单位交叉工作。当一台设备传送一个字节后,马上去为还有一台设备传送一个字节。

20. 选择通道:连接高速设备。以成组方式工作。一次仅仅为一个设备服务。

21. 数组多路通道:先为一台设备运行一条通道命令,然后自己主动转换,为还有一台设备运行一条通道命令。

22. 因为通道的成本高,因此通道远比设备少。

23. IO处理机的指令称为通道命令。

一条通道命令称为一个通道命令字(CCW)。用通道命令编写的程序称为通道程序,也叫IO程序。编写通道程序的过程叫通道程序设计或IO程序设计。

24. 在通道进行输入输出期间,要訪问两个固定内存单元:通道地址字(CAW)、通道状态字(CSW

25. 输入输出指令是中央处理器的指令。这类指令均为特权指令,仅仅能在管态下执行。

26. 当用户程序要求在主存和IO设备间传送数据时,就在用户程序中以广义指令或系统调用的形式向操作系统提出IO要求。这样,处理机的状态就由算态进入管态,在管态下执行的系统程序就能够使用IO指令了。

27. CPU和通道之间是主从关系。CPU是主设备、通道是从设备。

28. CPU和通道之间的通讯方式是:

 

(1) 由CPUIO通道发送IO指令。命令通道工作。并检查其工作情况。

(2) 通道以中断方式向CPU汇报。等候CPU处理。

 

29. IO软件设计的目标:

 

(1) 设备无关性

(2) 错误处理

(3) 同步异步传输

(4) 处理独占设备和共享设备的IO操作

 

30. 错误应该在接近硬件的地方处理。

仅仅有在底层软件处理不了的情况下才通知高层软件。

31. IO系统应组织成一下4个层次:

 

(1) 中断处理程序(最低)

(2) 设备驱动程序

(3) 与设备无关的IO软件

(4) 用户空间IO软件(最高)

 

32. 中断处理程序位于IO系统的最底层。

当进程须要进行IO操作时,操作系统把进程挂起,即进入堵塞。直至IO操作结束引发中断。

其中断发生时,中断处理程序运行对应的操作,以解除对应进程的堵塞状态。

33. 每个设备驱动程序仅仅处理一种设备或一类密切相关的设备。

34. 被堵塞的驱动程序必须由中断唤醒。

35. 与设备无关IO软件:

 

(1) 设备命名

(2) 设备保护

(3) 与设备无关的块大小

(4) 数据缓冲

(5) 数据块的分配

(6) 对独占设备的分配与释放

(7) 错误处理

 

36. 缓冲技术包含输入缓冲和输出缓冲。

37. 输入缓冲:在用户进程须要数据之前,操作系统已经把数据从设备读入系统存储区中。

38. 输出缓冲:操作系统先把要输出的数据写入系统缓冲区,当进程继续执行时,再把数据送往设备输出。

39. 缓冲区按使用方式分:

 

(1) 专用缓冲区

(2) 通用缓冲区

 

40. 缓冲池:公用缓冲技术

41. 缓冲池应具有四种工作缓冲区:

 

1)用于收容输入数据的工作缓冲区

2)用于提取输入数据的工作缓冲区

3)用于收容输出数据的工作缓冲区

4)用于提取输出数据的工作缓冲区

 

42. 缓冲池的4种工作方式

 

(1) 收容输入

(2) 提取输入

(3) 收容输出

(4) 提取输出

 

43. 操作系统对块设备的管理通常採用缓冲池技术。

为了提高块设备的读写效率,操作系统广泛採用了预先读和延迟写技术。

44. 磁盘的驱动调度是先进行移臂调度。再进行旋转调度。

45. 重点:移臂调度算法!

46. 设备分配的4种数据结构:

 

(1) 设备控制块(UCB

(2) 控制器控制块(CUCB

(3) 通道控制块(CCB

(4) 系统设备表(SDT

 

47. 一个通道程序一经启动便一直进行下去,直到最后完毕。在它完毕之前不会产生中断。

所以IO调度不能使用时间片轮转法。

48. 单通路IO系统的设备分配步骤:

 

(1) 分配设备:依据进程n提出的进程名(由逻辑设备名装换到物理设备名),来检索SDT,从中找到该物理设备的UCB,依据UCB的状态,可知设备的忙闲。若忙。则将要求IO的进程插入到等待设备的等待队列中。如不忙,能够进行分配。

(2) 分配控制器:当系统把该设备分配给要求的IO的进程后,从UCB中的控制器表指针找到与此设备相连的控制器表CUCB。再检查该表的状态信息。若忙。将进程插入到等待该控制器的队列;若不忙。则把控制器分配给进程。

(3) 分配通道:通过CUCB找到与此控制器相连的通道表,从中了解此通道的状态信息。

若忙。则将进程插入到通道中等待;若不忙。将通道分配给进程。

(4) 于是,进程所请求的IO设备、控制器、通道已得到,就能够进行信息传送了。

 

 github主页:https://github.com/chenyufeng1991  。欢迎大家訪问!

 


posted @ 2016-04-10 19:47  phlsheji  阅读(2323)  评论(0编辑  收藏  举报