返回所有课程
如何在运行的程序中管理内存?当多个程序运行时,操作系统如何管理它?CPU提供哪些与内存相关的功能?
本课程将指导您逐步理解内存管理,以便您能够回答上述问题并编写高效的程序。
什么是记忆,以及如何表示它。
计算机通过快速和缓慢、持久和临时存储数据来工作。
这三个离散数学的数字基础是理解计算机如何真正工作的关键。
当你进入引擎盖时,发现每个计算机程序是如何真正看到计算机内存的。
线性内存模型允许将大块数据存储在字节大小的片段中。
内存段。
与其他程序一样,您运行的程序由内存中的字节组成。
一个正在运行的程序将计算机内存的四个不同部分用于不同的目的。
内存的某些部分包含不允许程序更改的信息。
堆栈允许多个函数一起工作。
操作系统如何管理内存。
一台计算机可以保存许多程序,每个程序都认为它们使用的是相同的内存。这怎么可能?
内存,就像你计算机上运行的每一个计算机程序所看到的,是一个复杂的虚拟现实。
计算机的实际内存是按大块管理的,称为“页面”
计算机的处理器和操作系统协同工作,为每个程序提供自己的内存。
操作系统具有高效内存管理的功能。
页面缓存将硬盘中的信息保存在RAM中,以便更快地访问。
一种帮助操作系统只访问大文件的一小部分的技术。
即使你认为你已经打开了一个文件,操作系统也可能在欺骗你。
改变是很难的,操作系统通过假设你会避免改变来加速你的计算机。
链接和加载共享库以有效地重用代码。
程序不是孤立存在的。当它们运行时,需要连接到库。
编译程序完成后,仍然缺少信息。
先进的技术可以避免重新定位的需要。
了解如何在不减慢程序速度的情况下间接存储链接信息。
提高性能的基本技术。
缓存是加速计算机系统的基本技术。
计算机处理器使用几种不同的技术来决定缓存什么。
同样的缓存技术也适用于您的计算机和全球互联网。
缓存总是需要考虑成本和性能之间的权衡。
从日常任务到算法,让你的思维围绕计算思维。
了解为什么神经网络是如此灵活的学习工具。