A Comprehensive Guide to PGP: Technical Deep Dive

Posted on

Pretty Good Privacy (PGP) is a robust encryption program that ensures privacy and authentication for data communication. Developed by Phil Zimmermann in 1991, it’s widely used for securing emails, files, and directories. This article explores the technical details of PGP, including its algorithms, key management, and detailed processes for encryption, decryption, and signing. Cryptographic Foundations
Read more

Mapping Left Alt to Ctrl for Windows Keyboard to Be Similar to macOS

Posted on

As a dedicated macOS user, I often find myself missing the convenience of having a Command key located near my thumb for common shortcuts when using Windows. In the standard Windows keyboard layout, the key that occupies the same position as the Command key on macOS is the Alt key. However, the equivalent key on
Read more

Resource Acquisition Is Initialization (RAII) in C++ with Detailed Examples

Posted on

In this post, we will discuss Resource Acquisition Is Initialization (RAII), a programming idiom in C++ that helps manage resources such as memory, file handles, and network connections. By leveraging constructors, destructors, and scope-bound resource management, RAII enables the creation of more reliable and maintainable C++ code. RAII can not only achieve mostly what a
Read more

Run-Time Type Identification (RTTI) in C++ with Detailed Examples

Posted on

In this post, we will discuss Run-Time Type Identification (RTTI) in C++, a feature that allows us to obtain type information for objects at runtime. We will explore how RTTI works, its applications, and provide detailed examples to demonstrate its usage using snake_case naming convention. What is Run-Time Type Identification (RTTI)? Run-Time Type Identification (RTTI)
Read more

Visualizing CMake Project Dependencies with Graphviz

Posted on

When working on a large-scale C++ project with multiple dependencies, it can be challenging to understand the relationships between different components and libraries. Thankfully, CMake provides a nifty feature to visualize these dependencies using Graphviz, a widely-used open-source graph visualization software. Using CMake’s –graphviz option and the dot command from Graphviz is a powerful way
Read more

Splitting a String by Another String in C++: A Flexible Utility Function

Posted on

In this post, we will explore a flexible utility function for splitting a string based on a given delimiter using C++ and the standard library. This allows us to break down complex strings into smaller parts that are easier to process and manipulate. The C++ Utility Function to Split a String by Another String Background:
Read more

Installing Zlib in Ubuntu 22.04

Posted on

Zlib is a popular open-source compression library used by many software applications to compress and decompress data. It provides fast and efficient compression and decompression algorithms that can be used to reduce the size of data, which can improve performance and reduce storage requirements. In this post, we will discuss how to install zlib in
Read more

Why std::vector is the Optimal Choice for Data Structures for Performance in C++

Posted on

In C++ programming, data structures are essential for organizing and manipulating data. When it comes to storing and manipulating data, one data structure stands out above the rest – the std::vector. Efficient Memory Allocation One of the primary benefits of std::vector is its efficient memory allocation. std::vector uses contiguous memory allocation, which means that the
Read more

Linux Kernel 4.19.178 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 4.19.178 Release. Linux 4.19.178 Release contains 248 changes, patches or new features. In total, there are 239,909 lines of Linux source code changed/added in Linux 4.19.178 release compared to Linux 4.19 release. To view the source code of Linux 4.19.178 kernel release online,
Read more

Linux Kernel 4.14.223 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 4.14.223 Release. Linux 4.14.223 Release contains 176 changes, patches or new features. In total, there are 277,921 lines of Linux source code changed/added in Linux 4.14.223 release compared to Linux 4.14 release. To view the source code of Linux 4.14.223 kernel release online,
Read more

Linux Kernel 5.4.102 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 5.4.102 Release. Linux 5.4.102 Release contains 338 changes, patches or new features. In total, there are 160,715 lines of Linux source code changed/added in Linux 5.4.102 release compared to Linux 5.4 release. To view the source code of Linux 5.4.102 kernel release online,
Read more

Linux Kernel 4.9.60 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 4.9.60 Release. Linux 4.9.60 Release contains 24 changes, patches or new features. In total, there are 64,224 lines of Linux source code changed/added in Linux 4.9.60 release compared to Linux 4.9 release. To view the source code of Linux 4.9.60 kernel release online,
Read more

Linux Kernel: xt_quota: report initial quota value instead of current value to userspace

Posted on

This change “xt_quota: report initial quota value instead of current value to userspace” (commit 49daf6a) in Linux kernel is authored by Changli Gao <xiaosuo [at] gmail.com> on Fri Jul 23 14:07:47 2010 +0200. Description of “xt_quota: report initial quota value instead of current value to userspace” The change “xt_quota: report initial quota value instead of
Read more

Release Notes For Linux v2.0

Posted on

This is the release notes for linux release v2.0 (source code: linux-2.0.tar.gz) with format adjusted by removing/replacing tabs/spaces/new lines/formatting marks. This notes document can give us an understanding of the early development of the Linux kernel. The original ASCII formatted version is at the end of this post. Intro This document contains a list of
Read more

Release Notes For Linux v1.0

Posted on

This is the release notes for linux release v1.0 (source code: linux-1.0.tar.gz) with format adjusted by removing/replacing tabs/spaces/new lines. This notes document can give us an understanding of the early development of the Linux kernel. The original ASCII formatted version is at the end of this post. CHANGES since 0.99 patchlevel 15: removed all the
Read more

Release Notes For Linux v0.95

Posted on

This is the release notes for linux release v0.95 (source code: linux-0.95.tar.gz) with format adjusted by removing/replacing tabs/spaces/new lines. This notes document can give us an understanding of the early development of the Linux kernel. The original ASCII formatted version is at the end of this post. RELEASE NOTES FOR LINUX v0.95 Linus Torvalds, March
Read more

Release Notes For Linux v0.12

Posted on

This is the release notes for linux release v0.12 (source code: linux-0.12.tar.gz) with format adjusted by removing/replacing tabs/spaces/new lines. This notes document can give us an understanding of the very initial development of the Linux kernel. Also check Notes for linux release 0.01. The original ASCII formatted version is at the end of this post.
Read more

Release Notes For Linux v0.01

Posted on

This is the notes for linux kernel release 0.01 (source code: linux-0.01.tar.gz) with format adjusted by removing/replacing tabs/spaces/new lines. This notes document can give us an understanding of whether the Linux kernel started with its very first release. The original ASCII formatted version is at the end of this post. Notes for linux release 0.01
Read more

Linux Kernel 5.4.72 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 5.4.72 Release. Linux 5.4.72 Release contains 23 changes, patches or new features. In total, there are 126,508 lines of Linux source code changed/added in Linux 5.4.72 release compared to Linux 5.4 release. To view the source code of Linux 5.4.72 kernel release online,
Read more