自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(150)
  • 收藏
  • 关注

原创 操作系统攻略:自己动手从零开始写操作系统——5.保护模式进阶,向内核迈进

本文介绍了计算机系统中内存管理的关键机制和数据结构。首先分析了分页机制的背景,指出操作系统与硬件协同发展的关系,解释了段式管理的缺陷和分页机制的优势。详细阐述了一级页表和二级页表的工作原理,包括地址转换过程和优缺点对比。接着说明了页表属性位的含义及功能,如存在位、读写位等。还介绍了TLB(快表)如何通过缓存地址映射关系提高访问效率。最后讲解了ELF文件格式的层次化结构,以及任务状态段(TSS)在多任务处理中的作用,包括特权级转换时的栈切换机制。这些内容涵盖了从硬件支持到操作系统实现的内存管理核心知识。

2025-09-15 10:37:55 1673

原创 网络编程专题:从源码解析网络编程常用方法(基于6.16.3内核)

本文探讨了Linux网络编程中地址结构体的转换问题。通过分析内核源码,发现TCP的send和UDP的sendto底层都调用__sys_sendto函数,而非AI所说的sendmsg。文章详细解释了sockaddr通用地址结构体的设计原理,以及IPv4/IPv6专属结构体(sockaddr_in/sockaddr_in6)如何通过首字段对齐实现类型转换。作者通过代码验证了地址转换过程,澄清了AI关于转换发生在inet_sendmsg()的错误说法,并指出这是为了协议扩展性和维护性考虑的设计。研究还涉及了内核系

2025-09-13 18:18:35 826

原创 C++并发编程:锁和原子操作(基于6.16.3内核)

C++内存模型是多线程编程的核心基础,它定义了共享数据访问规则,确保程序正确性。主要内容包括:1) 数据竞争是未定义行为,需通过原子操作或同步机制避免;2) 原子操作提供不可分割性,并可通过6种内存序(如顺序一致序、获取-释放序、宽松序)控制指令重排和可见性;3) 内存区域是对象存储的基础,相邻位域共享同一内存区域。内存模型在保证单线程语义的前提下,允许编译器优化,同时为多线程程序提供可预测的行为边界。理解这些规则对编写高性能、线程安全的代码至关重要。

2025-09-13 18:18:15 1571

原创 C++并发编程:std::thread右值形式传参解析

摘要:C++线程构造函数会将参数复制到线程内部存储空间,并以右值形式传递给可调用对象。MSVC源码显示,线程通过_Start方法创建元组存储参数副本,使用_beginthreadex启动线程时传递这些副本的指针。这种机制确保参数生命周期持续到线程结束,避免悬垂引用问题。若线程启动失败会抛出异常,成功则转移参数所有权至新线程。

2025-09-12 18:07:19 1660

原创 数据库:mysqld服务器启动参数大全

MySQL服务器启动参数可分为五大类:1. 服务管理(安装/移除NT服务、独立启动选项);2. 配置文件与认证(默认选项读取、登录路径配置);3. 网络与安全(IP绑定、端口设置、SSL/TLS加密);4. 性能优化(内存缓存配置、查询优化器参数);5. 日志监控(二进制日志、错误日志配置)。这些参数可通过启动命令或配置文件(如my.cnf)设置,涵盖服务器全生命周期管理,从基础服务部署到安全连接、性能调优及运行监控。

2025-09-12 18:06:20 1137

原创 WSL2安装1Panel

本文介绍了在WSL2的Kali Linux中安装1Panel管理面板的步骤。主要内容包括:1) 启用systemctl命令,通过修改wsl.conf文件并重启WSL;2) 安装docker.io替代默认的docker.ce;3) 解决apt-key deprecated警告和清华源403错误问题。文章详细说明了如何检查系统密钥列表,并提供了完整的操作命令。安装1Panel需要先满足这些系统配置要求,特别是docker环境的准备。

2025-09-11 10:46:46 1604

原创 详解http协议

这篇文章展示了一个使用C++实现的HTTP接口示例,整合了多种数据库连接功能。代码主要包含以下技术组件: 使用ASIO库处理网络通信和TCP连接 集成多种数据库: PostgreSQL关系型数据库 Redis键值存储 MongoDB文档数据库 实现了数据库连接管理器类DBManager,负责: 初始化各种数据库连接 处理连接认证 创建基础表结构 资源释放 代码展示了如何: 配置数据库连接参数 处理连接错误 执行基本的SQL操作 初始化数据库表结构 该示例提供了多数据库集成的实现框架,可作为构建复杂Web服务

2025-09-11 10:46:31 1113

原创 C++专题:设计模式之行为型模式

行为型设计模式应用摘要 行为型设计模式关注对象间的交互协作,责任链模式和命令模式是典型代表。责任链模式通过构建处理对象链,将请求沿着链条传递处理,如请假审批系统按职权层级自动流转。命令模式将请求封装为对象,实现请求发送者与执行者的解耦,如智能家居遥控器通过命令对象控制设备。这两种模式都增强了系统灵活性,责任链模式便于动态调整处理流程,命令模式支持请求排队、撤销等高级功能,适用于需要松耦合交互的场景。C++实现展示了模式的核心结构,体现了面向对象设计原则。

2025-09-10 14:00:13 497

原创 C++专题:设计模式之结构型模式

本文介绍了两种结构型设计模式:适配器模式和桥接模式。适配器模式通过中间转换解决不兼容问题,如电源插头适配器示例所示,其代码展示了如何将老式打印机接口适配到新打印服务系统。桥接模式则分离抽象与实现,如咖啡机示例中冲泡系统与外壳样式的独立组合,提供了更灵活的扩展方式。两种模式都强调通过结构重组提升系统灵活性,适配器侧重接口转换,桥接侧重维度解耦。代码实现部分详细展示了如何应用这些模式解决实际问题。

2025-09-10 13:59:58 652

原创 Linux/UNIX系统编程手册笔记:SOCKET

Socket 是网络通信的核心接口,支持 TCP/UDP 协议,实现跨主机进程通信。创建 Socket 需指定地址族(AF_INET/IPv4)和类型(SOCK_STREAM/TCP)。服务器通过 bind() 绑定地址,listen() 监听连接,accept() 接受客户端请求。客户端用 connect() 发起连接,通过 send()/recv() 传输数据。UDP 使用 sendto()/recvfrom() 进行无连接通信。Socket 编程需注意字节序转换(htons)和地址结构转换(socka

2025-09-09 16:24:01 1016

原创 Linux/UNIX系统编程手册笔记:终端

Linux终端与I/O模型技术解析 终端深度解析 Linux终端是用户与系统交互的核心接口,分为物理终端和虚拟终端。通过终端设备文件(如/dev/tty*)进行管理,关键点包括: 终端属性控制:使用tcgetattr/tcsetattr函数和stty命令可配置输入输出行为 特殊字符处理:Ctrl+C等控制字符可通过termios结构体修改 I/O模式选择:规范模式适合命令行,非规范模式适合实时交互 高级控制:通过ANSI转义码实现光标控制、颜色显示等功能 备选I/O模型 Linux提供多种高效I/O模型来提

2025-09-09 16:23:54 1304

原创 操作系统攻略:自己动手从零开始写操作系统——4.保护模式入门

本文介绍了计算机系统中的关键技术概念。LBA寻址方式通过线性地址简化了硬盘访问,取代了传统的CHS寻址。保护模式解决了实模式的安全缺陷,引入段描述符和全局描述符表(GDT)机制,通过虚拟地址转换实现内存保护。A20地址线的开启突破了实模式1MB内存限制。文章还解释了CPU流水线的工作原理,通过分解指令执行步骤实现并行处理,提高资源利用率。这些技术共同构成了现代计算机系统的重要基础,在保证兼容性的同时提升性能和安全性。

2025-09-08 12:27:52 1761

原创 C++专题:设计模式之创建型模式

设计模式遵循六大原则:开闭原则、里氏替换原则、依赖倒转原则、接口隔离原则、迪米特法则和合成复用原则。设计模式分为创建型、结构型和行为型三类。创建型模式通过工厂模式和抽象工厂模式实现对象创建的解耦。工厂模式专注于单一产品创建,而抽象工厂模式处理产品族创建,确保相关产品的一致性。两者主要区别在于:工厂模式针对单一产品层级,抽象工厂模式针对多个相关产品系列;工厂模式通过继承实现,抽象工厂模式通过组合实现。这些模式提高了代码的灵活性和可维护性。

2025-09-08 12:27:38 1053

原创 Linux/UNIX系统编程手册笔记:POSIX

POSIX IPC 是一套标准化的进程间通信方案,包含消息队列、信号量和共享内存三大组件。相比传统System V IPC,POSIX IPC采用文件系统路径命名,具有更好的可移植性和资源管理能力。消息队列支持优先级消息传递,信号量提供进程同步机制,共享内存实现高效数据共享。与System V IPC相比,POSIX IPC接口更简洁,生命周期管理更清晰,是现代跨平台开发的首选IPC方案。具体实现上,通过mq_open/sem_open/shm_open等统一接口创建对象,并遵循类似文件操作的使用模式,显著

2025-09-06 12:49:07 1196

原创 Linux/UNIX系统编程手册笔记:共享库、进程间通信、管道和FIFO、内存映射以及虚拟内存操作

本文详细介绍了Linux系统中的共享库机制,重点阐述了共享库相比静态库的优势及其实现原理。主要内容包括:1) 共享库通过位置无关代码(PIC)实现内存共享,减少磁盘和内存占用;2) 版本控制通过soname机制实现,区分主版本(不兼容更新)和次版本(兼容更新);3) 共享库的创建、安装和使用方法,包括编译时链接和运行时加载;4) 动态链接器的工作机制及符号解析过程;5) 相关工具如ldd、nm等的使用;6) 静态库的适用场景。文章强调共享库是当代UNIX系统的主流选择,因其显著提高了系统资源利用率和软件更新

2025-09-06 12:48:59 1723

原创 Linux/UNIX系统编程手册笔记:DAEMON、编写安全的特权程序、能力、登录记账

守护进程与特权程序安全指南 守护进程(daemon)是Linux系统中后台运行的服务进程,通过独立会话脱离终端控制,具备持久运行能力。其创建需遵循关键步骤:fork子进程、调用setsid、改变工作目录、关闭文件描述符。优化措施包括日志重定向、信号处理和资源清理。 特权程序(如SUID/SGID)能够突破权限限制,但存在严重安全风险。应严格评估必要性,优先采用最小特权原则:通过权限分离或Capability机制替代完整root权限。特权程序必须实现权限降级,在完成敏感操作后立即切换为普通用户身份。 安全设计

2025-09-05 16:30:28 1474

原创 Linux/UNIX系统编程手册笔记:进程组、会话、作业控制、优先级、调度、资源

摘要: Linux通过进程组、会话和作业控制实现进程的层次化管理。进程组(pgid)将相关进程归类,便于批量操作(如信号发送);会话(setsid())关联终端,管理多个进程组。作业控制(Shell的fg/bg)利用进程组切换前台/后台任务,终端输入和信号(如SIGINT)仅影响前台进程组。控制终端断开时,会话首进程收到SIGHUP,可能终止关联进程(nohup可规避)。孤儿进程组通过SIGHUP+SIGCONT自动清理。这些机制支撑了终端交互、批量任务管理等核心功能。(150字) 关键词: 进程组、会话、

2025-09-05 16:30:18 705

原创 C++专题:STL

STL六大组件(容器、算法、迭代器、仿函数、适配器、分配器)协同工作,其中容器、迭代器和算法是核心。适配器通过封装原有接口实现功能复用(如容器适配器stack/queue基于deque实现),仿函数为算法提供定制逻辑(如排序规则),但需注意接口匹配和严格弱序要求。仿函数的状态可能被算法复制,需确保其可复制性。lambda本质是匿名仿函数,无捕获时可转换为函数指针,但类型匹配可能引发重载问题。迭代器作为桥梁实现算法与容器的解耦,分配器负责底层内存管理。STL的核心优势在于高度泛化的设计,但需注意容器内存管理、

2025-09-04 11:10:51 1339

原创 C++专题:如何写好一个类

摘要:本文介绍了计算机系统中的数据模型(LP32、ILP32、LLP64、LP64)及其对应数据类型。这些模型定义了整数、长整型和指针的位数差异,影响程序在不同平台(如16位DOS、32位Linux、64位Windows/Unix)的兼容性。同时详细解析了C++中的基本数据类型,包括字节定义、整型规格、布尔值转换规则以及字符类型(char/wchar_t/char16_t等),并提供了固定宽度类型和类型特性作为跨平台解决方案。文章通过表格对比和源码示例,阐述了数据类型在不同架构下的实现差异和使用注意事项。(

2025-09-04 11:10:28 1370

原创 Linux/UNIX系统编程手册笔记:线程

线程基础与Pthreads API解析 本文全面介绍了Linux系统编程中的线程机制与Pthreads API。线程作为轻量级执行单元,共享进程资源,具有创建开销低、通信高效等优势,适用于网络服务器、并行计算等场景。Pthreads作为标准线程API,通过线程控制块管理线程生命周期,提供创建、同步、属性配置等完整功能。文章详细解析了线程创建(pthread_create)、终止(pthread_exit)、连接(pthread_join)等核心操作,比较了线程与进程的差异,并介绍了线程属性配置和分离状态设置

2025-09-03 10:42:14 1022

原创 Linux/UNIX系统编程手册笔记:进程

本文深入解析了Linux进程创建的核心机制,从基础函数fork()、exit()、wait()和execve()的分工协作,到fork()的内存语义和文件共享特性。重点探讨了写时复制(COW)技术如何优化内存复制,以及vfork()的设计初衷与潜在风险。文章还分析了fork()后可能出现的竞争条件问题,通过代码示例展示了父子进程并发访问共享资源可能导致的数据不一致和文件损坏问题。最后指出同步机制的重要性,为Linux进程管理提供了全面的技术视角。

2025-09-03 10:42:03 1136

原创 操作系统攻略:自己动手从零开始写操作系统——3.完善MBR

摘要(148字) 计算机系统中,地址本质是符号相对于程序开头的偏移量,编译器负责分配地址空间。汇编语言中的section仅用于逻辑分区,不影响实际地址,而vstart属性可为section设置虚拟基址以满足特定硬件需求。CPU通过程序计数器获取指令并执行循环操作,其16位实模式采用段基址左移4位加偏移量的方式实现20位寻址(1MB空间),地址超出部分自动回卷。内存访问涉及寄存器、立即数和内存寻址(含直接、基址、变址等混合模式),不同模式对应特定硬件电路实现。函数调用通过栈保存返回地址,ret/retf指令实

2025-09-02 13:28:32 1755

原创 Linux/UNIX系统编程手册笔记:信号和定时器与休眠

Linux 信号是进程间通信和系统事件通知的核心机制,本质是一种软件中断。它允许内核或进程异步通知目标进程事件,涵盖进程控制(如终止、暂停)、异常处理(如内存错误)和轻量级通信。常见信号包括SIGINT(Ctrl+C)、SIGTERM(优雅终止)和SIGKILL(强制终止)。通过signal()或更可靠的sigaction()可自定义信号处理,而kill()用于进程间发送信号。信号处理需注意可重入性和简洁性,避免使用非线程安全函数。kill()还可检查进程存在性,但受权限限制。信号机制是Linux进程管理的

2025-09-02 13:28:05 1189

原创 在windwos下使用vscode编写C/C++(使用Clang/LLVM并浅探vscode的工作机理)

摘要:VSCode配置C++开发环境指南 本文详细介绍如何在VSCode中配置C++开发环境,重点讲解所需扩展(C/C++、Cmake Tools、Code Runner、CodeLLDB)和Clang编译器的使用。文章解析了vscode的两个关键配置文件:task.json(负责代码编译)和launch.json(负责调试配置),并提供了典型配置示例。通过内置变量表说明了如何灵活配置路径参数,帮助开发者理解从代码编写到运行调试的完整工具链。特别适合初次在Windows环境下使用VSCode进行C++开发的

2025-09-01 10:36:57 1495

原创 Linux/UNIX系统编程手册笔记:扩展属性、访问控制列表、目录与链接以及监控文件事件

Linux扩展属性(xattr)突破了传统文件属性的限制,允许以键值对形式存储自定义元数据和系统级安全策略。主流文件系统如ext4、XFS通过不同命名空间(user/system/security)实现多场景应用,包括数据分类、安全审计和容器管理。系统提供了setxattr、getxattr等标准接口进行操作,但需注意文件系统兼容性和权限控制。扩展属性为Linux文件系统带来了业务适配性和安全性的双重提升,成为现代文件管理的重要工具。

2025-09-01 10:36:37 1218

原创 Linux/UNIX系统编程手册笔记:系统和进程信息、文件I/O缓冲、系统编程概念以及文件属性

Linux系统信息与进程管理深度解析 本文系统介绍了Linux系统中获取系统和进程信息的核心机制,重点剖析了/proc文件系统和uname()函数的功能与应用。/proc作为虚拟文件系统,动态展示内核状态和进程详情,通过/proc/PID目录可查询进程状态、内存映射、文件描述符等关键信息,而/proc/cpuinfo、/meminfo等文件则提供系统硬件和资源使用情况。uname()函数则用于获取系统标识信息,包括内核版本、硬件架构等基础数据。文章通过具体代码示例演示了如何编程访问这些信息,并强调了这些工具

2025-08-31 19:42:01 967

原创 Linux/UNIX系统编程手册笔记:用户和组、进程凭证、时间以及系统限制和选项

本文深入解析了Linux系统中用户与组管理的核心机制,重点介绍了三个关键配置文件:/etc/passwd存储用户基本信息,/etc/shadow安全保存加密密码及策略,/etc/group记录组信息。文章详细阐述了各文件的结构、字段含义及权限设置,并说明了系统如何通过密码哈希加密和用户认证流程确保安全性。此外,还介绍了获取用户/组信息的系统调用、库函数和命令行工具,帮助开发者和管理员深入理解Linux权限管理的基础架构。

2025-08-31 19:41:53 936

原创 数据库攻略:“CMU 15-445”Project0:C++ Primer(2024 Fall)

BusTub数据库项目环境配置指南 本文详细记录了CMU BusTub数据库项目的环境配置过程。BusTub是一个优秀的C++开源数据库项目,可以作为学习Linux下C++项目构建、测试和代码规范的范例。配置过程包括项目结构解析、依赖安装、编译构建等步骤。文章特别针对Kali Linux用户可能遇到的GPG密钥验证问题提供了解决方案,包括手动导入缺失公钥以及将密钥迁移到新的存储位置的方法。这些配置经验不仅适用于BusTub项目,也可作为其他C++项目在Linux环境下构建的参考。

2025-08-30 20:41:58 1568

原创 Linux/UNIX系统编程手册笔记:文件I/O、进程和内存分配

本文深入解析了Linux文件I/O的核心逻辑,围绕通用I/O模型展开。文章首先阐述了文件I/O的概念,强调Linux"一切皆文件"的设计哲学,然后详细介绍了I/O操作的核心流程:通过open()获取文件描述符,使用read()/write()进行读写,最后调用close()释放资源。此外,还讲解了lseek()改变文件偏移量实现随机访问,以及ioctl()处理特殊设备操作。文章指出,统一的I/O接口设计使得程序能够透明地操作各种类型的文件,无需针对特定设备编写专用代码。

2025-08-30 20:41:42 1151

原创 Linux/UNIX系统编程手册笔记:基本概念

本文深入解析Linux系统的核心概念,包括内核调度、shell交互、权限管控、文件系统和进程管理。内核作为系统底层引擎,负责硬件资源调度和系统调用仲裁;shell充当用户与内核的翻译官,支持命令解析和脚本自动化;用户和组机制实现精细化权限管控;单根目录层级和链接机制构成文件系统骨架;程序与进程分别代表代码的静态形态和动态执行。文章通过场景化分析揭示了Linux系统运行的底层逻辑,帮助读者理解操作系统的高效运转机制。

2025-08-29 11:11:04 707

原创 操作系统攻略:自己动手从零开始写操作系统——2.编写MBR主引导记录

计算机启动与内存管理摘要 计算机启动时通过BIOS在实模式下完成硬件检测和初始化,其核心特性包括16位地址总线(1MB寻址空间)、分段寻址机制和单一特权级。现代操作系统启动后切换至保护模式,该模式支持更大的内存空间(32位/64位)、4级特权级(Ring 0-3)、内存保护和多任务机制。两种模式的主要区别在于:实模式仅有1MB寻址能力且无安全保护,而保护模式通过分段和分页机制实现内存管理,支持虚拟内存和任务隔离。系统启动必须经过实模式阶段,随后进入保护模式以支持现代操作系统的安全性和功能需求。

2025-08-29 11:10:29 1876

原创 UNIX网络编程笔记:共享内存区和远程过程调用

Posix共享内存区:高效进程通信的标准化方案 Posix共享内存区通过标准化接口(如shm_open、shm_unlink)提供跨平台统一解决方案,简化了共享内存的创建与管理。相比传统IPC,它具有以下优势:1)通过文件系统路径名标识,避免复杂描述符传递;2)支持权限控制;3)与内存映射(mmap)无缝结合。典型应用包括:1)匿名映射实现临时数据共享;2)文件映射保障数据持久化;3)结合信号量解决多进程同步问题。尽管存在内存对齐、缓存一致性等挑战,但通过合理设计,Posix共享内存仍是高性能进程通信的核心

2025-08-28 10:43:43 1222

原创 UNIX网络编程笔记:同步

这篇文章摘要如下: 互斥锁与条件变量是并发控制的核心机制。互斥锁通过二进制锁机制保护共享资源,确保线程安全访问临界区,但需注意死锁风险。条件变量则用于线程间高效协作,结合互斥锁实现"生产者-消费者"等模式,避免CPU轮询浪费。读写锁针对"读多写少"场景优化,允许并发读取而独占写入,提升系统吞吐量。实践建议包括最小化临界区、处理虚假唤醒、合理选择锁类型等。这些同步机制是构建高性能并发程序的基石,需根据具体场景组合使用。

2025-08-28 10:43:32 1137

原创 UNIX网络编程笔记:高级套接字编程26-31

技术文章摘要 线程编程与IP选项技术解析 线程编程部分深入探讨了现代软件开发中实现并发执行的核心技术: 基础线程操作:包括线程创建/终止、分离状态管理,以及生命周期控制 网络编程实践:展示线程在客户端/服务器模型中的应用,如str_cli线程化改造和TCP回射服务器 同步机制:详解互斥锁和条件变量解决线程竞争问题 线程特定数据:实现线程私有存储空间 复杂场景应用:如Web客户端并发连接处理 IP选项部分剖析了网络通信的灵活调控机制: IPv4选项结构:包括控制类、安全类、调试类和测量类选项 源路由选项:松散

2025-08-27 11:07:19 924

原创 UNIX网络编程笔记:消息传递

本文深入解析 Unix 系统中的进程间通信(IPC)机制,重点关注 Posix IPC 的标准化方案。首先介绍 Unix 进程和线程作为程序运行基本单元的特性,包括进程的资源独立性、线程的轻量级执行以及它们之间的信息共享方式。随后详细阐述 IPC 对象的持续性(随进程或内核持续)和名字空间管理,分析不同 IPC 机制的关键标识方法。文章特别强调了 Posix IPC 的标准化优势,包括跨平台统一接口、与文件系统的深度整合以及简化的命名规则和权限管理。最后探讨了 fork、exec 和 exit 对 IPC

2025-08-27 11:07:06 841

原创 UNIX网络编程笔记:高级套接字编程20-25

局域网通信中,广播和多播是两种高效的一对多信息传播方式。广播通过广播地址(如255.255.255.255)实现全网段覆盖,适用于服务发现、网络通知等场景,但存在广播风暴风险。多播则通过特定组地址(224.0.0.0-239.255.255.255)实现精准组通信,依赖IGMP协议管理成员,支持跨网段传输,广泛应用于流媒体、视频会议等场景。实践中需合理配置套接字选项(如SO_BROADCAST、IP_ADD_MEMBERSHIP),并注意广播与多播各自的适用场景和局限性,以实现高效可靠的网络通信。

2025-08-26 17:03:07 1192

原创 UNIX网络编程笔记:高级套接字编程12-19

摘要:本文深入探讨了IPv4与IPv6互操作性的关键技术,包括NAT64协议转换、DNS64协同方案等跨协议通信方法,以及开发辅助工具和代码适配策略。同时解析了Unix/Linux系统中守护进程和inetd超级服务器的核心功能,如syslogd日志管理、daemon_init进程守护化、inetd按需调度网络服务等。这些技术共同构成了网络协议演进和系统服务管理的基础框架,为开发者、运维人员提供了实现平滑过渡和高效资源管理的解决方案,确保新旧系统兼容性和服务稳定性。(150字)

2025-08-26 17:02:28 860

原创 基于CMU15-455/645项目对Git与Github功能进行详解(万字长文)

功能:在自己 GitHub 主页显示自定义内容,用 Markdown 写自我介绍、展示技能栈、贴项目链接,甚至放动态数据(比如 GitHub 贡献统计),打造个性化开发者名片。场景:求职、交友时,别人点进你主页,第一眼就能看到你的亮点和作品。讲解到这里就结束了,后面有机会会更Git相关的问题以及配置项解读。

2025-07-02 16:14:07 1290

原创 C++专题:一文讲清楚多态

Int nItem;这种数据和函数分开的面向过程编程方法使得数据和方法之间关系不明朗,不易读,因此,在经过了若干年的发展之后,通过 将行为绑定在数据上 这样的改革,使得数据和操作数据的方法紧紧的捆绑在一起,封装成一个统一体对象有状态和行为:1、一个对象有状态,我们用数据来表示一个对象的状态,比如长宽高2、一个对象有行为,我们可以用一组方法来改变对象的状态,比如add、sub等等通过将数据和方法捆绑在一起,实现了状态和行为的捆绑,使得数据和方法封装在对象的统一体中,就行为了对象。

2025-07-02 16:13:45 1157

原创 WSL连不上网解决方案(包含WSL虚拟交换机不正常以及WSL网络配置不正常两种解决方案)

如果对于WSL网络配置不熟悉的可以看看我另一篇关于WSL网络配置的文章,这个文章在计算机网络专栏下。

2025-06-29 19:01:23 5324

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除