准备在以后的博客中主要就是写自己对一些源码的学习和理解。那再阅读之前肯定是要准备一些基础的知识的。请看:
1. c语言
就目前的项目情况来看,无论是erlang还是java还是现在的mudos,虚拟机部分都是用c来实现的,所以呢,对编写人员的c语言掌握要求挺高,不仅需要熟知语法,还要熟悉一些习惯用法和常用技巧,系统函数的调用也必须清楚。
2. 数据结构
在各种源码中,到处可以看到数组、链表、散列表、树的应用,比如hash talbe,生成Bytecode时对树的前序后序遍历。
3. 操作系统
这里的操作系统限于linux unix类的,因为目前的环境都是linux,所以掌握必备的linux基本系统知识和相应的操作指令是需要的。
4. 编译器和调试器
在linux下编译和调试erlang,lua,mudos分别使用gcc和gdb,因此,要想很好的阅读和追踪他们的代码,需要熟练使用这两个工具。如果是在windows下的vs环境的话
也可以(配合插件调试的还挺舒服) ,不过gdb也不麻烦,还是用用吧。
5. 编译技术
这些都是关键了。
1) 词法分析
常用的词法分析是lex/flex,像mudos这种是自己写的词法分析,所以这块也是学习的重点。