Computing & Embedded Topics
29 topics
- Computing & Embedded
ISO 26262 (Automotive Functional Safety)
An international functional safety standard that reduces the risk of automotive E/E malfunction to an acceptable level — grading risk via HARA→ASIL (A–D), unfolding the safety lifecycle and V-model, quantifying random hardware failures with the SPFM·LFM·PMHF metrics, and covering ASIL decomposition·SEooC·FTTI plus the convergence with SOTIF (21448)·ISO/SAE 21434·AI-safety standards in the autonomous-driving era, in essay form.
- Computing & Embedded
Speculative Execution & Branch Prediction
A topic on branch prediction, which guesses a conditional branch's direction/target in advance to fill the gaps of a deep pipeline, and speculative execution, which pulls not-yet-resolved instructions in and runs them on that guess, rolling back on misprediction — covering the BHT 2-bit saturating counter, BTB, RAS, and correlating/tournament/TAGE predictors, ROB- and register-renaming-based misprediction recovery, control/data speculation, and the Spectre·Meltdown transient-execution attacks (where the architectural state recovers but cache traces remain) and their mitigations, organized from a professional-engineer perspective.
- Computing & Embedded
Cache Coherence Protocol (Cache Coherence, MESI)
A hardware state machine that manages copies of the same block scattered across multicore private caches in Modified·Exclusive·Shared·Invalid states to guarantee the visibility of a single latest value — covering the write-propagation/serialization requirements, invalidate vs. update policy, the scalability trade-off of snooping vs. directory, MESI transitions and the MOESI/MESIF extensions, the false-sharing performance trap, and recent trends such as CXL and HTM, from a professional-engineer perspective.
- Computing & Embedded
CPU Scheduling
A core operating-system technique that selects the next process to run from the ready queue to extract the efficiency of multiprogramming — covering process state transitions and the long/medium/short-term scheduler layers, preemptive vs. non-preemptive scheduling and the trade-offs among performance metrics, a numerical comparison of FCFS, SJF, priority, RR, and MLFQ, countermeasures for the convoy effect, starvation, and priority inversion, and practice from Linux CFS/EEVDF and heterogeneous-multicore energy-aware scheduling to Kubernetes CFS throttling, organized in depth from a professional-engineer perspective.
- Computing & Embedded
Real-Time Operating System (RTOS)
An operating system whose primary goal is not throughput but determinism that guarantees a response within a deadline — distinguishing hard/firm/soft real-time, the schedulability trade-off between preemptive priority scheduling and RMS·EDF, realizing predictability with priority inheritance·fixed-block memory·upper-bounded interrupts, and covering the GPOS comparison and the PREEMPT_RT·mixed-criticality·TSN trends in an essay form.
- Computing & Embedded
Intermittent Computing
Ultra-low-power computing that preserves and restores state using checkpointing and non-volatile memory under intermittent power from energy harvesting.
- Computing & Embedded
Gossip Protocol for Distributed State Dissemination
An essay-style treatment of the Gossip Protocol, which spreads membership, event, and configuration state without a central bottleneck by repeatedly exchanging information with a small set of peers, covering push, pull, and push-pull dissemination, fanout and convergence, SWIM-style failure detection, duplicate and conflict handling, network partitions, comparison with broadcast, consensus, and message queues, service discovery and cache invalidation cases, and engineering considerations for security, observability, and tuning.
- Computing & Embedded
Logical Clocks in Distributed Systems
A logical clock tracks the happens-before ordering and causality of events using only process counters and message exchange, without trusting the drift/skew of physical time — covering the Lamport scalar clock that gives a total order and the vector clock that even detects concurrency, their clock-condition and metadata-cost comparison, physical-logical hybrids such as HLC/TrueTime, and application to ordering and conflict resolution in Dynamo, CRDTs, and distributed DBs, in essay form.
- Computing & Embedded
Sorting Algorithms (Bubble, Insertion, Quick)
A comparison of the operation, complexity, and stability of bubble and insertion sort (O(n²)) and quicksort (average O(n log n) divide-and-conquer).
- Computing & Embedded
Linear Data Structures: Stack, Queue, and List
The input/output principles, operations, uses, and comparison of the linear data structures stack (LIFO), queue (FIFO), and list (random access).
- Computing & Embedded
Data Structures: Linear and Non-Linear
Concepts and types of linear structures (stack, queue, list) and non-linear structures (tree, graph), and a comparison based on their connection forms.
- Computing & Embedded
Paging and Segmentation
The concepts, address translation, and comparison of fixed-size paging (internal fragmentation) and logical-unit segmentation (external fragmentation), along with paged segmentation as a combination and TLB acceleration.
- Computing & Embedded
Parallel-Processing Interconnection Networks and the Torus
The communication structure connecting processors and memory that governs parallel performance. Bus, crossbar, mesh, and hypercube; the torus shortens distance and provides symmetric distribution by connecting the mesh edges.
- Computing & Embedded
Directed Acyclic Graph (DAG) and Topological Sort
A directed, cycle-free graph expressing precedence and dependency. Topological sort (Kahn: remove nodes with in-degree 0 first) determines build and scheduling order.
- Computing & Embedded
Non-Uniform Memory Access (NUMA)
A ccNUMA structure that directly attaches local memory to each processor for scalability at the cost of differing local/remote access latency — providing an in-depth treatment of the composition of nodes, interconnects, and integrated memory controllers; locality alignment across the OS, application, and virtualization (vNUMA) layers such as first-touch, affinity, and interleave; false sharing and cache-coherence traffic; comparison with UMA and distributed memory; and extension to CXL and tiered memory.
- Computing & Embedded
CRDT (Conflict-Free Replicated Data Type)
A replicated data type that, thanks to the commutativity, associativity, and idempotency of its merge operation, necessarily converges (SEC) to the same state even when multiple replicas update independently without coordination — covering state/operation-based types, G/PN-Counter, OR-Set, and sequence CRDT variants, comparison with consensus and OT, and application strategy for real-time collaboration and multi-region.
- Computing & Embedded
Priority Inversion
A phenomenon where a high-priority task runs late because a low-priority task holds a resource and a medium-priority task preempts it. Resolved by priority inheritance and priority ceiling.
- Computing & Embedded
Embedded Software Testing
Closed-loop verification covering hardware, real-time behavior, resource constraints, and safety. The MIL to SIL to PIL to HIL stages, with MC/DC coverage per ISO 26262 and DO-178C.
- Computing & Embedded
Big-Endian and Little-Endian
The byte order for storing multibyte data. Big (MSB first, the network standard) vs. little (LSB first, x86), and conversion in heterogeneous communication.
- Computing & Embedded
Thrashing
Excessive multiprogramming causes page faults to surge so the CPU does little but swap, and performance collapses. Working set and PFF.
- Computing & Embedded
Deadlock
This essay covers the definition of deadlock and its distinction from starvation and livelock, the four necessary conditions (mutual exclusion, hold and wait, no preemption, and circular wait), detection via resource-allocation graphs, the trade-offs among prevention, avoidance (banker's algorithm), detection, and recovery techniques, practical cases in databases, multithreading, and distributed systems along with the dining-philosophers problem, and professional-engineer considerations such as lock ordering, timeouts, retries, and observability.
- Computing & Embedded
Tree Sort
An algorithm that sorts by inserting into a binary search tree and then performing an in-order traversal. Covers its principle and complexity (average O(n log n), O(n²) when skewed), avoiding the worst case with balanced trees such as AVL and red-black, and applications to dynamic data.
- Computing & Embedded
Memory Interleaving
A technique that divides memory into multiple banks and channels and distributes consecutive addresses across them to raise bandwidth through parallel, overlapped access. Covers low-/high-order interleaving, bank conflicts, the relationship with cache, and extension to HBM and NUMA.
- Computing & Embedded
Race Condition
A non-deterministic error in which the result varies with execution order due to unprotected concurrent access to a shared resource. Covers critical sections and mutual exclusion (mutex, semaphore, CAS), and control of deadlock and TOCTOU.
- Computing & Embedded
Bloom Filter
A probabilistic data structure that determines set membership using only an m-bit array and k hash functions; 'not present' is 100% accurate while only 'present' allows false positives, cheaply filtering large-scale membership queries with minimal memory—covering its operating principle, the false-positive-probability sizing formula (m/n·ln2), use cases such as LSM databases and safe browsing, and trade-offs against counting and cuckoo filters.
- Computing & Embedded
WebAssembly (Wasm)
A portable binary instruction format that compiles from many languages to run safely at near-native speed in browsers, servers, and at the edge—a lightweight isolated execution layer based on a stack VM, linear memory, and capability-based isolation, extended by WASI and the component model.
- Computing & Embedded
Consistent Hashing
A distribution technique that places keys and nodes on a single hash ring and assigns each key to the first node clockwise, minimizing remapping to an average of K/N when nodes are added or removed—using virtual nodes to ensure load balance and weighting, and serving as the standard routing foundation for distributed stores, caches, and load balancers.
- Computing & Embedded
Distributed Consensus Algorithms — Paxos and Raft
A technique by which multiple nodes agree on the same command order through majority quorum and log replication under partial failures—covering the principles of Paxos and Raft, leader election, safety, and practical adoption in systems such as etcd.
- Computing & Embedded
Algorithm Complexity and Big-O Notation
The concepts and types of time and space complexity and Big-O notation (O(1) to O(n!)), and how the growth rate of computation time differs by input size.