Verified Environments
To use the HMPP smoothly and securely, ensure that your environment is one of the verified environments.
Table 1 lists the environments in which the HMPP has been verified. The compilers of different OSs are of the default versions.
OS |
CPU |
Compiler |
|---|---|---|
openEuler 22.03 LTS SP3 |
Kunpeng 920 |
GCC 10.3.0 |
openEuler 22.03 LTS SP2 |
Kunpeng 920 |
GCC 10.3.0 |
openEuler 20.03 LTS SP1 |
Kunpeng 920 |
GCC 7.3.0 |
CentOS Linux release 7.6.1810 (AltArch) |
Kunpeng 920 |
GCC 4.8.5 or 7.3.0 |
NeoKylin Server V7.0 U6 for ARM |
Kunpeng 920 |
GCC 4.8.5 |
UOS (Uniontech OS) 20 |
Kunpeng 920 |
GCC 7.3.0 |
Ubuntu 18.04 |
Kunpeng 920 |
GCC 7.3.0 |
Kylin release V10 |
Kunpeng 920 |
GCC 7.3.0 |
- The HMPP supports only Kunpeng 920 processors and will exit abnormally for any other processors.
- HMPP is a bottom-layer primitive library. The computing process involves memory read/write and allocation. You must install the OS by yourself and perform OS security hardening. Install only necessary applications or uninstall unnecessary applications that have been installed.
- To prevent buffer overflow attacks, you are advised to use the address space layout randomization (ASLR) technology to randomize the layout of linear areas such as the heap, stack, and shared library mapping to make it more difficult for attackers to predict target addresses and locate code. This technology can be applied to heaps, stacks, and memory mapping areas (mmap base addresses, shared libraries, and vDSO pages).
Enabling method: echo 2 >/proc/sys/kernel/randomize_va_space
Note the following when using the HMPP:
- HMPP version
- OS compatibility
Check whether the OS and CPU type are listed in Table 1.
- If the system is UOS 20, install awk and XmlLint in advance.
- Install the AWK.
Most released Linux OSs come with AWK by default. Do as follows to install AWK if it is not preconfigured:
1yum install gawk
- Install the XmlLint.
- Obtain the XmlLint source package libxml2-2.8.0.tar.gz.
- Decompress the source package.
1tar -zxvf libxml2-2.8.0.tar.gz
- Configure compilation environment variables.
1./configure --prefix=/usr/local/libxml2 --build=arm-linux
- Compile the source code and install the tool.
1make && make install
- Copy the xmllint file to the /usr/bin directory.
1cp libxml2-2.8.0/.libs/xmllint /usr/bin/
- Install the AWK.