作者tinlans ( )
看板CSSE
标题Re: [心得] 不了解电脑
时间Thu Dec 28 12:55:06 2006
※ 引述《sirII (爪哇我的生活~)》之铭言:
: ※ 引述《final01 (牛顿运动定律)》之铭言:
: : 最近对电脑系统方面有兴趣(OS.compiler...)
: : 发现网路是有不少相关资料但真的不太容易下手
: : 向我就好奇debug的原理还有桌面环境是如何做出来的
: : 发现有很多的学问.有想去了解它们
: : 但我linux kernel都没时间去搞定他gcc 根本没碰
: : 我在想我想深入了解电脑是不是方向搞错了呢?
: 我想您需要的是先去读os的原理, 市面上有很多os的书.
: 其中经典本是恐龙本. compiler的领域又跟os不一样了.
: debug的原理我是不知道您指的是debug工具还是程式语言
: 本身所抛出的错误. 如果是工具倒也不用钻到compiler那
: 麽底层. 不过要对某个程式语言很熟悉就是了(比较有针对
: 性). 总之您提到的OS和compiler是两门不同的领域..
: 建议您可以边玩linux边看os原理. 这样才比较有办法掌握.
我想他所谓「debug 的原理」,
可能是指 compiler 输出的 debugging information,
以及 debugger 如何利用这些 information 进行 debug,
还有像是 hardware watchpoint registers 如何被 debugger 使用等等的,
然而这些知识的来源都不是单一的,
甚至现代系统上所使用的技术可能也没有相当系统化的书籍可以看。
真对这些东西有兴趣的话,
可以搜寻一下 ELF format、dwarf-2、stabs 等关键字,
然後去 gdb 网站拿个 gdb internals manual 来边看边 trace gdb,
可能会是比较实际又有效果的做法,
但是会「非常」花时间就是了。
--
Name: Tseng, Ling-hua E-mail Address:
[email protected]
School: National Tsing Hua University Department: Computer Science
Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design
Researching: Software pipelining for VLIW architectures
Homepage:
https://it.muds.net/~uranus
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.216.58
1F:推 UNARYvvv:前辈终於上Ptt了XD(Programming板看您文章常觉获益良多) 12/29 01:09
2F:推 godfat:有相似感觉…XD 12/29 15:51