Embedded Linux and Applications

0.0(0)
Studied by 3 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/52

flashcard set

Earn XP

Description and Tags

Vocabulary practice flashcards covering Embedded Linux fundamentals, system architecture, hardware interfaces, Raspberry Pi and BeagleBone board layouts, filesystem structures, and shell command tools.

53 Terms

1
New cards

Linux-Based Embedded Application

Software running on a Linux-enabled embedded platform that communicates with physical hardware through Linux's kernel, drivers, and hardware interfaces to perform a dedicated product function.

2
New cards

Embedded System

A dedicated computing system designed to serve one specific product function, sense or control the physical world, and run unattended starting from power-on.

3
New cards

Application Layer

The top architectural software layer that contains the specific product logic (such as a logger, control loop, or dashboard) to decide what the device reads, calculates, and executes.

4
New cards

Libraries and APIs Layer

The software layer (such as libgpiod or I2C, SPI, and serial libraries) that translates high-level application requests like reading a temperature into system calls understood by Linux.

5
New cards

Linux Kernel

The central core of the operating system that verifies permissions, schedules processes, manages memory, and routes requests to the appropriate device driver subsystems.

6
New cards

Device Drivers

Kernel software components that directly interact with physical controllers and peripheral hardware by managing registers, timing, and communication protocols.

7
New cards

GPIO (General Purpose Input/Output)

A digital interface using 11 pin per signal to perform digital on/off operations as either an input or an output for peripherals like buttons, LEDs, and relays.

8
New cards

PWM (Pulse Width Modulation)

A digital interface that uses 11 pin emitting timed pulses to vary power or mechanical position by adjusting pulse width, used for motors, servos, and dimmers.

9
New cards

ADC (Analog-to-Digital Converter)

An interface that takes an analog voltage signal through an input pin and converts it into a digital numerical value for processing by the processor.

10
New cards

UART (Universal Asynchronous Receiver-Transmitter)

A serial bus interface using 22 wires to transmit serial bytes point-to-point between two devices, such as a main board and a GPS module.

11
New cards

I2C (Inter-Integrated Circuit)

A serial bus interface using 22 wires that allows a single board to communicate with multiple slave devices and sensor chips.

12
New cards

SPI (Serial Peripheral Interface)

A synchronous serial bus interface using 44 wires that provides the highest data transfer speeds for communication with peripherals like displays.

13
New cards
<p>Raspberry Pi 4 Model B Hardware Layout</p>

Raspberry Pi 4 Model B Hardware Layout

A single-board computer featuring a Broadcom SoC with four 64-bit Arm cores (1), 1 to 8 GB RAM (2), microSD card storage (3), a 40-pin GPIO header at 3.3 V3.3\,\text{V} without an ADC (4), four USB ports (5), on-board Ethernet/Wi-Fi/Bluetooth (6), and HDMI/DSI/CSI display and camera connectors (7).

14
New cards
<p>BeagleBone Black Hardware Layout</p>

BeagleBone Black Hardware Layout

An I/O-focused single-board computer featuring a TI AM335x SoC with a 1 GHz1\,\text{GHz} Arm Cortex-A8 (1), 512 MB512\,\text{MB} RAM (2), on-board eMMC flash and microSD storage (3), dual 46-pin headers P8 and P9 supporting up to 65 GPIOs (4), 7 built-in ADC channels on P9 with a 1.8 V1.8\,\text{V} maximum (5), two PRU real-time cores (6), and Ethernet plus USB host/device ports (7).

15
New cards

HAT (Hardware Attached on Top)

An add-on expansion board specification that plugs directly onto the 40-pin GPIO header of a Raspberry Pi.

16
New cards

Cape

An add-on expansion board designed to plug onto the P8 and P9 headers of a BeagleBone board.

17
New cards

PRU (Programmable Real-Time Unit)

Two dedicated 32-bit real-time microcontroller cores integrated inside the BeagleBone's TI AM335x SoC used to handle microsecond-level timing and tight control loops independent of Linux scheduling.

18
New cards

IIO (Industrial I/O)

A Linux kernel subsystem and driver framework designed to handle analog-to-digital converters, digital-to-analog converters, and industrial sensor data like vibration and current.

19
New cards

MMU (Memory Management Unit)

A specialized hardware chip feature required to run full Linux by managing virtual memory, present on application processors like Broadcom and TI AM335x, but absent in simple microcontrollers like plain Arduinos.

20
New cards

Embedded Linux

A configuration consisting of the Linux kernel plus stripped-down, tailored software components running on hardware built to perform one dedicated job well.

21
New cards

Bootloader

The very first software program that executes on power-on to wake up the board's hardware and load the operating system kernel into RAM.

22
New cards

Device Tree

A configuration data file that lists and describes the exact hardware layout, registers, and pin assignments of a specific board to the kernel during boot, functioning like a hardware floor plan.

23
New cards

Root Filesystem

The top-level hierarchy of files containing programs, libraries, settings, and services required for the Linux operating system to function.

24
New cards
<p>Embedded Linux Boot Sequence</p>

Embedded Linux Boot Sequence

The five-stage startup process consisting of: 1. Power on (board turns on), 2. Bootloader runs (starts the kernel), 3. Kernel starts (loads the right drivers), 4. Files become ready (the filesystem is mounted), and 5. Your program starts (the device performs its job).

25
New cards

User Space

The unprivileged execution environment where applications, libraries, and the shell run, barred from accessing hardware directly and required to make system calls to request actions.

26
New cards

Kernel Space

The privileged execution environment where the operating system kernel and device drivers execute with exclusive, direct access to the physical hardware.

27
New cards

Root Directory (/)

The single base of the Linux filesystem hierarchy from which all directories, devices, storage media, and mounted partitions branch off.

28
New cards

/dev

A virtual directory containing special device node files that represent attached hardware, allowing software to communicate with hardware components using standard file operations.

29
New cards

/proc

A virtual pseudo-filesystem generated on the spot by the kernel that exposes live operational statistics, process statuses, and system information as text files.

30
New cards

/sys

A virtual filesystem exposing kernel device models that allows user-space programs to view and alter hardware properties (such as toggling an LED via brightness files).

31
New cards

/boot

The filesystem directory containing the kernel binaries, Device Tree blobs, and startup configuration files necessary to boot the board.

32
New cards

/etc

The filesystem directory designated for storing system-wide configuration files in plain text format.

33
New cards

/home

The filesystem folder holding personal files and settings belonging to non-root users of the system.

34
New cards

Terminal

The visual window or text interface on a display where a user enters and reads command-line instructions.

35
New cards

Shell

The command interpreter program (such as Bash) that parses text commands typed into a terminal and passes them to the operating system for execution.

36
New cards

pwd

A command that prints the current working directory path to show where the user is currently located in the filesystem.

37
New cards

ls

A shell command used to list the files and subfolders located inside the current or specified directory.

38
New cards

cd

A shell command used to change the current working directory to a specified target folder.

39
New cards

mkdir

A shell command used to create a new folder or directory in the filesystem.

40
New cards

cp

A shell command used to make a duplicate copy of a specified file or directory.

41
New cards

mv

A shell command used to move a file or folder from one location to another, or to rename it.

42
New cards

rm

A shell command that permanently deletes a file without sending it to a recycle bin.

43
New cards

cat

A utility command that prints the entire text contents of a file to the terminal output all at once.

44
New cards

less

A terminal pager command that allows interactive scrolling forward and backward through long files, exited by pressing 'q'.

45
New cards

head

A command-line tool that outputs only the first few lines of a file (e.g., -n 5 for the first five lines).

46
New cards

tail

A command-line tool that outputs only the last few lines of a file (e.g., -n 5 for the last five lines).

47
New cards

grep

A command-line text search utility used to find and filter lines containing a specific text pattern inside files.

48
New cards

find

A filesystem search utility used to locate files and folders based on criteria such as name, path, or type.

49
New cards

sudo

A command that temporarily runs a program with administrative (superuser) root privileges to perform protected configuration or system tasks.

50
New cards

ps

A system monitoring command that provides a static snapshot of the programs and processes currently running on the device.

51
New cards

top

An interactive command-line tool that displays a continuously updated, real-time list of running processes, CPU load, and memory usage.

52
New cards

df

A filesystem utility that displays available and used disk storage space across all mounted filesystems.

53
New cards

uname

A command used to print core system information, such as the operating system name, kernel release, and processor architecture.