logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Linux网络基础(一):从计算机组成、操作系统到Socket

本文从计算机组成和操作系统内核双重视角,系统性地解析了网络数据从网卡接收、协议栈处理到Socket编程的全链路流程。通过剖析硬件层(PHY芯片、DMA、APIC中断)、内核层(硬中断/软中断、NAPI机制、sk_buff结构)和协议栈(以太网/IP/TCP报文解析),揭示了网络通信的核心机制。文章特别强调路由器转发时仅修改IP头而保留TCP载荷,并指出TCP连接由终端主机维护的底层原理,帮助读者构

Linux (一)入门指南:历史、常用指令、权限与文件属性详解

Linux 是服务器端和开发环境中不可或缺的操作系统。无论你是运维新手还是想要深入后端开发,理解 Linux 的基本历史、常用命令、权限机制以及文件属性都是扎实的第一步。本文将按照新手循序渐进的学习逻辑,从系统认知、目录结构、用户体系、实操指令、权限规则到文件属性,带你快速建立完整的 Linux 实用知识框架。记录文件内容最后一次编辑修改的时间,格式为「月 日 时间/年份」。

#linux#运维#服务器
Linux(三)深入理解 Makefile:自动变量、增量编译原理与文件时间属性

摘要 本文深入解析Linux C/C++开发中Makefile的使用机制,重点剖析自动变量和增量编译原理。通过一个精简的Makefile实例,详细讲解变量定义、依赖规则和自动变量($@、$^、$<)的应用场景。随后深入分析Linux文件系统的三个时间属性(atime、mtime、ctime),通过实验验证不同操作对时间戳的影响,揭示Make工具仅依赖mtime进行增量编译决策的关键机制。文章还解释

#linux#服务器#c++
Linux(六)深入理解 Linux 进程管理:从硬件到调度

Linux进程管理入门教程摘要 本文系统讲解Linux进程管理,从硬件原理到实践应用: 硬件基础:基于冯·诺依曼体系(CPU/内存/I/O),进程是内存中执行的程序实例。 操作系统角色:通过时间片轮转管理多任务,进程是CPU调度的基本单位。 进程创建:fork()系统调用实现进程复制,采用写时复制(COW)优化性能,父子进程通过返回值区分。 进程标识:PID唯一标识进程,PPID标识父进程,形成以

#linux#网络
Linux(七)调度器:从硬件矛盾到进程切换的底层逻辑

并发(Concurrent):一段时间内多任务交替推进,同一时刻仅一个任务执行。依托单核CPU高速进程切换实现,宏观同时运行,微观串行。并行(Parallel):同一精确时刻多任务真正同时执行,必须依赖多核CPU硬件。对比维度链表遍历(旧调度器)位图查找(O(1)调度器)算法复杂度O(n),随优先级层级递增耗时O(1),耗时恒定不随进程数变化执行方式软件循环判断,多次内存读取硬件位运算,单时钟周期

#服务器#linux#网络
Linux(八) 进程内存全景:环境变量、main 函数参数与虚拟地址空间全链路深度解析

本文深入解析Linux中环境变量、main函数参数与进程虚拟地址空间的内在联系,从Shell命令执行到程序运行的完整流程。 环境变量 存储结构:字符串数据区 + 指针数组区 访问方式:全局变量environ、main参数envp、标准库函数(推荐) 作用域规则:通过fork()继承,子进程修改不影响父进程 永久设置:修改~/.bashrc或/etc/profile等配置文件 main函数参数 参数

#linux#运维#服务器
Linux(十)文件 I/O 底层完全指南:文件描述符、内核结构、缓冲区与重定向全解析

本文深入解析Linux文件I/O的核心机制,从系统调用到内核实现的全链路分析。主要内容包括: Linux文件抽象:介绍"一切皆文件"设计哲学,7类文件类型及其统一接口意义。 文件描述符机制:详解fd分配规则、三大标准描述符(STDIN/STDOUT/STDERR)及核心系统调用接口。 open标志位解析:通过位图原理讲解访问模式、创建/截断标志、同步I/O等关键参数,提供常用组合速查表。 内核三层

#linux#运维#服务器
Linux(十一) 文件系统与 I/O 全链路复习笔记:从磁盘硬件到用户态读写,打通七层完整链路

摘要 本文系统梳理了Linux文件I/O的完整7层链路,从磁盘硬件到用户态程序的完整工作原理: 硬件层:详细解析HDD的CHS寻址、磁存储原理和SSD的NAND闪存特性,包括数据修改的物理机制和可靠性问题(如热失磁、电荷泄漏)。 寻址演进:从CHS三维寻址到LBA逻辑块地址的转换方法与计算实例。 全链路架构: 存储硬件 → 设备驱动 → 块层/I/O调度 → 文件系统(ext4 inode/数据块

#linux#服务器#运维
Linux(十六)从页表到线程封装:深入理解 Linux 线程的共享、控制与封装

本文从硬件底层到上层封装,系统性地解析了Linux线程的实现机制与资源管理。文章首先通过虚拟内存与页表机制解释了地址空间隔离与共享的硬件基础,包括MMU、TLB和多级页表的工作原理;然后揭示了Linux线程作为轻量级进程(LWP)的内核本质,详细分析了clone()系统调用的关键标志位如何实现资源选择性共享;进而明确了线程间共享(地址空间、文件描述符等)与私有资源(栈、寄存器等)的边界;随后从页表

#linux
Linux(十七)深入多线程编程:同步原语与实战指南

本文从线程共享地址空间引发的竞态问题出发,系统讲解了互斥锁、条件变量、信号量三大同步原语的实现原理与应用场景。重点剖析了互斥锁的底层机制(用户态自旋+内核态休眠)、死锁问题及解决方案,区分了线程安全与可重入的核心概念,并介绍了生产者消费者模型的工程实践。文章采用「问题本质→底层原理→工程封装」的逻辑框架,提供可直接集成的高质量代码实现,包括RAII风格的锁守卫封装,为构建异步日志、线程池等组件奠定

#linux#运维#c++
    共 34 条
  • 1
  • 2
  • 3
  • 4
  • 请选择