计算机内存使用精髓
本文原创为freas_1990,转载请标明出处:http://blog.csdn.net/freas_1990/article/details/11094625
Jack:我悟透了,我天下无敌了。
我:最近睾丸酮吃多了吗?
Jack:我们来讨论下计算机内存的使用吧。
我:你最近练了什么绝招要来显摆显摆?
Jack:我们都知道“栈”(stack)和“堆”(heap)的概念。
我:是的。
Jack:一个程序会用到的栈的空间大小在编译时已经决定了,而堆的大小会在运行时动态分配。
我:是的。
Jack:所以,嵌入式裸板驱动程序是不会有malloc这样的系统调用的。
我:是的,所以,复杂的数据结构如链表、树啥的,对于嵌入式裸板驱动程序没有任何意义,它们本身也没有啥对象需要用这种高级数据结构来描述。
Jack:heap的概念是在1975年左右被提出来(参见《计算机程序设计艺术 2.5》,与爱因斯坦的《相对论》齐名)。所以,在1975年以前的程序在数据结构的描述能力上是比较有限的。
我:那你想过,为什么指针那么让人蛋疼,却仍然有那么多人在使用呢?
Jack:联系一下上面讨论的,思考一下,自然而然就明白了。
- 4楼lxgwm2008昨天 12:40
- 我:那你想过,为什么指针那么让人蛋疼,却仍然有那么多人在使用呢?n这句话我前后看了一下,还是不明白?能不能再解释一下?
- Re: freas_199010小时前
- 回复lxgwm2008n如果我直接告诉你答案,1个月以后就忘记了。如果是你自己思考出答案,5年以内都不会忘记。我希望能给朋友们一些启发,而不是把参考答案灌进脑子:)
- 3楼robinson1988昨天 10:38
- CA
- Re: freas_1990昨天 12:38
- 回复robinson1988n落总的房产生意如何?群p几个round了?
- 2楼qq13987011694昨天 21:25
- 语言来的精辟,对话语言犀利!给力!不愧是计算机大师
- Re: freas_1990昨天 23:17
- 回复qq13987011694n大湿
- 1楼u011379883昨天 20:59
- stack在编译时就确定,使用指针可以直接定位其他内存块处的数据,解决了不能动态malloc的尴尬;另外,使用指针不用copy数据块,速度有提升;