TCP/IP Study Notes (10) – Establishment and Termination of TCP Connections

TCP/IP Study Notes (10) - Establishment and Termination of TCP Connections

The establishment of a TCP connection can be simply referred to as a three-way handshake, while the termination of the connection can be called a four-way handshake. TCP is a connection-oriented protocol, so both parties need to establish a connection before sending data. This is completely different from the protocols discussed earlier. All the previous … Read more

TCP/IP Learning Notes (11) – TCP Interactive and Block Data Streams

TCP/IP Learning Notes (11) - TCP Interactive and Block Data Streams

Currently, there are many network protocols built on the TCP protocol, such as telnet, ssh, ftp, http, etc. These protocols can be roughly divided into two categories based on data throughput: (1) Interactive data types, such as telnet and ssh. These types of protocols usually only do small-scale data exchanges, such as pressing a key … Read more

Learning Notes on TCP/IP (6) – UDP Protocol

Learning Notes on TCP/IP (6) - UDP Protocol

Brief Introduction to UDP UDP is a transport layer protocol, sitting in the same layer as the TCP protocol. However, unlike TCP, UDP does not provide features such as timeout retransmission or error retransmission, meaning it is an unreliable protocol. UDP Protocol Header UDP Port Number Many applications require the use of UDP, so it … Read more

Modbus TCP Server Development and Yocto System Construction

Modbus TCP Server Development and Yocto System Construction

13.8 Modbus TCP Server Development Source code: After extraction, the source code is “modbus_server_tcp.c”, which simulates a Modbus TCP sensor. For an explanation of the source code, please refer to “11.7 Modbus TCP Programming and Experimentation”. When the front-end program and the MQTT program use the RPC interface to read and write the Modbus TCP … Read more

Deploying a Production-Level MongoDB Replica Set

Deploying a Production-Level MongoDB Replica Set

❝ Written by: Wanli Xing [email protected] Date: January 21, 2025 ❞ 「Environment Description」 Operating System: Anolis OS 8 Kernel: 4.18.0-477.13.1.0.1.an8.x86_64 MongoDB Version: 7.0.16 Dedicated User for Running Program: apprun (can be replaced as needed, the document includes user creation methods) Dedicated Directory for Running Program: /apprun (can be replaced as needed, ensure the directory ownership … Read more

Fundamentals of Linux GDB C/C++ Debugging and Tips

Fundamentals of Linux GDB C/C++ Debugging and Tips

How to Obtain 1. Follow the public account below, and click [Like] and [View] in this article. 2. Reply to the public account with [Course] to obtain this lesson. Fundamentals of Linux GDB C/C++ Debugging and Tips Fundamentals of Linux GDB C/C++ Debugging and Tips Fundamentals of Linux GDB C/C++ Debugging and Tips In the … Read more

Debugging C++ Programs Using GDB in Command Line (Part Two)

Debugging C++ Programs Using GDB in Command Line (Part Two)

If you haven’t read the previous article, I suggest you check it out: Debugging C++ Programs Using GDB in Command Line (Part One) This article supplements the GDB debugging that wasn’t finished last time. I Want to Install GDB on Linux Okay, I downgraded the Linux distribution running on WSL from <span>24.04</span> to <span>22.04</span>, and … Read more

Getting Started with GDB: A Comprehensive Guide

Getting Started with GDB: A Comprehensive Guide

GDB (GNU Debugger) is a powerful debugging tool, a graphical debugger that is very useful when debugging programs locally, but it is meaningless for debugging on a server. However, GDB can be very useful. Below are the most commonly used GDB features, categorized by starting, running, breakpoints, step debugging, variable viewing, memory checking, and controlling … Read more

GDB Debugger Guide: Enhance Development Efficiency

GDB Debugger Guide: Enhance Development Efficiency

Hello everyone! Today I want to share with you a very useful tool in C++ development – the GDB debugger. As a programmer with years of C++ development experience, I understand how important debugging is for program development. Proper use of GDB can not only help us quickly locate bugs but also deepen our understanding … Read more

A Complete Guide to Using CMake

A Complete Guide to Using CMake

Scan to FollowLearn Embedded Together, Learn Together, Grow Together Hello everyone, I previously shared some articles related to makefiles: Make Command Tutorial | A Hands-On Guide to Makefile Linux Kernel Makefile Execution Process Some General Makefile Templates Today, I am sharing an article about CMake, which can generate local Makefiles without having to write complex … Read more