首页 > 系统相关 >《程序是怎样跑起来的》——第5章 内存和磁盘的亲密关系

《程序是怎样跑起来的》——第5章 内存和磁盘的亲密关系

时间:2024-02-19 19:23:10浏览次数:24  
标签:存储 程序 扇区 内存 亲密关系 磁盘 虚拟内存

内存与磁盘
一、内存与磁盘的关系:
1、关系:从都具有存储程序命令和数据这点来看,内存和磁盘的功能是相同的。在计算机的5大部件”中,内存和磁盘也都被归类为存储部件。不过,利用电流来实现存储的内存,同利用磁效应来实现存储的磁盘,还是有差异的。而从存储容量来看,内存是高速高价,而磁盘则是低速廉价。
2、分类:计算机中主要的存储部件是内存和磁盘。磁盘中存储的程序,必须要加载到内存后才能运行。在磁盘中保存的原始程序是无法直接运行的。负责解析和运行程序内容的CPU,需要通过内部程序计数器来指定内存地址,然后才能读出程序。

二、内存与磁盘——磁盘缓存
磁盘缓存指的是把从磁盘中读出的数据存储到内存空间中的方式。这样一来,当接下来需要读取同一数据时,就不用通过实际的磁盘,而是从磁盘缓存中把内容读出。使用磁盘缓存可以大大改善磁盘数据的访问速度。

三、内存与磁盘——虚拟内存
1、含义:虚拟内存是指把磁盘的一部分作为假想的内存来使用。这与磁盘缓存是假想的磁盘(实际上是内存)相对,虚拟内存是假想的内存(实际上是磁盘)。
2、方法及介绍:虚拟内存的方法有分页式和分段式”两种。(分段式虚拟内存是指,把要运行的程序分割成以处理集合及数据集合等为单位的段落,然后再以分割后的段落为单位在内存和磁盘之间进行数据置换。)Windows采用的是分页式。该方式是指,在不考虑程序构造的情况下,把运行的程序按照一定大小的页(page)进行分割,并以页为单位在内存和磁盘间进行置换。
分页式虚拟内存机制:

查看虚拟内存的设定:

四、磁盘的物理结构
磁盘的物理结构是指磁盘存储数据的形式。磁盘是通过把其物理表面划分成多个空间来使用的。划分的方式有扇区方式和可变长方式两种,前者是指将磁盘划分为固定长度的空间,后者则是指把磁盘划分为长度可变的空间。一般的Windows计算机所使用的硬盘和软盘,采用的都是扇区方式。扇区方式中,把磁盘表面分成若干个同心圆的空间就是磁道,把磁道按照固定大小(能存储的数据长度相同)划分而成的空间就是扇区(图5-8)。
扇区方式的磁盘物理结构:

五、节约内存
1、通过DLL(DLL(Dynamic Link Library)文件,顾名思义,是在程序运行时可以动态加载Library(函数和数据的集合)的文件。)文件实现函数共有。
示例:
(1)静态链接导致内存利用效率下降:

(2)进行动态链接的话即可节约内存:

2、通过调用_stdcall来减小程序文件的方法,是用C语言编写应用时可以利用的高级技巧。
示例:

标签:存储,程序,扇区,内存,亲密关系,磁盘,虚拟内存
From: https://www.cnblogs.com/Li204217/p/18021776

相关文章

  • 《程序是怎样跑起来的》——第4章 熟练使用有棱有角的内存
    一、内存的物理机制1、内存的作用:计算机是进行数据处理的设备,而程序表示的就是处理顺序和数据结构。由于处理对象数据是存储在内存和磁盘上的,因此程序必须能自由地使用内存和磁盘。2、内存的概念:内存实际上是一种名为内存IC的电子元件。3、内存的形式:包括DRAM、SRAM、ROM等多种......
  • iPhone 16全系配置抢先曝光:首发史上最强A18/A18 Pro、标配8GB内存
    iPhone16后摄像头模组重回垂直排列的消息得到了证实。MR抢先曝光了iPhone16系列四款机型的核心配置,一起来看看。今年,iPhone16、16Plus和16Pro、16ProMax将分别升级A18、A18Pro芯片,采用台积电“N3E”增强型3nm工艺。A18系列芯片的一大变化是将采用“升级版神经引擎”,并大......
  • 对于计算机磁盘的认识(《程序是怎样跑起来的第5章》)
    在第五章中,我认识到了磁盘和内存的关系。在先前我一直认为数据是被存储到内存上的,但是通过阅读,计算机中的数据实际是被存储到磁盘上的,而内存是将磁盘上的数据调入,以供CPU来处理。因为磁盘传输数据十分缓慢,所以即使CPU可以直接读取磁盘的数据,也会采用磁盘到内存到CPU如此路径来提高......
  • 内存和磁盘的密切联系
    现在的计算机基本上采用的是存储程序方法。从存储程序指令和数据的、角度来看,可以说内存和磁盘的功能是一样的。在计算机系统中,速度快、容量小的内存和速度慢、容量大的磁盘取长补短。内存指主存,磁盘主要指硬盘。存储在磁盘中的程序需要先加载到内存中才能运行,不能直接在磁盘上运......
  • Vulkan内存与资源管理
    在OpenGL中,当我们创建resource的时候,内存会被自动分配。不同于OpenGL,vulkan是更加底层的API,需要显式的内存管理。显式的内存管理可以在资源复用与特定平台的优化方面带来好处。1.Vulkan内存分类Vulkan内存分为2类:Hostmemory和Devicememory。Devicememory:指显存(GPU可直接......
  • 《程序是怎样跑起来的》第五章:内存与磁盘的亲密关系
    当我们谈论计算机的存储系统时,我们经常提及内存和磁盘。对于许多初学者,这两者似乎都是用于存储数据的,但它们之间存在巨大的差异。在第五章中,作者详细解释了这两者之间的区别和联系,帮助我们更深入地理解它们的角色和功能。内存,也被称为RAM(随机存取存储器)是计算机中用于临时存储数......
  • 第5章内存和磁盘的亲密关系
    内存利用电流实现:高速高价,磁盘利用磁效实现:低速低价磁盘中存储的程序:必须加载到内存中才能运行,因为负责解释和运行程序内容的CPU需要通过内部程序计数器来指定内存地址,然后才能读出程序,其次,磁盘的速度慢即使可以直接读取,效率也比较低下内存与磁盘相互促进:磁盘缓存:加快磁盘访问速......
  • 内存
    内存实际上是一种名为IC的电子元件。数据信号引脚有D0~D7八个,表示一次可以输出8位(1字节)的数据;地址信号引脚由A0~A9十个,表示可以指定0000000000·~1111111111共1024个地址。即这个内存IC可以储存1024个1字节的数据1024=1K,所以该内存IC容量为1KB。1MB=1000KB通常情况下......
  • 第五章——内存和磁盘的亲密关系
    上一章只讲了内存,这一章将讲到内存和磁盘的关系,可以更深入了解计算机内部存储信息数据的原理。磁盘和内存的亲密关系————*磁盘不读入内存就无法运行,因为负责解析和运行程序的CPU需要通过内部程序计数器来指定内存地址才能读出程序。*磁盘缓存加快了磁盘的访问时间,磁盘缓存......
  • 禅道(一键安装包Linux版本)出现磁盘(/opt)空间不足的问题
    场景公司管理bug用到了禅道,但是为了方便我们就使用了禅道官网提供的一键安装包Linux版本。禅道官方下载地址:https://www.zentao.net/download.html 问题有一点美中不足的是禅道官方提供的一键安装版本(Linux)只能放在/opt文件夹下面。随着项目越来越多我们/opt容量达到100%了,接......