首页 > 编程语言 >《程序是怎样跑起来的》第五章读后感

《程序是怎样跑起来的》第五章读后感

时间:2024-02-16 17:58:10浏览次数:43  
标签:读后感 存储 缓存 程序 第五章 内存 磁盘

内存和磁盘都是计算机中的存储部件,但它们的工作机制和特性有所不同。内存利用电流进行高速存储,但由于成本较高所以容量有限;而磁盘则是通过磁效应实现数据存储,虽然速度较慢但价格相对低廉,可提供大量存储空间。程序以存储程序方式保存在磁盘等存储设备中,并按照指令顺序被读入内存运行,因为CPU需要通过内部的程序计数器来指定内存地址,才能执行相应的指令。

为了提高磁盘数据的访问速度,系统引入了磁盘缓存这一概念。磁盘缓存是指将从磁盘读出的数据暂时存放在内存中,当再次需要同一数据时,可以直接从内存(即磁盘缓存)中获取,从而避免频繁地与低速磁盘交互,大幅提升数据访问效率。

虚拟内存是另一种体现内存和磁盘关系的技术。它是一种将部分磁盘空间当作额外的内存使用的方法,当实际物理内存不足时,操作系统会自动在磁盘上创建一个“假想”的内存区域,通过内存页面的换入换出,使得即使物理内存较小也能运行较大的程序。

第五章还介绍了节约内存的编程方法,例如通过使用动态链接库(DLL文件)共享函数和数据,以及采用_stdcall调用来减小程序体积,但这部分内容没有详细展开具体的操作步骤。

此外,第五章讲述了磁盘的物理结构,磁盘表面被划分为多个扇区,其中扇区是磁盘读写的最小物理单位,但在逻辑层面,文件系统的读写单位通常为簇,不同的文件不能存储在同一簇内,因此即使是极小的文件也会占用至少一个簇的空间。

总的来说,在阅读第五章后,我们对内存与磁盘的关系有了更深入的理解,明白了磁盘缓存作为内存与磁盘之间桥梁的角色,以及虚拟内存如何弥补物理内存不足的问题。磁盘缓存就像是更快捷的交通工具,帮助提升数据读取速度,而虚拟内存则是在必要时把磁盘空间当作内存使用。对于栈清理方法,虽然理解不够透彻,但也意识到其有助于减少程序所占用的空间。最后,了解到簇是磁盘存储的基本逻辑单位,而非之前的扇区概念,这些收获加深了我们对计算机存储原理的认识。

标签:读后感,存储,缓存,程序,第五章,内存,磁盘
From: https://www.cnblogs.com/van311/p/18017327

相关文章

  • 《程序是怎样跑起来的》第四章读后感
    在第四章中,作者详细介绍了如何熟练地使用内存这一关键的计算机组件。首先,4.1节讲述了内存的物理机制。内存实质上是一种名为内存IC的电子元件,内部包含电源、地址信号、数据信号和控制信号等多种引脚,通过这些引脚实现对内存的读写操作。内存内部有大量可存储8位数据的空间,当我们需......
  • 《程序是怎样跑起来的》第四五章知识点
    《让程序跑起来》第四五章知识点第四章:程序的内存管理内存的基本概念:介绍计算机内存的基本结构,包括RAM(随机存取存储器)的工作原理,以及内存与CPU之间的交互方式。程序的加载与执行:解释操作系统如何将程序从磁盘加载到内存中,以及CPU如何执行内存中的指令。堆与栈:介绍程序运行时的......
  • 《程序是怎样跑起来的》第六七章知识点
    第六章:程序的优化与调试性能优化:讨论如何优化程序的性能,包括减少不必要的计算、使用更高效的算法、优化数据结构等。代码调试:介绍常见的代码调试技术,如使用调试器(debugger)来跟踪程序的执行过程、设置断点、查看变量值等。错误处理与异常捕获:讲解如何编写健壮的代码,包括错误处理......
  • 程序员们有什么好的编程习惯?
    大家好,我是陶朱公Boy,一个认真生活,总想超越自己的程序员。前言知乎上有一个提问:程序员们有什么好的编程习惯?                            ↓↓↓今天,我们就这个话题一起来做个讨论。我的回答话说,每个程序员但凡有......
  • 《程序是怎么跑起来的》第5章
    本章节中,主要讲诉内存与磁盘的密切关系。首先,我们先来考虑一下这几个话题。存储程序的方式是什么?使用内存来提高访问速度的机制叫什么?将磁盘的部分模拟成内存来使用的机制叫什么?在PC中,硬盘的1个扇区大小一般为多少个字节?等等这一系列的问题。其实我以前都接触过这样的问题,以前呢,只......
  • matlab练习程序(Schur补)
    Schur补是一种矩阵分解方法,通过将一个大的矩阵分解为几个较小的矩阵来简化计算,通常能够提高矩阵求逆的速度。对于形如下面的矩阵:可以把矩阵划分为左上、右上、左下、右下四个分块矩阵。得到矩阵:根据A和D的奇异性,可以分两种情况。如果A可逆,则有:如果D可逆,则有:公式两边同......
  • Qt环境Windows应用程序动态变更系统默认打印机
    有些工作环境安装有多个打印机,针对不同需求进行各种输出。如果是用QPrinter进行打印控制,可以通过setPrinterName确定使用哪一个打印机,但如果程序使用了第三方功能进行打印输出,比如通过QAxObject调用系统的文字处理直接输出,就可能会遇到无法明确指定哪一个打印机的问题。这时就需要......
  • 《程序是怎样跑起来的》第四章——熟练使用有棱有角的内存?
    关于这一章,是目前让我最感兴趣的一章,因为说到了内存,在编程过程中我经常遇到内存这类的问题,如堆、栈溢出,如何更好的使用内存,所以对内存格外想要了解。内存的实体实际上是一种名为内存IC的电子元件,有多种类型如:RAM,ROM等等。内存IC中有电源、控制信号、地址信号、数据信号。通过地址......
  • 《程序是怎样跑起来的》第二章读后感
    在读了《程序是怎样跑起来的》第二章,我不仅对程序的运行机制有了更为清晰的认识,也对计算机科学的魅力产生了浓厚的兴趣。我对于二进制有了了解,二进制,也称为二进位制,是一种以2为基数的数制系统。1234567在二进制系统中,只使用两个基本符号:0和1。每个二进制数字也被称为一个位或二进......
  • 研究生阶段 2018.11.1 编程 我的微信小程序
    微信小程序昵称:HelloPrince2017原始ID:gh_5c258db11408登录邮箱:[email protected]你好,以上帐号未在指定时间内登录,此帐号已冻结,如需重新使用此帐号,请登录小程序帐号后台进行找回;或在公众平台找回帐号流程中,通过原始ID搜索找回  "找回小程序登录密码"  发......