Lua - LuaJIT 介绍


Lua - LuaJIT 介绍 luajit(www.luajit.org)是 lua 的一个Just-In-Time也就是运行时编译器。 什么是 JIT JIT = Just In Time即时编译,是动态编译的一种形式,是一种优化虚拟机运行的技术。 程序运行通常有两种方式,一种是静态编译,一种是动态解释,即时编译混合了这二者。Java和.Net/mono中都使用了这种技术。 然而IOS中禁止使用(不是针对JIT,而是所有的动态编译都不支持)! 为什么要使用JIT 解释执行 效率低 代码暴露 静态编译 不够灵活,无法热更新 平台兼容性差 JIT 效率:高于解释执行,低于静态编译 安全性:一般都会先转换成字节码 热更新:无论源码还是字节码本质上都是资源文件 兼容性:虚拟机会处理平台差异,对用...

Lua - LuaJIT 介绍 luajit(www.luajit.org)是 lua 的一个Just-In-Time也就是运行时编译器。 什么是 JIT JIT = Just In Time即时编译,是动态编译的一种形式,是一种优化虚拟机运行的技术。 程序运行通常有两种方式,一种是静态编译,一种是动态解释,即时编译混合了这二者。Java和.Net/mono中都使用了这种技术。 然而IOS中禁止使用(不是针对JIT,而是所有的动态编译都不支持)! 为什么要使用JIT 解释执行 效率低 代码暴露 静态编译 不够灵活,无法热更新 平台兼容性差 JIT 效率:高于解释执行,低于静态编译 安全性:一般都会先转换成字节码 热更新:无论源码还是字节码本质上都是资源文件 兼容性:虚拟机会处理平台差异,对用户透明 LuaJIT vs. Lua Lua主要由以下三部分组成: 语法实现 库函数 字节码 LuaJIT主要由以下四部分组成: 语法实现 Trace JIT编译器 库函数 原生库++(强化过的原生库) bit ffi jit 字节码 注:最新luajit对应 lua5.1.5. trace jit...

发布者: 作者: 转发
评论区 (0)
U