论坛元老
- 威望
- 276
- 贡献
- 320
- 热心值
- 7
- 金币
- 41780
- 注册时间
- 2020-8-31
|
课程介绍:
内存 (memory, 台湾术语称为 “记忆体”) 是电脑中的 “脑” 吗?CPU才是脑,CPU才是计算机的三魂六魄。但若没有内存,一切只存在于虚无缥缈间,等同于不存在。
内存曾经是最宝贵也最昂贵的週边资源,现代程序员无法想像 DOS 时代对内存的锱铢必较。
俱往矣,且看今朝。我们(似乎)有用不完的便宜内存。但表象之下是操作系统和标准库做了大量工作。而如果你开发内存高耗软件,或处于内存受限环境下 (例如嵌入式系统),就有必要深刻了解操作系统和标准库为你所做的内存管理,甚至需要自行管理内存。
我们谈的不只是应用,还深入设计原理与实现手法。在理解了这麽多底层 (Windows Heap, CRT malloc/free, C++ new/delete, C++ allocators) 之后,也许你终于恍然大悟,再不需要自行管理内存了;或也许你终于有能力想像,该在何处以何种方式加强内存管理。
你将获得整个video课程的完整讲义 (也就是video呈现的每一张投影片画面),和一个完整程序包括代码文件.cpp和可执行文件.exe。你可以在视听过程中随时停格仔细阅读讲义,细细咀嚼我所绘製的各种示意图和源代码之间的流动路线——这的确很需要时间和脑力,却能令你脑洞大开。
课程目录:
1.Overview
2.内存分配的每一层面
3.四个层面的基本用法
4.基本构件之一newdelete expression(上)
5.基本构件之一newdelete expression(中)
6.基本构件之一newdelete expression(下)
7.Array new
8.Replacement new
9.重载
10.重载示例(上)
11.重载示例(下)
12.Per-class allocator 1
13.Per-class allocator 2
14.Static allocator
15.Macro for static allocator
16.New handler
17.VC6 malloc()
18.VC6标准分配器之实现
19.BC5标准分配器之实现
20.G2.9标准分配器之实现
21.G2.9std_allocVSG4.9__pull_alloc
22.G4.9pull alloc用例
23.G2.9std alloc
24.G2.9std_alloc运行一瞥01-05
25.G2.9std_alloc运行一瞥06-10
26.G2.9std_alloc运行一瞥11-13
27.G2.9std_alloc源码剖析(上)
28.G2.9std_alloc源码剖析(中)
29.G2.9std_alloc源码剖析(下)
30.G2.9std_alloc观念大整理
31.G4.9pull allocator运行观察
32.VC6和VC10的malloc比较
33.VC6内存分配(1)
34.VC6内存分配(2)
35.VC6内存分配(3)
36.VC6内存分配(4)
37.VC6内存分配(5)
38.SBH行为分析-分配+释放之连续动作图解(1)
39.SBH行为分析-分配+释放之连续动作图解(2)
40.SBH行为分析-分配+释放之连续动作图解(3)
41.SBH行为分析-分配+释放之连续动作图解(4)
42.VC6内存管理free(p)
43.VC6内存管理总结(上)
44.VC6内存管理总结(下)
45.上中下三个classes分析
46.Loki_allocator行为图解
47.class FixedAllocator分析(上)
48.class FixedAllocator分析(下)
49.Loki_allocator总结
50.GNU C++对allocators的描述
51.VS2013标准分配器&G4.9标准分配器与new_allocator以及G4.9malloc_allocator
52.G4.9array_allocator
53.G4.9debug_allocator
54.bitmap_allocator(上)
55.bitmap_allocator(下)
56.谈谈const
57.关于new,delete&重载operator new,operatar delete...
58.实例,接口
59.示例
60.Basic string使用new(extra)扩充申请量
|
|