关于LUA源代码分析学习教程
关于LUA源代码分析学习教程是本文要介绍的内容,主要是来学习lua中关于源码的内容,具体内容来看本文详解。
原文是英文版的,利用一点时间翻译成中文的。希望bina大虾指点一二。
ldebug.c - 调试接口:包含访问调试钩子的函数(lua_sethook/lua_gethook/lua_gethookcount),访问运行时堆栈信息的函数 (lua_getstatck/lua_getlocal/lua_setlocal),检查字节码函数(luaG_checkopenop /luaG_checkcode), 和抛出错误的函数(luaG_typeerror/luaG_concaterror /luaG_aritherror/luaG_ordererror/luaG_errormsg/luaG_runerror) lzio.c - 一个通用的带缓冲区的输入流接口 lmem.c - 内存管理的接口.通过封装内存分配函数,实现了luaM_realloc / luaM_growaux_两个函数. lgc.c - 垃圾回收器(内存管理) lstate.c - 全局上下文. 包括打开和关闭LUA上线文的函数(lua_newstate/lua_close)和lua线程函数(luaE_newthread/luaE_freethread) lobject.c - 一些针对Lua对象的通用函数。 包括数据类型到字符串转换函数,纯数据相等测试函数(luaO_rawequalObj),和日志基础2(luaO_log2) lstring.c - 字符串表(保存所有由Lua操作的字符串集合) lfunc.c - 包装原型和闭包的辅助函数 ltable.c - Lua表实现(哈希) lcode.c - Lua的代码生成器。被lparser.c使用 llex.c - 此法分析器。被lparser.c使用 lparser.c - Lua语法检查器 lundump.c - 加载预编译后的Lua代码块,函数luaU_undump,加载一个预编译后的代码块;luaU_header(被luaU_undump使用的内部函数),用来检查函数头部。 ldump.c - 保存预编译后的Lua代码块。函数luaU_dump,使用预编译后的代码字符串展示一个函数; lopcodes.c - Lua虚拟机的操作符。定义所有操作符的名称和信息(使用luaP_opnames和luaP_opmodes两个表保存) lvm.c - Lua虚拟机。执行字节码(luaV_execute)。也暴漏一些lapi.c可能用到的函数(例如:luaV_concat) ldo.c - Lua的栈和调用结构。控制函数调用(luaD_call/luaD_pcall),栈增长,协同代码的同步 ltm.c - 标记原语方法。实现对象访问原语方法(metathods) lbaselib.c - 基础函数库 lstrlib.c - 字符串库 ltable.c - 表操作库 lmathlib.c - 数学库 loslib.c - 操作系统相关库 liolib.c - 输入输入库 loadlib.c - 模块库(实现require函数,package函数) ldblib.c - 调试库 lapi.c - Lua的API.实现Lua C API(lua_*函数)集合 lauxlib.c - 定义所有的luaL_*函数集 linit.c - 实现luaL_openlibs方法,便于在C语言中加载上述模块 lua.c - Lua独立解释器 print.c - 定义 "PrintFunction?" 函数,用于在函数中打印字节码(被luac.c中-l参数所用) luac.c - Lua编译器(保存字节码到一个文件,也可以列出字节码)
The prefix of a external symbol indicates the module it comes from:
外部符号的前缀暗示他来自哪一个文件:
相关推荐
帕尼尼 2020-10-30
Noneyes 2020-11-10
huavhuahua 2020-11-20
weiiron 2020-11-16
ailxxiaoli 2020-11-16
cakecc00 2020-11-15
千锋 2020-11-15
JakobHu 2020-11-14
chensen 2020-11-14
Nostalgiachild 2020-11-13
guangcheng 2020-11-13
zhangxiafll 2020-11-13
jipengx 2020-11-12
xirongxudlut 2020-11-10
solarLan 2020-11-09
pythonxuexi 2020-11-08
文山羊 2020-11-07
susmote 2020-11-07
wuShiJingZuo 2020-11-05