Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
I

isa-l

> 编程语言
Open source

Intelligent Storage Acceleration Library

1.1K stars0 likes1 views
WebsiteGitHub

About

Intelligent Storage Acceleration Library

Intel(R) Intelligent Storage Acceleration Library

ISA-L is a collection of optimized low-level functions targeting storage applications. ISA-L includes:

  • Erasure codes - Fast block Reed-Solomon type erasure codes for any encode/decode matrix in GF(2^8).
  • CRC - Fast implementations of cyclic redundancy check. Six different polynomials supported.
    • iscsi32, ieee32, t10dif, ecma64, iso64, jones64, rocksoft64.
  • Raid - calculate and operate on XOR and P+Q parity found in common RAID implementations.
  • Compression - Fast deflate-compatible data compression.
  • De-compression - Fast inflate-compatible data compression.
  • igzip - A command line application like gzip, accelerated with ISA-L.

Also see:

  • ISA-L for updates.
  • For crypto functions see isa-l_crypto on github.
  • The github wiki including a list of distros/ports offering binary packages as well as a list of language bindings.
  • Contributing.
  • Security Policy.
  • Docs on units, tests, or build details.

API Usage Notes

Parameters passed to ISA-L functions are not fully validated. In particular, NULL pointers and other invalid inputs are not checked and may result in undefined behavior. Callers are responsible for ensuring all arguments are valid before invoking library functions.

Building ISA-L

Prerequisites

  • Make: GNU 'make' or 'nmake' (Windows).
  • Optional: Building with autotools requires autoconf/automake/libtool packages.
  • Optional: Manual generation requires help2man package.

x86_64:

  • Assembler: nasm. 2.14.01 minimum version required support).
  • Compiler: gcc, clang, icc or VC compiler.

aarch64:

  • Assembler: gas v2.24 or later.
  • Compiler: gcc v10.1 or later.

RISC-V 64:

  • Portable base functions:
    • Supported by most C compilers.
  • For RISC-V Vector (RVV) support:
    • Assembler: gas v2.39 or later.
    • Compiler: gcc v12.1 or later.

other:

  • Compiler: Portable base functions are available that build with most C compilers.

Autotools

To build and install the library with autotools it is usually sufficient to run:

bash
./autogen.sh
./configure
make
sudo make install

Makefile

To use a standard makefile run:

make -f Makefile.unx

Windows

On Windows use nmake to build dll and static lib:

nmake -f Makefile.nmake

or see details on setting up environment here.

CMake (Experimental)

Refer to cmake/README.md file.

Other make targets

Other targets include:

  • make check : create and run tests
  • make tests : create additional unit tests
  • make perfs : create included performance tests
  • make ex : build examples
  • make other : build other utilities such as compression file tests
  • make doc : build API manual

DLL Injection Attack

Problem

The Windows OS has an insecure predefined search order and set of defaults when trying to locate a resource. If the resource location is not specified by the software, an attacker need only place a malicious version in one of the locations Windows will search, and it will be loaded instead. Although this weakness can occur with any resource, it is especially common with DLL files.

Solutions

Applications using libisal DLL library may need to apply one of the solutions to prevent from DLL injection attack.

Two solutions are available:

  • Using a Fully Qualified Path is the most secure way to load a DLL
  • Signature verification of the DLL

Resources and Solution Details

  • Security remarks section of LoadLibraryEx documentation by Microsoft:
  • Microsoft Dynamic Link Library Security article:
  • Hijack Execution Flow: DLL Search Order Hijacking:
  • Hijack Execution Flow: DLL Side-Loading:

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言