Lines Matching refs:a
3 The SPDK repository is, first and foremost, a collection of high-performance
7 (`lib` and `module`) inside of the SPDK repository in a deliberate way to prevent
25 libraries easier to implement. For example, `spdk_log` contains macro definitions that provide a
26 consistent logging paradigm and `spdk_json` is a general purpose JSON parsing library.
27 - Protocol Libraries: These libraries contain the building blocks for a specific service. For examp…
29 - Storage Service Libraries: These libraries provide a specific abstraction that can be mapped to s…
31 …provides a general block device abstraction layer, `spdk_lvol` provides a logical volume abstracti…
32 `spdk_blobfs` provides a filesystem abstraction, and `spdk_ftl` provides a flash translation layer
34 - System Libraries: These libraries provide system level services such as a JSON based RPC service
36 …is the `spdk_env_dpdk` library which provides a shim for the underlying Data Plane Development Kit…
40 This library defines a framework used by the applications contained in the `app` and `example` dire…
47 Much like the `spdk_event` library, the `spdk_env_dpdk` library has been architected in such a way …
57 There are seven sub-directories in the `module` directory which each hold a different class of libr…
61 …are registered with that library at runtime by way of a specific constructor function. The parent …
62 …the `lib` directory then manages the module directly. These types of libraries each implement a fu…
75 - Free libraries: These libraries are highly dependent upon a library in the `lib` directory but ar…
76 …explicitly registered to that library via a constructor. The libraries in the `blob`, `blobfs`, an…
93 defines the interfaces a bdev module library would need to implement, `bdev.h` contains general blo…
95 exposes zoned bdev specific functions. Many of the other libraries exhibit a similar behavior of sp…
96 headers between consumers of the library and those wishing to register a module with that library.
106 included in a header in the `include/spdk_internal` directory.
120 objects, each one has a corresponding map file (e.g. `spdk_nvmf` relies on `spdk_nvmf.map`). SPDK l…
121 not exporting any symbols rely on a blank map file located at `mk/spdk_blank.map`.
127 SPDK shared objects follow a semantic versioning pattern with a major and minor version. Any change…
128 break backwards compatibility (symbol removal or change) will cause a shared object major increment…
129 backwards compatible changes will cause a minor version increment; i.e. an application that relies …
146 Shared objects in SPDK are created on a per-library basis. There is a top level `libspdk.so` object
147 which is a linker script. It simply contains references to all of the other spdk shared objects.
156 2. An application can link to only a subset of libraries by linking directly to the ones it relies …
167 will need to be supplied to the linker when linking the application even though `spdk_log` is a dep…
185 file. The environment can either be implemented wholesale in a single library or as a two-part