yzh第六课(NEMU代码导读)笔记

了解程序/工具行为的两种方法:

1. 看源码:可以得知每一处静态细节,但较繁琐

2. 看踪迹:容易了解运行动态行为,但不全面

下手要选容易的方式:看踪迹

在面对比较大的项目时,如果这个项目有自带的 log/trace,那简直就是无价之宝 

a

a

使用 man console_codes 可以看到很多类似于 “如何使用 printf 打印有颜色的输出 / 或者叫一声” 的内容

使用 man setbuf 可以看到关于输出终端缓冲区的一些内容

a

这是设置项目 Log 机制的一个非常好的例子(重点:1. 使用 __FILE__, __LINE__, __func__ 可以非常方便后期的调试  2. 宏展开后,字符串末尾自动加'\n')

a

把内存设置为随机值的原因是:如果内存初始化为0,当nemu上的程序中存在某些bug时,可能不会被暴露出来,因此设置为随机值让它暴露出来

a

可以使用 clang-format 等代码格式化工具来格式化 预编译 输出,可大幅提高工作效率。

(能让电脑做的事情,就别人工去做)

a

有些宏看起来多此一举,实际上是为了方便编译器优化它们

a

最好的代码是 1. 不言自明 2. 不言自证的

a

Kconfig 的本质:是一个用来维护 宏之间的依赖关系 的工具

a

 Menu config

a

a

 Makefile 中的黑白名单

a

a

a


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部