Newer
Older
<!--
#
# Critical Application Monitoring (CAM)
#
# SPDX-FileCopyrightText: <text>Copyright 2023
# Arm Limited and/or its affiliates <open-source-office@arm.com></text>
# SPDX-License-Identifier: BSD-3-Clause
#
-->
# Critical Application Monitoring (CAM)
The Critical Application Monitoring (CAM) project implements a solution for
monitoring applications using a service running on a higher safety level system.
The approach aims to take advantage of running heavy workloads in
high-performance cores whilst adding an extra layer of safety by monitoring such
applications via a higher safety subsystem.
## Building CAM
To build __cam__, the following dependencies are required:
- CMake (3.16 or later)
- GCC (9.4 or later)
- Python (3.8.10 or later)
- Python-dev (3.8.10 or later, same version as Python)
- Pip (20.0 or later)
- pkg-config (0.29.1 or later)
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
In addition, the following dependencies are optional:
- Python virtual environment (3.8.2 or later).
- Doxygen (1.8.17 or later): Generate API documentation from source code.
- Sphinx (6.1.3 or later): Build the project documentation.
- Git version control system.
Create a Python virtual environment then install the Python dependencies:
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
Create a build directory and run cmake:
$ mkdir build
$ cd build
$ cmake ../
Build and install:
$ make
$ cmake --install . --prefix <install-location>
Which will copy everything to:
* `<install-location>/lib`
* `<install-location>/bin`
* `<install-location>/include`
* `<install-location>/share/doc`
## Documentation
The project documentation is based on Sphinx. It is generated after building.
To explore this documentation, simply open
`<install-location>/share/doc/CAM/cam-doc/index.html` in a web browser.