随笔分类 -  学识向

摘要:分段存储管理方式不会产生内部碎片,但其会产生外部碎片(与动态分区分配同理)。在该分配方式中,程序按照自身的逻辑关系划分为若干个段,操作系统以段为单位为这些段分配内存空间,这些段之间可以不相邻。 在程序的逻辑空间中,它的每个段都各自从 0 开始编址,互不相干。而操作系统则是通过段表为进程的段和物理地址 阅读全文
posted @ 2025-12-25 21:46 邓加领 阅读(8) 评论(0) 推荐(0)
摘要:分页存储管理方式不方便实现信息的共享和保护,而分段存储管理方式需要连续的内存空间且会产生外部碎片。为此,段页式管理方式被提了出来, 它结合了两者的优点。 在段页式管理方式中,程序仍然按照自身的逻辑关系划分为若干个段,而操作系统以页为单位为这些段分配内存空间,每个段的页面都从 0 开始编号,页之间不需 阅读全文
posted @ 2025-12-25 21:36 邓加领 阅读(7) 评论(0) 推荐(0)
摘要:为了减少内存碎片的产生,提高内存的利用率,非连续分配管理方式被提出。非连续分配管理方式不要求大块的连续内存空间,它把内存划分成适当的小区块, 分散的进行分配,以此来减少内部碎片和提高内存的利用率。 有 基本分页存储管理、基本分段存储管理、段页式存储管理 这 3 种基本的非连续分配管理方式,本文首先对 阅读全文
posted @ 2025-12-25 21:28 邓加领 阅读(22) 评论(0) 推荐(0)
摘要:内存映射是一种机制,它能够将磁盘上某文件的一部分或整个文件映射到进程空间的某个地址范围上。然后,程序可以通过读取或写入这一映射区域, 实现对所映射磁盘文件的随机读取或写入。 相较于传统文件 I/O 需要经过文件系统先将数据拷贝到内核空间的缓存区,然后再拷贝到用户空间的行为,内存映射利用虚拟内存的页面 阅读全文
posted @ 2025-12-25 21:07 邓加领 阅读(7) 评论(0) 推荐(0)
摘要:传统分配管理方式需要一次性将程序全部装入内存中才能开始运行,如果内存不够大或不够分配时程序就无法运行。并且,程序被装入之后会一直 留在内存中,而实际上在一段时间内程序只需要一部分数据就满足运行需要,那些暂时用不到的数据是对内存的浪费。 为此,虚拟内存技术被引入。虚拟内存基于局部性原理,在运行程序时只 阅读全文
posted @ 2025-12-25 21:03 邓加领 阅读(7) 评论(0) 推荐(0)
摘要:从大的方向上来说:优化业务逻辑、减少访问的数据量、减少访问次数、用内存做缓存、将一些数据库操作交由程序执行、提升硬件资源。 列举一些具体的手段: 分库、分表、读写分离、优化数据结构。 在经常使用的列上创建索引,以提升查询速度。但是要谨慎,只在必要的地方创建索引,并且要知道某些 SQL 语句不会使用索 阅读全文
posted @ 2025-12-24 16:46 邓加领 阅读(11) 评论(0) 推荐(0)
摘要:分库分表本质上就是将原本属于一个大表或一个库的数据拆分至多个表或多个库中,以此来减轻单表或单库的数据量,从而降低访问时的数据压力。 列举几个即时通讯系统下数据库性能瓶颈的场景: 对话消息的数据量和访问量比人员资料等数据多的多,放在一个库中存储会拖累整体性能,适合垂直分库。 不同组织机构之间不可见,且 阅读全文
posted @ 2025-12-24 16:14 邓加领 阅读(16) 评论(0) 推荐(0)
摘要:简单来说,Windows 为 32 位程序提供 32 位版本系统库和一个用于访问 64 位内核的转接层 WOW64 来确保兼容性。 32 位程序在 64 位系统上执行时像往常一样加载和调用 32 位版本系统库,只是对 32 位版本系统库的调用将在内部被通过 WOW64 转调至 64 位版本。 并且在 阅读全文
posted @ 2025-12-23 20:39 邓加领 阅读(19) 评论(0) 推荐(0)
摘要:typora-root-url: ./res AMD64 ABI、Intel386 ABI、Windows x64 ABI 规范对结构体的内存布局作出如下规定: 结构体的对齐值取其成员的最大对齐值,其大小必须是其对齐值的整倍数(包括其它所有对象。这么做是为了确保对象被组织为数组结构时仍然能够满足所有 阅读全文
posted @ 2025-12-18 00:06 邓加领 阅读(17) 评论(0) 推荐(0)