今天继续学软考相关内容,目前过完操作系统剩下的相关知识
上午上课的时候进行项目演示有很多的收获,与它们的项目相比我目前的开发而言还存在很多的不足
操作系统作为系统资源的管理者,当然也需要对内存进行管理,要管些什么呢?
1.操作系统负责内存空间的分配与回收。
2.操作系统需要提供某种技术从逻辑上对内存空间进行扩充。
存储管理——内存的分配与回收
动态分区分配(首次适应算法)
首次适应算法
算法思想:每次都从低地址开始查找,找到第一个能满足大小的空间分区。
如何实现:空间分区以地址递增的次序排列。每次分配内存时顺序查找空间分区链(或空间分区表),找到能满足要求的第一个空闲分区。
最佳适应算法算法思想:由于动态分区分配是一种连续分配方式,为各进程分配的空间必须是连续的一整片区域。因此为了保证当 大津城 到来时能有连续的大片空间,可以尽可能多地留下大片的空闲区,即,优先使用更小的空闲区。如何实现:空间分区按容量递增次序链接。每次分配内存时顺序查找空闲分区链(或空闲分区表),找到大小能满足要求的第一个空闲分区最差适应算法算法思想:为了解决最佳适应算法的问题,即留下太多难以利用的小碎片,可以在每次分配时优先使用最大的连续空闲区,这样分配后剩余的空闲区就不会太小,更方便使用。如何实现:空闲分区按容量递减次序链接。每次分配内存时顺序查找空闲分区链(或空闲分区表),找到大小能满足要求的第一个空闲分区。邻近适应算法算法思想:首次适应算法每次都从链头开始查找的。者可能会导致低地址部分出现很多小的空闲分区,而每次分配查找时,都要经过这些分区,因此也增加了查找的开销。如果每次都从上次查找结束的位置开始检索,就能解决上述问题。如何实现:空闲分区以地址递增的顺序排列(可排成一个循环链表)。每次分配内存时从上次查找结束的位置开始查找空闲分区链(或空闲分区表),找到大小能满足要求的第一个空闲分区。
存储管理——分页存储管理
分段存储管理
段页存储管理
存储管理——页面置换算法
不管使用哪种存储管理,最后内存都会被装满,而在后续程序执行过程中,当所需要的数据信息又不在内存时,应该怎么办呢?
由操作系统负责将内存中暂时用不到的信息换出到外存。
而用页面置换算法用来决定应该将哪个界面换出内存。
最佳置换算法 OPT
最佳置换算法:每次选择淘汰的是以后永不使用,或者在最长时间内不再被访问的页面,这样可以保证最低的缺页率。
先进先出置换算法 FIFO:每次选择淘汰的界面是最早进入内存的界面。最近最久未使用置换算法:每次淘汰的页面是最近最久未使用的界面
可以往前找在内存中的几个页面号,最后一个出现的页号就是要淘汰的页面
四、文件管理
初识文件管理
文件的定义:一组有意义的信息集合
文件的属性:文件名、标识符、类型、位置、大小......
文件的逻辑结构:文件在内部如何组织起来
目录结构:文件之间如何组织起来
文件的物理结构:研究文件如何存放在外存中
存储空间的管理:操作系统如何管理外存中的空闲块1
操作系统需要提供的其他文件管理功能
文件共享
文件保护
文件目录文件控制块文件控制块(FCB)是系统为管理文件而设置的一个数据结构。FCB是文件存在的标志,它记录了系统管理文件所需要的全部信息。目录结构一级目录结构二级目录结构多级目录(树形目录结构)绝对路径相对路径文件的结构文件的逻辑结构无结构的流式文件有结构的记录式文件文件的物理结构(文件的分配方式)连续分配链接分配索引分配文件管理——空闲存储空间的管理(位示图法)1.空闲区表将外存空间上一个连续未分配区域称为空闲区。操作系统未外存上所有空闲区建立一张空闲表来管理空闲存储空间。2.位示图这种方法是在外存上建立一张位示图,记录文件存储器的使用情况。每一位对应文件存储器上的一个物理块,取值0和1分别表示空闲和占用。3.空闲块链每个空闲物理块中都有指向下一个空闲物理块的指针,所有空闲物理块构成一个链表,链表的头指针放在文件存储器的特定位置(如管理块中)。4.成组链接法在UNIX系统中,将空闲块分成若干组,每100个空闲块为一组,每组的第一个空闲块登记下一组空闲块的物理盘块号和空闲块总数,假如一个组的第一个空闲块号等于0,就意味着该组是最后一组,即无下一组空闲块。设备管理——I/O设备基本概念什么是I/O设备:将数据输入/输出计算机的外部设备按使用特性分人机交互外部设备存储设备网络通信设备按传输速率分低速设备中速设备高速设备按信息交换单位分字设备字符设备I/O控制方式
五、设备管理
六、微内核操作系统