ps – ?

The ‘ps’ command in Linux shows information about active processes. Options include displaying processes for the current shell, showing all processes on the system, providing full or long-format listings, showing processes not attached to a terminal, displaying all threads for a process, allowing custom formatting, sorting the output, and more. For further details, type ‘man ps’ on bash.

Read More ps – ?

GDB COMMANDS

This article by Yashwanth Naidu Tikkisetty provides a comprehensive list of gdb commands for debugging. It covers functions like info, set, watch, stepi, disassemble, and more, essential for efficient debugging in embedded systems. The post also emphasizes the importance of inspecting memory maps and displaying directory paths. For more details, visit the LinkedIn post.

Read More GDB COMMANDS

GCC – ?

The gcc commands cover optimizations, profiling, security, and low-level operations, essential for embedded systems and performance-critical applications. Techniques include Link-Time Optimizations, dependency file generation, controlling inline functions, architecture-specific optimizations, and static analysis. These techniques prioritize efficient, secure, and compact code in memory-constrained embedded systems.

Read More GCC – ?

๐‘ซ๐’†๐’‚๐’…๐’๐’๐’„๐’Œ ๐’–๐’”๐’Š๐’๐’ˆ ๐’‡๐’Š๐’‡๐’

This post demonstrates a deadlock scenario using two FIFOs and a client-server model. The deadlock occurs when both the server and client wait for each other to send a message, resulting in a standstill. The article also outlines steps to avoid deadlock by following a specific sequence of actions.

Read More ๐‘ซ๐’†๐’‚๐’…๐’๐’๐’„๐’Œ ๐’–๐’”๐’Š๐’๐’ˆ ๐’‡๐’Š๐’‡๐’

๐‘ฌ๐’™๐’‘๐’๐’๐’“๐’Š๐’๐’ˆ ๐’•๐’‰๐’† ๐‘ป๐’˜๐’-๐‘พ๐’‚๐’š ๐‘บ๐’•๐’“๐’†๐’†๐’•๐’” ๐’Š๐’ ๐‘ณ๐’Š๐’๐’–๐’™: ๐‘ซ๐’–๐’‘๐’๐’†๐’™ ๐‘ช๐’๐’Ž๐’Ž๐’–๐’๐’Š๐’„๐’‚๐’•๐’Š๐’๐’ ๐’˜๐’Š๐’•๐’‰ ๐‘ท๐’Š๐’‘๐’†๐’” ๐Ÿ›ฃ๏ธ

Unix Pipes allow one-way communication, but Duplex Communication enables two processes to chat back and forth simultaneously. Using two pipes, data can flow both ways between parent and child processes. By coordinating the reading and writing ends, full duplex communication is achieved, despite not guaranteeing simultaneous data exchange.

Read More ๐‘ฌ๐’™๐’‘๐’๐’๐’“๐’Š๐’๐’ˆ ๐’•๐’‰๐’† ๐‘ป๐’˜๐’-๐‘พ๐’‚๐’š ๐‘บ๐’•๐’“๐’†๐’†๐’•๐’” ๐’Š๐’ ๐‘ณ๐’Š๐’๐’–๐’™: ๐‘ซ๐’–๐’‘๐’๐’†๐’™ ๐‘ช๐’๐’Ž๐’Ž๐’–๐’๐’Š๐’„๐’‚๐’•๐’Š๐’๐’ ๐’˜๐’Š๐’•๐’‰ ๐‘ท๐’Š๐’‘๐’†๐’” ๐Ÿ›ฃ๏ธ

๐‘ซ๐’Š๐’—๐’Š๐’๐’ˆ ๐’Š๐’๐’•๐’ ๐‘ผ๐’๐’Š๐’™ ๐‘ท๐’Š๐’‘๐’†๐’”: ๐‘จ ๐‘ญ๐’–๐’ ๐‘ฑ๐’๐’–๐’“๐’๐’†๐’š ๐Ÿš€

Unix Pipes are the OGs of Inter-Process Communication on Unix systems. They facilitate seamless data flow between processes, like family messengers connecting parent and child processes. Operating like a one-lane road, they ensure a one-way data flow with a capacity limit. With simple functions, they enable sharing of notes between processes.

Read More ๐‘ซ๐’Š๐’—๐’Š๐’๐’ˆ ๐’Š๐’๐’•๐’ ๐‘ผ๐’๐’Š๐’™ ๐‘ท๐’Š๐’‘๐’†๐’”: ๐‘จ ๐‘ญ๐’–๐’ ๐‘ฑ๐’๐’–๐’“๐’๐’†๐’š ๐Ÿš€

Linux IPC’s

Linux IPCs are essential tools for processes to communicate in the operating system. They include various methods like Pipes, Message Queues, Shared Memory, Sockets, Semaphores, and File-based communication. Each method serves specific communication needs, from simple data transfer to complex synchronization and coordination among processes.

Read More Linux IPC’s

๐‘ณ๐’Š๐’๐’Œ๐’Š๐’๐’ˆ ๐‘ฏ๐’‚๐’“๐’…? ๐‘ถ๐’“ ๐‘ฑ๐’–๐’”๐’• ๐‘ท๐’๐’Š๐’๐’•๐’Š๐’๐’ˆ ๐‘บ๐’๐’‡๐’•๐’๐’š?

In Unix-like systems, hard links and symbolic links ease file management by allowing files to appear in multiple directories without actual content duplication. Hard links are identical mirrors of the original file and reside within the same file system, while symbolic links act independently, can span different file systems, and can point to directories. Hard links are useful for resource optimization, image creation, multiversion software, and cache management, while symbolic links are handy for boot selection, linking to volatile storage, device pointers, and fallback mechanisms.

Read More ๐‘ณ๐’Š๐’๐’Œ๐’Š๐’๐’ˆ ๐‘ฏ๐’‚๐’“๐’…? ๐‘ถ๐’“ ๐‘ฑ๐’–๐’”๐’• ๐‘ท๐’๐’Š๐’๐’•๐’Š๐’๐’ˆ ๐‘บ๐’๐’‡๐’•๐’๐’š?

๐‘ฎ๐’“๐’†๐’‘ – ๐’ˆ/๐’“๐’†/๐’‘: ๐‘พ๐’‰๐’†๐’“๐’† ๐‘ป๐’†๐’™๐’• ๐‘ด๐’†๐’†๐’•๐’” ๐‘ฐ๐’•๐’” ๐‘ท๐’†๐’“๐’‡๐’†๐’„๐’• ๐‘ด๐’‚๐’•๐’„๐’‰!

The grep command is used to search for text patterns in files, with its origins in the development of the ED text editor by Ken Thompson. Seeking the authors of “Federalist” led Lee Edward McMahon to contact Thompson, resulting in the creation of grep. The post also provides examples of grep usage, showcasing its functionality.

Read More ๐‘ฎ๐’“๐’†๐’‘ – ๐’ˆ/๐’“๐’†/๐’‘: ๐‘พ๐’‰๐’†๐’“๐’† ๐‘ป๐’†๐’™๐’• ๐‘ด๐’†๐’†๐’•๐’” ๐‘ฐ๐’•๐’” ๐‘ท๐’†๐’“๐’‡๐’†๐’„๐’• ๐‘ด๐’‚๐’•๐’„๐’‰!

What is ย ๐’‘๐’“๐’Š๐’๐’“๐’Š๐’•๐’š ๐’Š๐’๐’—๐’†๐’“๐’”๐’Š๐’๐’ and what happened on the Pathfinder?

Priority inversion in real-time systems occurs when a higher-priority task is delayed by a lower-priority task due to resource contention. This can lead to system failures or degraded performance. The Mars Rover Pathfinder experienced a priority inversion due to a low-priority task holding a resource required by a higher-priority task, causing indefinite loops. The issue was fixed by enabling priority inheritance in the software. To prevent priority inversion, space mission architectures use priority-based scheduling algorithms and priority inheritance or priority ceiling protocols.

Read More What is ย ๐’‘๐’“๐’Š๐’๐’“๐’Š๐’•๐’š ๐’Š๐’๐’—๐’†๐’“๐’”๐’Š๐’๐’ and what happened on the Pathfinder?