精华内容
下载资源
问答
  • 外存中的对换区和文件区

    千次阅读 2017-03-01 20:05:01
  • 我们的计算机能够存储数据的东西有内存,外存等等 内存的读写速度优于外存很多很多,但是由于其成本高的特点,一般只适用于做短时存储读取,也就是说,当我们的电脑关闭的时候,内存的数据就全部消失了。与之...

    我们的计算机中能够存储数据的东西有内存,外存等等

    内存的读写速度优于外存很多很多,但是由于其成本高的特点,一般只适用于做短时存储读取,也就是说,当我们的电脑关闭的时候,内存中的数据就全部消失了。与之相比,外存也就是磁盘,是致力于实现数据持久化技术的

    了解过一些硬件的人应该知道,我们的磁盘是由很多个个圆形磁道组成的,每个磁道上又分成很多个小块,用来存储数据,如下图所示:

    在这里插入图片描述

    因为小块的数量很多很多,再加上为了便于理解,我们可以将这些数据存储单元抽象为下图这样的平面矩形分块:

    在这里插入图片描述

    到现在为止,我们将基本的数据存储模型建立完毕了,下面我们来比较一下内存和外存中存储结构的差异

    外存

    假设我们有一段数据,大小需要占满3个格子,那么我们在外存中应该如何选择格子来存储呢?

    假如我们直接选择相邻的3个格子来存储数据,如下图棕色区域所示:

    在这里插入图片描述

    这样,我们当读取这段数据的时候,直接通过第一个棕色格子的地址,就可以找到这段数据把它读出来,这不是挺好的吗?

    但是,当我们存储了很多数据之后,我们就发现了问题所在了

    假设我们又存储了一段大小为4个格子的数据,存储了一段大小为两个格子的数据,存储了大小为7个格子的数据,存储了大小为1个格子的数据,存储了大小为8个格子的数据

    用一种颜色代表一段数据,可以看到,我们的磁盘存储容量已经被占满了:

    在这里插入图片描述

    这时,我们想要删除绿色的和蓝色的数据,如图:

    在这里插入图片描述

    删除之后,按理说我们的磁盘已经空出了三个格子的空间,可以存储大小为三个格子的数据了,但是由于我们是顺序存储,所以上面的两个格子和下面的一个格子连不到一起,意味着我们只能再存进去两个格子的数据和一个格子的数据,并不能存进去三个格子的。

    也就是说,如果按照顺序存储,用到最后,我们的磁盘只能存入比较小的数据了,明明容量充足,却没法存进去大的数据,岂不是很难受?

    有人可能要说了,我们可以通过删除之后把后面的数据移到前面来填补上前面的格子来达到,就像玩电脑游戏里的整理背包一样。但是如果这样的话,我们每次删除一个数据都要把这个数据后面的数据向前移动(更改数据的存储地址),这样对性能的影响非常严重,所以,显然,我们的磁盘不是用这种方式来存储数据的,而是用下面这种:

    在这里插入图片描述

    这就是磁盘的存储方式——链式存储,这种方式能最大限度的利用磁盘的空间。

    内存

    上述的链式存储方式虽然最大限度地利用了磁盘的存储空间但是毕竟在增删改查的数据操作上的速度不如顺序存储,对于内存来说,因为它的读写速度非常非常快,因此我们上述的每次删除之后的重新整理的速度也非常快,因此我们的内存使用的是顺序存储方式,这样不会速度很慢,而且也方便了增删改查的操作。

    展开全文
  • 在线算法外存学习处理大数据集

    千次阅读 2018-04-19 21:51:49
    在上一篇文章,使用了logistic回归来对电影评论进行分类,消耗了2到3个小时,在使用网格...在这篇文章,将介绍外存学习来处理大数据集,使用外存学习来处理50000条电影评论只需要1分钟。在梯度下降算法,我们...

    在上一篇文章中,使用了logistic回归来对电影评论进行分类,消耗了2到3个小时,在使用网格搜索对50000条电影评论构建特征向量的时候计算成本是非常大的。在实际应用中,可能会遇见更大的数据集,如果直接把数据集加载到内存中,可能会超出计算机的最大内存,同时也会需要更久的训练时间。在这篇文章中,将介绍外存学习来处理大数据集,使用外存学习来处理50000条电影评论只需要1分钟

    在梯度下降算法中,我们有学习过随机梯度下降和批量梯度下降,每次通过一个或批量的训练数据来更新权重。而,外存学习与批量梯度下降的思想是一致的。使用sklearn的SGDClassifier的partial_fit函数来训练从本地磁盘读取的批量数据,来构建模型。

    1、导入相关包

    import numpy as np
    import re
    from nltk.corpus import stopwords
    stop = stopwords.words("english")
    from sklearn.feature_extraction.text import HashingVectorizer
    from sklearn.linear_model import SGDClassifier
    import pyprind

    2、评论的预处理

    #删除HTML标记和标点符号,去除停用词
    def tokenizer(text):
        #去除HTML标记
        text = re.sub("<[^>]*>","",text)
        #获取所有的表情符
        emoticons = re.findall('(?::|;|=)(?:-)?(?:\)|\(|D|P)', text.lower())
        #删除标点符号
        text = re.sub("[\W]+"," ",text.lower())+" ".join(emoticons).replace("-","")
        #删除停用词
        tokenized = [word for word in text.split() if word not in stop]
        return tokenized

    3、读取电影评论

    #读取文件,每次只读取一条记录
    def stream_docs(path):
        with open(path,'r',encoding="utf-8") as csv:
            #去除列名
            next(csv)
            for line in csv:
                #获取电影的评论和对应的情感标签
                text,label = line[:-3],int(line[-2])
                yield text,label
    
    #通过指定评论的条数来获取指定的评论
    def get_minibatch(doc_stream,size):
        #初始化列表
        docs,y = [],[]
        try:
            for _ in range(size):
                #获取电影的评论和标签
                text,label = next(doc_stream)
                docs.append(text)
                y.append(label)
        except StopIteration:
            return None,None
        return docs,y

    4、模型训练和预测

    if __name__ == "__main__":
        #初始化特征向量对象,特征的数量为2^21
        vect = HashingVectorizer(decode_error="ignore",n_features=2**21,preprocessor=None,
                                 tokenizer=tokenizer)
        clf = SGDClassifier(loss="log",random_state=1,n_iter=1)
        doc_stream = stream_docs("G:/dataset/move_data.csv")
        #初始化进度
        pbar = pyprind.ProgBar(45)
        classes = np.array([0,1])
        for _ in range(45):
            #每次获取1000条电影评论
            train_x,train_y = get_minibatch(doc_stream,size=1000)
            if not train_x:
                break
            #将电影评论转成特征向量
            train_x = vect.transform(train_x)
            #模型训练
            clf.partial_fit(train_x,train_y,classes=classes)
            #更新进度条
            pbar.update()
        #获取测试数据
        test_x,test_y = get_minibatch(doc_stream,size=5000)
        test_x = vect.transform(test_x)
        #获取模型在训练集上的准确率
        print("train Accuracy:%.3f"%clf.score(train_x,train_y))
        #获取模型在训练集上的准确率
        print("test Accuracy:%.3f"%clf.score(test_x,test_y))
        #将测试集加入到模型中进行训练
        clf = clf.partial_fit(test_x,test_y)

    sklearn中的TfidfVectorizer在计算电影评论的特征向量时,需要将所有的电影评论加载到计算机的内存中来计算TF-IDF。sklearn还提供了HashingVectorizer来计算文本信息的向量,HashingVectorizer是独立数据,使用了32位的MurmurHash3算法。


    总结:外存学习能提高训练模型的速度,但同时也会降低模型的准确率。在上一篇文章中,使用网格搜索和交叉验证获得的模型在训练集上的准确率为89.9%在测试集上的准确率为90.6%。所以在处理实际问题的时候,我们需要根据我们的需求来进行选择,从训练时间和资源消耗之间进行衡量。

    展开全文
  • 6.3外存分配方式

    2016-05-10 22:22:09
    6.3外存分配方式 外存考虑: 1.利用外存空间 2.提高对文件的访问速度 外存分配方式:连续分配,链接分配和索引分配 采用不同的分配方式,将形成不同的文件物理结构。 一个系统采用一种方法分配外存空间。

    外存考虑:

    1.利用外存空间

    2.提高对文件的访问速度

    外存分配方式:连续分配,链接分配和索引分配

    采用不同的分配方式,将形成不同的文件物理结构。

    一个系统采用一种方法分配外存空间。

     

    6.3.1

    1.连续分配方式;

    优点:

    1)顺序访问容易

    2)顺序访问速度快

    缺点:

    1)要求有连续的存储空间

    2)必须事先知道文件的长度

     

     

    6.3.2链接分配

    优点:         1.消除了外部碎片;

    2.动态增长;

    隐式链接和显示链接

    1.隐式链接

    每个目录项中,都须含有指向链接文件第一个盘块和最后一个盘块的指针。

    每个盘块都含有下一个盘块的指针。

    缺点:1.只适合顺序访问,2.可靠性;

     

    2.显示链接

    各个物理块的指针,存放在内存中的一张链表中。该表在整个磁盘中仅设置一张。

    ??感觉还是存在可靠性风险啊?

     

    6.3.3 FATNTFS技术

     

    6.3.4.索引分配

     

    1.单级索引分配

    链接存储:

    优点:不用连续分配

    缺点:

    1.不支持高效的直接存取;

    2.FAT需要占用较大的内存空间。?

     

    为每个文件分配一个索引块,再把分配给该文件的所有盘块号都记录在该索引块中。

    优点:1.直接访问,2.不会产生碎片;3.适用于大文件

    缺点:1.话费较多的外存空间;2.小文件,索引块的利用率极低

     

    2.多级索引

     

    3.混合索引分配方式

    1)直接地址(2)一次性间接地址(3)多次间接地址

    展开全文
  • 计算机的内存、外存、主存、辅存

    千次阅读 2017-10-01 16:27:50
    存储器是计算机的重要组成部分,用于存储程序与数据,可分为:计算机内部的存储器(内存储器,简称内存)、计算机外部的存储器(外存储器,简称外存)一般来说,主存指的是内存;但是在一些专业性较强的场合,主存与...
  • 外存分配方式

    千次阅读 2014-08-21 20:49:08
    第二十六讲 文件管理之文件的外存分配方式 1 引言 用户对不同的文件采用不同的存储方式,以便于对文件进行各种操作。因此,如何有效利用外存空间和如何提高对文件的访问速度?是这讲的主要内容 2 文件物理结构 ...
  • 外存及虚拟存储器管理

    千次阅读 2018-06-29 16:49:52
    外存资源管理外存空间划分静态等长,2i, 称为一块(block),块是外存分配的基本单位,也是IO传输的基本单位。如果需求不足一个完整块,会形成块内“零头”。由于外存空间很大,块内零头忽略。外存空间分配空闲块链(慢...
  • 浅谈外存分配的几种方式

    万次阅读 2014-09-09 16:55:18
    外存,指的是除了cpu缓存和内存以外的存储器,硬盘、光盘、U盘都可以被称为外存。所有的数据,也都存在这里面,故他的分配方式变得极其重要,这直接影响到了计算机的运行速度。 外存分配方式主要有这几种:连续分配...
  • 大数据笔记-外存算法

    2018-12-10 22:48:00
    4.1外存存储结构与外存算法: 分层存储: 做法: 可扩展性问题:若程序分散地访问磁盘上的数据,即使是好的操作系统也无法利用数据块存取优势 基本界限: 、 队列和堆栈: 4.2外存算法示例:外存...
  • 在S/4HANA,SAP就默认支持了几常见的特殊库存组合。本篇先讲解委销售订单库存。 正文: ***坚持不搬砖,需要官方资料请自行度娘。以下内容全是个人的理解,不当之处,欢迎交流探讨。 一般来说,ECC支持委...
  • 区分内存、外存、主存、辅存

    千次阅读 2018-06-19 16:05:21
    对一般计算机而言,主存=内存 指计算机的内存条;外存=辅存 如:硬盘、U盘、...内存是电脑主要部件,它是相对于外存来说。内存一般采用半导体存储单元,包括随机存储器(RAM)、只读存储器(ROM)和高级缓存(C...
  • 区分内存、外存、主存、辅存等

    万次阅读 多人点赞 2016-06-02 22:24:23
    相信很多人在刚开始接触计算机时和我一样,总是分不清楚什么是内存、外存、主存、辅存和寄存,以及他们之间的关系又是什么呢? 存储器在计算机组成结构占据很重要的位置。对计算机来说,有了存储器,就具备了记忆...
  • 内存、外存、主存、辅存和寄存

    千次阅读 2017-02-18 10:18:32
    相信很多人在刚开始接触计算机时和我一样,总是分不清楚什么是内存、外存、主存、辅存和寄存,以及他们之间的关系又是什么呢 存储器在计算机组成结构占据很重要的位置。对计算机来说,有了存储器,就具备了记忆能力...
  • 从内存按安装apk时 解析包时出现错误 从外部存储卡安装正常,请问是什么原因 data/data/pakagename/files/xxx.apk 从这里安装报“解析包出错 ”; 但是同样的文件放到/mnt/sdcard/xx/xxx.apk 可以正常安装
  • 内存、外存、主存、辅存

    千次阅读 2016-08-21 15:38:09
    储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的储存器有硬盘、软盘、光盘、U盘等 ...辅狭义上是我们平时讲的硬盘。科学地说是外部存储器(需要通过
  • 外存的组织方式

    千次阅读 2020-10-13 22:04:00
    1:连续组织方式, 又称为连续分配方式,要求每一个文件分配一个相邻的盘快 优点:顺序访问容易:访问连续文件非常容易,访问速度非常快 缺点:要求为文件分配连续的空间,必须事先知道文件的长度,不能灵活的...
  • 文件管理-外存分配方式

    千次阅读 2016-09-06 10:30:04
    ---- 通常,在一个系统,仅采用其中的一种方法来为文件分配外存空间。 文件的物理结构直接与外存分配方式有关。在采用不同的分配方式时,将形成不同的文件物理结构。例如,在采用连续分配 方式时的文件物理结构是...
  • 老师您好:我也是一名初学C++的学生,从这学期开始也一直都在跟着您学习,今天看到您的文件+结构体这个项目,关于后边的选择30名同学发奖学金,我有新的想法就是把之前排好序的信息存储到一个新的文件,然后再从这...
  • 按其用途可分为主存储器(简称主存或内存)和辅助存储器(简称辅存或外存)两大类。和CPU直接交换信息的是主存。 所以主存储器就是内存或主存,辅助存储器就是外存或辅存 内存细分: 特点 本篇文章统一称内存、外存,...
  • 内存与外存的理解

    千次阅读 2010-12-27 11:48:00
    存储器分为主存储器(内存)和辅助存储器(外存)。 内存指的就是主板上的存储部件,CPU直接与之沟通,并用其存储数据的部件,存放当前正在使用的(即执行的)数据和程序,它的物理实质就是一组或多组...
  • CPU,缓存,内存,外存概念挖掘

    千次阅读 2019-06-24 19:55:57
    四:内存与外存的区别 五:参考文章 一:缓存 定义:凡是位于速度相差较大的两种硬件之间,用于协调两者数据传输速度差异的结构,均可称之为Cache 被扩充概念:如今缓存的概念已被扩充,不仅在CPU和主内存之间有...
  • 一、外存分配方式 二、储空间管理
  • 1.7.关于存储器的内存和外存

    千次阅读 2017-08-01 20:37:24
    存储器一般包括:内存和外存。 内存:RAM、ROM等。 外存:磁盘、光盘、固态存储器等等。 内存: 与CPU经过总线连接的存储器是内存。程序被执行时,其指令代码和运行数据主要存放在内存,因此也称其为主存储器,...
  • 外存分配的几种方式及优劣比较

    千次阅读 2018-06-14 15:28:55
    外存,指的是除了cpu缓存和内存以外的存储器,硬盘、光盘、U盘都可以被称为外存。所有的数据,也都存在这里面,故他的分配方式变得极其重要,这直接影响到了计算机的运行速度。 外存分配方式主要有这几种:连续分配...
  • CPU,缓存,内存,外存全解析

    千次阅读 2020-07-05 20:25:27
    一:缓存 定义:凡是位于速度相差较大的两种硬件之间,...存放的数据:内存被CPU访问最频繁的数据和指令被复制入CPU的缓存 作用: 用于协调两者数据传输速度差异的结构 实际例子: 缓存是CPU(Central Processing
  • Exynos4412 所用外存 —— eMMC

    千次阅读 2016-03-03 22:30:31
    Exynos4412所用外存不是原来的Nand Flash 与 Nor Flash,而是eMMC。eMMC是什么呢?和Nand Flash有什么区别呢? 一、eMMC概述   eMMC(Embeded MultiMedia Card):它并非是一种全新尺寸的存储卡,而是由MMC协会所...
  • 【磁盘】 文件外存分配方式

    千次阅读 2018-09-27 17:10:39
    目前,磁盘常用的外存分配方法有连续分配、链接分配和索引分配三种。采用不同的分配方式时,将形成不同的文件物理结构。 连续分配方式对应顺序式文件结构,链接分配方式形成链接式文件结构,索引分配方式将形成索引...
  • 文章目录目录基于局部性原理实现的内-外存交换技术局部性原理Swap 交换分区 基于局部性原理实现的内-外存交换技术 虚拟存储器的实现思想就是将内存作为辅存的缓存,使得计算机系统拥有了 主存+辅存(交换空间) 大小...
  • 操作系统——文件链接组织方式存在的问题及解决方法一、文件的三种外存组织方式1.2 连续组织方式1.3 链接组织方式1.3.1 隐式链接1.3.2 显式链接1.3.3 链接组织的优点与缺点1.4 索引组织方式1.4.1 单级索引组织方式...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 288,815
精华内容 115,526
关键字:

外存中