C 语言编程透视
文章平均质量分 87
本书以更为系统的视角,透视了 C 语言程序从编辑、编译、运行、调试和优化背后的来龙去脉,从而建立起更体系化的编程思维,构筑起解决问题的宏观把控能力。
泰晓科技
Tinylab.org | 聚焦嵌入式 Linux —— 追本溯源,见微知著!
展开
-
[授权发表]Linux 段错误详解
笔者早年写过一篇:《可恶的"Segmentation faults"之初级总结篇》,网络转载甚多。多年下来,关于段错误的讨论依旧很热烈,该问题也还是很常见。所以打算在这里再系统地梳理一下该问题的来龙去脉。原创 2015-05-21 23:32:00 · 3180 阅读 · 0 评论 -
[授权发表]源码分析:动态分析 Linux 内核函数调用关系
这是泰晓科技源码分析系列的第三篇,之前我们已经介绍了静态分析,应用程序的动态分析,这里介绍内核部分的动态分析,介绍到 Ftrace, Perf 和 FlameGraph。这三篇主要是函数级别的分析,接下来我们会再出一个源码级别的分析外加一个汇总性的文章,之后会转到 Android / Linux 性能分析 系列。原创 2015-04-23 11:55:23 · 2029 阅读 · 0 评论 -
[授权发表]把 VIM 打造成源代码编辑器
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第一章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:10:22 · 1111 阅读 · 0 评论 -
[授权发表]动态符号链接的细节
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第四章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:39:14 · 1153 阅读 · 0 评论 -
[授权发表]缓冲区溢出与注入分析
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第五章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:43:26 · 2198 阅读 · 0 评论 -
[授权发表]进程的内存映像
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第六章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:48:40 · 821 阅读 · 0 评论 -
[授权发表]GCC 编译背后的奥秘
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第二章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:26:28 · 1470 阅读 · 0 评论 -
[授权发表]程序执行的那一刹那
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第三章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:36:38 · 885 阅读 · 0 评论 -
[授权发表]进程和进程的基本操作
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第七章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:50:35 · 1405 阅读 · 0 评论 -
[授权发表]为可执行文件“减肥”
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第八章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:52:35 · 1763 阅读 · 0 评论 -
[授权发表]代码测试、调试与优化小结
这是开源书籍[《C语言编程透视》](http://www.tinylab.org/project/hello-c-world/)第九章,如果您喜欢该书,请关注我们的新浪微博[@泰晓科技](http://weibo.com/tinylaborg)。原创 2015-04-12 17:54:33 · 969 阅读 · 0 评论 -
[授权发表]也谈C语言编程风格:从程序员到工程师的蜕变
编程风格要平衡各个方面的需求,最终让产品团队高效、快乐地生产出高质量、高效的软件,并且要确保软件在整个生命周期内利于各个阶段的活动,包括前期编写、中期评审、后期测试和长期维护。原创 2015-04-12 16:32:32 · 1012 阅读 · 0 评论 -
[授权发表]源码分析:静态分析 C 程序函数调用关系
源码分析是程序员离不开的话题。无论是研究开源项目,还是平时做各类移植、开发,都避免不了对源码的深入解读。工欲善其事,必先利其器。今天我们来玩转一个小工具,叫 Callgraph,它可以把 C 语言的函数调用树(或者说流程图)画出来。本来主要通过它来静态分析一个 C 语言程序。原创 2015-04-14 00:11:23 · 2216 阅读 · 0 评论 -
[授权发表]源码分析:动态分析 C 程序函数调用关系
上篇《静态分析 C 程序函数调用关系图》 介绍了 CallGraph 静态分析 C 语言程序的函数调用,该篇继续分析源码,不过是分析 C 程序运行时的函数调用关系,所以谓之动态分析,主要讲 Gprof 以及 Valgrind 的 Callgrind,外加 Gprof2Dot。这里主要是分析应用空间,下篇将分析 Linux 内核空间的函数调用关系,相应的工具包括 Perf, Ftrace, FlameGraph。原创 2015-04-15 01:09:07 · 2569 阅读 · 0 评论 -
[授权发表]开源书籍:《C语言编程透视》
2007年开始系统地学习Shell编程,并在兰大开源社区写了序列文章。在编写《Shell编程范例序列》文章的《进程操作》一章时,为了全面了解进程的来龙去脉,对程序开发过程的细节、ELF格式的分析、进程的内存映像等进行了全面地梳理,后来搞得“雪球越滚越大”,甚至脱离了Shell编程关注的内容。所以想了个小办法,“大事化小,小事化了”,进而不断演化出了《C语言编程透视》一书。转载 2015-04-12 17:01:15 · 2116 阅读 · 0 评论