DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@amd.com>
To: David Young <dave@youngcopy.com>, dev@dpdk.org
Cc: Bruce Richardson <bruce.richardson@intel.com>
Subject: Re: [PATCH 6/6] Section 6: Glossary
Date: Mon, 25 Sep 2023 12:43:00 +0100	[thread overview]
Message-ID: <17002500-f69f-4686-9c2f-5222c82a1a53@amd.com> (raw)
In-Reply-To: <20230920154817.617-7-dave@youngcopy.com>

On 9/20/2023 4:48 PM, David Young wrote:
> ---
>  doc/guides/getting_started_guide/glossary.rst | 75 +++++++++++++++++++
>  1 file changed, 75 insertions(+)
>  create mode 100644 doc/guides/getting_started_guide/glossary.rst
> 
> diff --git a/doc/guides/getting_started_guide/glossary.rst b/doc/guides/getting_started_guide/glossary.rst
> new file mode 100644
> index 0000000000..7fcfe16f38
> --- /dev/null
> +++ b/doc/guides/getting_started_guide/glossary.rst
> @@ -0,0 +1,75 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(c) 2010-2025 Intel Corporation.
> +
> +Glossary
> +========
> +
> +This glossary provides definitions for key terms and concepts used within DPDK. Understanding these terms will help in comprehending the functionality and architecture of DPDK.
> +
> +**BIOS (Basic Input/Output System)**
> +
> +The firmware used to perform hardware initialization during the booting process and to provide runtime services for operating systems and programs.
> +

BIOS seems a little too generic for DPDK context, not sure.



> +**Bifurcated Driver**
> +
> +A driver model that splits functionality between kernel and userspace, often used in high-performance networking.
> +
> +**Clang-LLVM**
> +
> +A compiler toolchain that includes the Clang C compiler and LLVM linker, used for building DPDK on Windows.
> +
> +**contigmem Module**
> +
> +A module in FreeBSD that provides physically contiguous memory allocation used by DPDK.
> +
> +**DMA (Direct Memory Access)**
> +
> +A feature that allows hardware devices to access the main system memory directly, without involving the CPU.
> +
> +**EAL (Environment Abstraction Layer)**
> +
> +The layer within DPDK that abstracts environmental specifics and provides a standard programming interface.
> +
> +**hugepages**
> +
> +Large memory pages used by the operating system to manage memory more efficiently, especially in high-performance applications like DPDK.
> +
> +**IOMMU (Input-Output Memory Management Unit)**
> +
> +A hardware component that translates device-visible virtual addresses to physical addresses, providing memory protection and isolation.
> +
> +**MinGW-w64 Toolchain**
> +
> +A development environment for creating Windows applications, used as an option for compiling DPDK on Windows.
> +

"on Windows" vs "for Windows" ?



> +**NIC (Network Interface Card)**
> +
> +A hardware component that connects a computer to a network.
> +
> +**nic_uio Module**
> +
> +A UIO driver for network devices in FreeBSD, used by DPDK.
> +
> +**NUMA (Non-Uniform Memory Access)**
> +
> +A computer memory design used in multiprocessing where the memory access time depends on the memory location relative to the processor.
> +
> +**PMD (POLL Mode Driver)**
> +
> +A type of driver in DPDK that continuously polls for events rather than relying on interrupts, often used for high-performance networking.
> +

This is the only type of driver that DPDK has, and at this point term
kind of tied to DPDK, in case above can be read as this is one of the
driver types in DPDK.



> +**SoC (System on a Chip)**
> +
> +An integrated circuit that integrates all components of a computer or other electronic system into a single chip.
> +
> +**UIO (Userspace I/O)**
> +
> +A Linux kernel module that enables user-space applications to access hardware devices directly.
> +
> +**VFIO (Virtual Function I/O)**
> +
> +A kernel driver that allows a virtual machine to access physical devices directly, used in DPDK for device assignment.
> +

I am not sure if this is accurate, although it is not exactly wrong,
vfio.ko is a kernel module implementation for below 'vfio platform', and
allows "userspace applications (including virtual machine)" to access
physical device. Enables DPDK to directly access to the physical devices.

To prevent duplication, perhaps easier to first describe the "VFIO
Platform" and later describe vfio.ko as kernel module implementation for
"VFIO Platform" used by DPDK?



> +**VFIO Platform**
> +
> +A framework in Linux that allows exposing direct device access to userspace, in a secure, IOMMU-protected way.
> \ No newline at end of file

What do you think to add 'RTE' too, it may confuse some newcomers?


  reply	other threads:[~2023-09-25 11:43 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-20 15:48 [PATCH 0/6] docs: Unify Getting Started Guides David Young
2023-09-20 15:48 ` [PATCH 1/6] Section 1: Introduction David Young
2023-09-25 11:30   ` Ferruh Yigit
2023-10-11 18:26     ` Dave Young
2023-09-20 15:48 ` [PATCH 2/6] Section 2: Install and Build DPDK David Young
2023-09-25 11:30   ` Ferruh Yigit
2023-09-25 12:20     ` Bruce Richardson
2023-09-25 16:05   ` Tyler Retzlaff
2023-10-12 18:08     ` Dave Young
2023-10-17 13:37       ` Tyler Retzlaff
2023-09-20 15:48 ` [PATCH 3/6] Section 3: Setting up a System to Run DPDK Applications David Young
2023-09-25 11:31   ` Ferruh Yigit
2023-09-25 12:22     ` Bruce Richardson
2023-10-12 17:32       ` Dave Young
2023-09-20 15:48 ` [PATCH 4/6] Section 4: Running Applications David Young
2023-09-25 11:32   ` Ferruh Yigit
2023-09-20 15:48 ` [PATCH 5/6] Section 5: Appendix David Young
2023-09-25 11:33   ` Ferruh Yigit
2023-09-25 11:52     ` Ferruh Yigit
2023-09-25 12:24     ` Bruce Richardson
2023-09-20 15:48 ` [PATCH 6/6] Section 6: Glossary David Young
2023-09-25 11:43   ` Ferruh Yigit [this message]
2023-09-22  4:15 ` [PATCH 0/6] docs: Unify Getting Started Guides Tyler Retzlaff
2023-09-22 14:47 ` David Marchand
2023-09-22 15:54   ` Bruce Richardson
2023-09-25 11:54 ` Ferruh Yigit
2023-10-11 18:34   ` Dave Young
2023-10-13 16:28   ` Bruce Richardson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17002500-f69f-4686-9c2f-5222c82a1a53@amd.com \
    --to=ferruh.yigit@amd.com \
    --cc=bruce.richardson@intel.com \
    --cc=dave@youngcopy.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).