The Programmer's View describes all the runtime software components that would be used in an FPGA-enabled EC2 instance like F1. It supports linux operating systems only.
This directory contains the source and build files for the needed components:
-
The fpga_mgmt_tools directory contains Amazon FPGA Image (AFI) Management Tools: A linux shell commands to manage AFI, Virtual JTAG, Virtual LED and DIPSwitches. Calling
sdk_setup.sh
will compile and install the tools. -
The Include directory contains the header files required for integration with a C/C++ application.
-
The FPGA Libraries contains source files for fpga_pci and fpga_mgmt libraries: libraries used to integrate with C/C++ applications, and need to be compiled and statically linked with the C/C++ applications. The CL Examples have example applications builds that use these libraries.
-
The Utility contains source files for various utilities used by the fpga_libs and fpga_mgmt_tools, like logging services.
In recent versions of glibc, readdir_r
(a reentrant version of readdir
) was marked as deprecated in favor of readdir
. However, readdir
is not guaranteed to be threadsafe. The library uses a pthread_mutex_t
to ensure that only one thread at a time can invoke readdir. The fpga_mgmt
library also exports this mutex to make it possible for code which links to this library to protect any calls to readdir. See fpga_pci.h
for more information.