summaryrefslogtreecommitdiffstats
path: root/docs/whatisvpp/developer.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/whatisvpp/developer.rst')
-rw-r--r--docs/whatisvpp/developer.rst29
1 files changed, 29 insertions, 0 deletions
diff --git a/docs/whatisvpp/developer.rst b/docs/whatisvpp/developer.rst
new file mode 100644
index 00000000000..5151e65ff74
--- /dev/null
+++ b/docs/whatisvpp/developer.rst
@@ -0,0 +1,29 @@
+.. _developer-friendly:
+
+=======================
+Features for Developers
+=======================
+
+This section describes a little about the VPP environment and some of the features
+that can be used by developers.
+
+* Extensive runtime counters; throughput, `intructions per cycle <https://en.wikipedia.org/wiki/Instructions_per_cycle>`_, errors, events etc.
+* Integrated pipeline tracing facilities
+* Multi-language API bindings
+* Integrated command line for debugging
+* Fault-tolerant and upgradable
+
+ * Runs as a standard user-space process for fault tolerance, software crashes seldom require more than a process restart.
+ * Improved fault-tolerance and upgradability when compared to running similar packet processing in the kernel, software updates never require system reboots.
+ * Development experience is easier compared to similar kernel code
+ * Hardware isolation and protection (`iommu <https://en.wikipedia.org/wiki/Input%E2%80%93output_memory_management_unit>`_)
+
+* Built for security
+
+ * Extensive white-box testing
+ * Image segment base address randomization
+ * Shared-memory segment base address randomization
+ * Stack bounds checking
+ * Static analysis with `Coverity <https://en.wikipedia.org/wiki/Coverity>`_
+
+For the supported architectures click next.