Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
libloong — The fastest LoongArch sandbox | Kitploit
工具/GitHubGitHub/libriscv/libloong
Embedded Systems SecurityReverse EngineeringSecurity VirtualizationFuzzingHardware SecurityBinary Analysis
GitHublibriscv/libloong

libloong

The fastest LoongArch sandbox

查看仓库
6437个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

LoongArch64 沙箱库

libloong 是一个专为嵌入和高频脚本设计的64位高性能LoongArch模拟器库。它基于libriscv架构构建,提供了目前最快的64位解释器性能,代码量仅为约18,000行,且零依赖。

你也可以在命令行界面中运行LoongArch64 Linux程序。

  • 通用性: 与JIT不同(JIT需要特定平台的代码生成,且在受限平台上不可用),libloong可在任何地方运行,包括 Nintendo Switch (1 & 2)、iOS 及其他环境。
  • 标准化: 运行标准Linux二进制文件。
  • 超低延迟: 传统的VM(如Lua或Java)通常存在较高的调用开销(约150ns)。libloong实现了 约4ns的本机到客户机调用开销,非常适合热循环游戏引擎脚本。

性能基准测试

在 CoreMark 1.0 解释器基准测试(2025年12月)中,libloong 在Ryzen 7950X上领先64位类别,可靠地达到 3000+ 的分数。

CoreMark 1.0 解释器分数

解释器架构分数
libloong64位 LoongArch3045
libriscv64位 RISC-V2865
stitchWasm2743
wasm3Wasm2368
wasmer (WAMR)Wasm2314
wasmiWasm1967

高级模式: 虽然解释器是便携性的主要关注点,但libloong包含一个轻量级JIT,可达 原生性能的38%(15.5k CoreMark),以及一个嵌入式二进制翻译器,可达 原生性能的~77%(31.9k CoreMark)。

特性

  • 绑定: 原生C++ API,以及Rust和Go绑定。
  • 向量支持: 完全支持LSX和LASX指令集。
  • 内存安全: 严格的内存沙箱,可选屏蔽内存区域。
  • 状态管理: 一流的暂停、恢复和序列化机器状态支持。
  • 动态执行: 可以加载并执行动态可执行文件,以及嵌入式JIT(例如LuaJIT)*

设计

游戏引擎脚本是libloong的强项。传统游戏通过共享库(完全系统访问)、嵌入式VM(如Lua,约150ns调用开销)或Java运行时来暴露模组功能。libloong 的调用开销约为4ns。

t

参见 示例 Asteroid 游戏。

构建

CMake 配置选项:

  • LA_DEBUG=ON/OFF - 启用调试输出(默认:OFF)
  • LA_BINARY_TRANSLATION=ON/OFF - 启用二进制翻译(默认:OFF)
  • LA_THREADED=ON/OFF - 启用线程化字节码分发(默认:ON)
  • LA_MASKED_MEMORY_BITS=N - 设置屏蔽内存区域大小为2^N字节(0=禁用,默认:0)

带选项的示例:

root@kitploit:~
cmake .. -DCMAKE_BUILD_TYPE=Release \
         -DLA_MASKED_MEMORY_BITS=32 \
         -DLA_BINARY_TRANSLATION=ON
make -j6

快速开始

root@kitploit:~
#include <libloong/machine.hpp>

int main() {
    // 加载 LoongArch ELF 二进制文件
    std::vector<uint8_t> binary = load_file("program.elf");

    // 创建一个具有64MB内存的机器
    loongarch::Machine machine { binary, {
        .memory_max = 64 * 1024 * 1024
    }};

    // 设置程序参数
    machine.setup_linux({"program"}, {"LC_ALL=C"});

    // 运行程序
    machine.simulate();
}

文档

  • 集成指南
  • API参考
  • LoongArch ISA支持
下载工具