外存分配的几种方式,及各种优劣

外存,指的是除了cpu缓存和内存以外的存储器,硬盘、光盘、U盘都可以被称为外存。所有的数据,也都存在这里面,故他的分配方式变得极其重要,这直接影响到了计算机的运行速度。

外存分配方式主要有这几种:连续分配,链式分配,索引分配。

一.  连续分配

原理:创建文件时,分配一组连续的块;FAT(文档分配表)中每个文件只要一项,说明起始块和文件长度。对于顺序文件有利。

优点:1.简便。适用于一次性写入操作。2.支持顺序存取和随机存取,顺序存取速度快。3.所需的磁盘寻道次数和寻道时间最少。(因为空间的连续性,当访问下一个磁盘块时,一般无需移动磁头,当需要移动磁头时,只需要移动一个磁道。)

缺点:1.文件不能动态增长。(可能文件末尾处的空块已经分配给了别的文件。)2.不利于文件的插入和删除。3.外部碎片问题。(反复增删文件后,很难找到空间大小足够的连续块,需要进行紧缩。)4.在创建文件时需声明文件大小。

二.  链式分配

原理:一个文件的信息存放在若干个不连续的物理块中,各块之间通过指针连接,前一个物理块指向下一个物理块。fat中每个文件同样只需要一项,包括文件名、起始块号和最后块号。任何一个自由块都可以加入到链中。

优点:1.提高磁盘的空间利用率,不存在外部碎片问题。2.有利于文件的插入和删除。3.有利于文件的动态扩充。

缺点:1.存取速度慢,一般只适用于信息的顺序存取,不适于随机存取。2.查找某一块必须从头到尾沿着指针进行。3.可靠性问题,如指针出错。4.更多的寻道次数和寻道时间。5.链接指针占一定的空间,将多个块组成簇,按簇进行分配而不是按块进行分配。

三.  索引分配

原理:每个文件在FAT中有一个一级索引,索引包含分配给文件的每个分区的入口。文件的索引保存在单独的一个块中,FAT中该文件的入口指向这一块。

优点:1.保持了链接结构的优点,又解决了其缺点:按快分配可以消除外部碎片。按大小可改变的分区分配可以提高局部性。索引分配支持顺序访问文件和直接访问文件,是普遍采用的一种方式。2.满足了文件动态增长,插入删除的要求。(只要有空闲块)3.能充分利用外存空间。

缺点:1.较多的寻道次数和寻道空间。2.索引表本身带来了系统开销,如:内外存空间、存取时间。


http://blog.csdn.net/liuqiyao_01/article/details/39156651







  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BS架构(Browser/Server架构)是一种常见的软件架构模式,它将应用程序的界面(前端)和业务逻辑(后端)分开部署在不同的服务器上。 根据实现方式的不同,BS架构有多种实现方式,主要包括以下几种: 1. 传统BS架构:前端通过Web浏览器与后端服务器进行通信,后端服务器处理业务逻辑,前端负责显示结果。这种实现方式具有容易维护、可扩展性强的特点,但前后端通信时间较长,对网络连接要求较高。 2. 反向BS架构:与传统BS架构类似,但前端通过轻量级客户端与后端服务器进行通信,后端服务器仅负责传输数据,不直接处理业务逻辑。这种实现方式减少了前后端通信时间,加快了响应速度,但需要在客户端实现一部分业务逻辑。 3. 基于微服务的BS架构:将应用程序拆分成多个独立的微服务,每个微服务负责特定的业务功能,前端通过接口调用各个微服务。这种实现方式具有松耦合、可独立部署、易于维护等优势,但微服务之间的通信需要经过网络,增加了系统的复杂性。 以上是几种常见的BS架构实现方式,它们各有优劣: 1. 传统BS架构相对简单稳定,易于理解和维护,适用于小型应用。但由于前后端通信时间较长,对网络连接要求较高,且前后端耦合度较高,不易扩展和升级。 2. 反向BS架构通过前端轻量级客户端的引入,提升了响应速度,减少了对网络连接的依赖。然而,需要在客户端实现一部分业务逻辑,增加了客户端的复杂性,不适用于所有应用场景。 3. 基于微服务的BS架构解决了传统BS架构的扩展和升级问题,每个微服务可以独立开发和部署。但由于微服务之间需要通过网络通信,增加了系统的复杂性,需要设计合理的接口和通信机制。 综上所述,不同的实现方式在不同的场景下有各自的优劣,选择适合的实现方式需要考虑应用规模、性能要求、开发团队的技术能力等因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值